Python eval函數(shù)介紹及用法
我們之前跟大家描述了在Python里面一些函數(shù)的不同使用,以及一些函數(shù)的潛藏使用技巧,可是大家有沒有聽說過,有一個(gè)函數(shù)一直被譽(yù)為最神奇的函數(shù),神奇的地方在哪里?到底怎么神奇?請(qǐng)看下文。
關(guān)于eval():
將字符串string對(duì)象轉(zhuǎn)化為有效的表達(dá)式參與求值運(yùn)算返回計(jì)算結(jié)果。
語法上:
調(diào)用的是:eval(expression,globals=None, locals=None)返回的是計(jì)算結(jié)果
其中:
1、expression是一個(gè)參與計(jì)算的python表達(dá)式
2、globals是可選的參數(shù),如果設(shè)置屬性不為None的話,就必須是dictionary對(duì)象了
3、locals也是一個(gè)可選的對(duì)象,如果設(shè)置屬性不為None的話,可以是任何map對(duì)象了
4、python是用命名空間來記錄變量的軌跡的,命名空間是一個(gè)dictionary,鍵是變量名,值是變量值。
下面簡單演示一下eval()函數(shù)的使用:
#!usr/bin/env python#encoding:utf-8import mathdef eval_test(): l=’[1,2,3,4,[5,6,7,8,9]]’ d='{’a’:123,’b’:456,’c’:789}' t=’([1,3,5],[5,6,7,8,9],[123,456,789])’ print ’--------------------------轉(zhuǎn)化開始--------------------------------’ print type(l), type(eval(l)) print type(d), type(eval(d)) print type(t), type(eval(t))if __name__=='__main__': eval_test()
測試結(jié)果輸出如下:
--------------------------轉(zhuǎn)化開始--------------------------------<type ’str’> <type ’list’><type ’str’> <type ’dict’><type ’str’> <type ’tuple’>[Finished in 0.2s]
到此這篇關(guān)于Python eval函數(shù)介紹及用法的文章就介紹到這了,更多相關(guān)Python eval函數(shù)是什么?怎么使用?內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. idea刪除項(xiàng)目的操作方法2. IntelliJ IDEA配置Tomcat服務(wù)器的方法3. IntelliJ IDEA恢復(fù)刪除文件的方法4. IntelliJ IDEA設(shè)置默認(rèn)瀏覽器的方法5. 使用Maven 搭建 Spring MVC 本地部署Tomcat的詳細(xì)教程6. docker鏡像完全卸載的操作步驟7. IntelliJ IDEA導(dǎo)入jar包的方法8. Docker 部署 Prometheus的安裝詳細(xì)教程9. idea導(dǎo)入maven項(xiàng)目的方法10. idea重置默認(rèn)配置的方法步驟

網(wǎng)公網(wǎng)安備