1. 程式人生 > 程式設計 >Python eval函式介紹及用法

Python eval函式介紹及用法

我們之前跟大家描述了在Python裡面一些函式的不同使用,以及一些函式的潛藏使用技巧,可是大家有沒有聽說過,有一個函式一直被譽為最神奇的函式,神奇的地方在哪裡?到底怎麼神奇?請看下文。

關於eval():

將字串string物件轉化為有效的表示式參與求值運算返回計算結果。

語法上:

呼叫的是:eval(expression,globals=None,locals=None)返回的是計算結果

其中:

1、expression是一個參與計算的python表示式

2、globals是可選的引數,如果設定屬性不為None的話,就必須是dictionary物件了

3、locals也是一個可選的物件,如果設定屬性不為None的話,可以是任何map物件了

4、python是用名稱空間來記錄變數的軌跡的,名稱空間是一個dictionary,鍵是變數名,值是變數值。

下面簡單演示一下eval()函式的使用:

#!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,5],9],[123,456,789])'
 print '--------------------------轉化開始--------------------------------'
 print type(l),type(eval(l))
 print type(d),type(eval(d))
 print type(t),type(eval(t))
if __name__=="__main__":
 eval_test()

測試結果輸出如下:

--------------------------轉化開始--------------------------------
<type 'str'> <type 'list'>
<type 'str'> <type 'dict'>
<type 'str'> <type 'tuple'>
[Finished in 0.2s]

到此這篇關於Python eval函式介紹及用法的文章就介紹到這了,更多相關Python eval函式是什麼?怎麼使用?內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!