国产探花免费观看_亚洲丰满少妇自慰呻吟_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提供動態的代碼執行功能。

 

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


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 南昌市| 洱源县| 荣成市| 佛山市| 郸城县| 三河市| 日照市| 东丽区| 富锦市| 马鞍山市| 鄄城县| 洪洞县| 鄯善县| 鸡泽县| 理塘县| 临夏市| 株洲市| 田阳县| 宜章县| 连州市| 曲麻莱县| 夏邑县| 临高县| 林州市| 安溪县| 天等县| 兴化市| 峨边| 巴马| 江油市| 太康县| 昌吉市| 衡东县| 张家港市| 上思县| 九龙县| 哈尔滨市| 卢龙县| 阜康市| 井冈山市| 衢州市|