国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

python筆記-調用eval函數出現invalidsyntax錯誤

2019-11-14 16:59:04
字體:
來源:轉載
供稿:網友

  本來是想打算使用eval函數對變量進行賦值的,沒想到出現了invalid syntax錯誤。源代碼如下

 

In [2]: eval('a = 1')  File "<string>", line 1    a = 1      ^SyntaxError: invalid syntax

 

  百度沒百度到結果,最后在stackoverflow上找到了好的答案,這里是原文鏈接

  作者的意思是,eval函數只負責對表達式進行處理,并沒有賦值的功能,也就是說,eval函數只負責對你的輸入進行輸出,True還是False又或者是什么東西。但它本身是沒有影響當前代碼環境的能力的。如果我們想用來進行賦值,那么應該使用exec()函數。看代碼:

 

In [3]: exec('a = 1')In [4]: aOut[4]: 1

 

  問題的解決方案已經供出了,那么我們現在再看看官方文檔對這兩個函數怎么說。

eval(exPRession, global=None, local=None)

      參數是字符串和可選的global和local。global應當為一個字典文件,local應為一個映射對象。

  expression參數將被處理為一個python的表達式(嚴格來說,是一串條件語句),global和local參數將被用來當做全局和局部的命名空間。

exec(object[,global,[locals])

  這個函數能夠為python提供動態的代碼執行功能。

 

  看,官方對其功能的描述都是這么的不一樣,有興趣的同學可以去看更詳細的文檔~更詳細的點這里


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 抚宁县| 岫岩| 泊头市| 阿巴嘎旗| 若尔盖县| 玉溪市| 图们市| 德清县| 海兴县| 汽车| 贵阳市| 东阳市| 穆棱市| 霍林郭勒市| 福清市| 临高县| 台山市| 峨眉山市| 依兰县| 遂昌县| 安阳市| 乌拉特前旗| 阜城县| 远安县| 周至县| 吉水县| 通州区| 赫章县| 甘泉县| 越西县| 木里| 修文县| 浦北县| 乌审旗| 桑日县| 和田市| 新郑市| 仁怀市| 淮北市| 修武县| 长海县|