Python eval函數(shù)介紹及用法
我們之前跟大家描述了在Python里面一些函數(shù)的不同使用,以及一些函數(shù)的潛藏使用技巧,可是大家有沒(méi)有聽(tīng)說(shuō)過(guò),有一個(gè)函數(shù)一直被譽(yù)為最神奇的函數(shù),神奇的地方在哪里?到底怎么神奇?請(qǐng)看下文。
關(guān)于eval():
將字符串string對(duì)象轉(zhuǎn)化為有效的表達(dá)式參與求值運(yùn)算返回計(jì)算結(jié)果。
語(yǔ)法上:
調(diào)用的是:eval(expression,globals=None, locals=None)返回的是計(jì)算結(jié)果
其中:
1、expression是一個(gè)參與計(jì)算的python表達(dá)式
2、globals是可選的參數(shù),如果設(shè)置屬性不為None的話(huà),就必須是dictionary對(duì)象了
3、locals也是一個(gè)可選的對(duì)象,如果設(shè)置屬性不為None的話(huà),可以是任何map對(duì)象了
4、python是用命名空間來(lái)記錄變量的軌跡的,命名空間是一個(gè)dictionary,鍵是變量名,值是變量值。
下面簡(jiǎn)單演示一下eval()函數(shù)的使用:
#!usr/bin/env python #encoding:utf-8 import math def 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)化開(kāi)始--------------------------------' print type(l), type(eval(l)) print type(d), type(eval(d)) print type(t), type(eval(t)) if __name__=="__main__": eval_test()
測(cè)試結(jié)果輸出如下:
--------------------------轉(zhuǎn)化開(kāi)始-------------------------------- <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ù)是什么?怎么使用??jī)?nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python2.7簡(jiǎn)單連接與操作MySQL的方法
這篇文章主要介紹了Python2.7簡(jiǎn)單連接與操作MySQL的方法,涉及Python使用MySQLdb模塊操作MySQL連接及命令運(yùn)行的相關(guān)技巧,需要的朋友可以參考下2016-04-04MAC下Anaconda+Pyspark安裝配置詳細(xì)步驟
一般MAC上使用的是zsh的shell工具,需要修改zshrc文件來(lái)使環(huán)境變量永久生效(若不修改該文件,在命令行中輸入相應(yīng)的命令即可,本文給大家介紹MAC下Anaconda+Pyspark安裝配置詳細(xì)步驟,感興趣的朋友跟隨小編一起看看吧2021-12-12python中報(bào)錯(cuò)"json.decoder.JSONDecodeError: Expecting value:"的解決
這篇文章主要介紹了python中報(bào)錯(cuò)"json.decoder.JSONDecodeError: Expecting value:"的解決方法 ,需要的朋友可以參考下2019-04-04Python 3.8 新功能來(lái)一波(大部分人都不知道)
Python 3.8 是Python語(yǔ)言的最新版本,它適合用于編寫(xiě)腳本、自動(dòng)化以及機(jī)器學(xué)習(xí)和Web開(kāi)發(fā)等各種任務(wù)。這篇文章主要介紹了Python 3.8 新功能(大部分人都不知道),需要的朋友可以參考下2020-03-03詳解python并發(fā)獲取snmp信息及性能測(cè)試
本篇文章主要介紹了詳解python并發(fā)獲取snmp信息及性能測(cè)試,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-03-03Python如何獲取Win7,Win10系統(tǒng)縮放大小
這篇文章主要介紹了Python如何獲取Win7,Win10系統(tǒng)縮放大小,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-01-01pandas中DataFrame的merge操作的實(shí)現(xiàn)
本文主要介紹了pandas中DataFrame的merge操作的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2024-07-07使用python批量化音樂(lè)文件格式轉(zhuǎn)換的實(shí)例
今天小編就為大家分享一篇使用python批量化音樂(lè)文件格式轉(zhuǎn)換的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-01-01