pytho的使用和分發完全是免費的,它是一種面向對象的語言,它的。它的類模塊支持多態,操作符重載和多重繼承等高級概念,并且以python特有的簡潔的語法和類型,OOP十分易于使用。python內置了眾多預編譯并可移植的功能模塊,這些功能模塊叫做標準庫(standard library)。python可以調用C和C++的庫,可以被C和C++的程序調用,可以與java組件集成,可以和COM和.Net等框架進行通信,并且可以通過SOAP、XML-RPC和CORBA等接口與網絡進行交互,所以,python絕不僅僅是一個獨立的工具。
本來是想打算使用eval函數對變量進行賦值的,沒想到出現了invalid syntax錯誤。源代碼如下
In [2]: eval('a = 1') File "", line 1 a = 1 ^ SyntaxError: invalid syntax
百度沒百度到結果,最后在stackoverflow上找到了好的答案.
作者的意思是,eval函數只負責對表達式進行處理,并沒有賦值的功能,也就是說,eval函數只負責對你的輸入進行輸出,True還是False又或者是什么東西。但它本身是沒有影響當前代碼環境的能力的。如果我們想用來進行賦值,那么應該使用exec()函數。看代碼:
In [3]: exec('a = 1') In [4]: a Out[4]: 1
問題的解決方案已經供出了,那么我們現在再看看官方文檔對這兩個函數怎么說。
eval(expression, global=None, local=None)
????? 參數是字符串和可選的global和local。global應當為一個字典文件,local應為一個映射對象。
expression參數將被處理為一個python的表達式(嚴格來說,是一串條件語句),global和local參數將被用來當做全局和局部的命名空間。
exec(object[,global,[locals])
這個函數能夠為python提供動態的代碼執行功能。
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
