Python:eval函數

eval()官方文檔裏面給出來的功能解釋是:將字符串string對象轉化爲有效的表達式參與求值運算返回計算結果

語法上:調用的是:eval(expression,globals=None, locals=None)返回的是計算結果

其中:

expression是一個參與計算的python表達式

globals是可選的參數,如果設置屬性不爲None的話,就必須是dictionary對象了

locals也是一個可選的對象,如果設置屬性不爲None的話,可以是任何map對象了
————————————————
版權聲明:本文爲CSDN博主「Together_CZ」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/Together_CZ/article/details/72640276

將字符串str當成有效的表達式來求值並返回計算結果。所以,結合math當成一個計算器很好用。

eval()函數常見作用有:

1、計算字符串中有效的表達式,並返回結果

>>> eval('pow(2,2)')
4
>>> eval('2 + 2')
4
>>> eval("n + 4")
85

2、將字符串轉成相應的對象(如list、tuple、dict和string之間的轉換)

>>> a = "[[1,2], [3,4], [5,6], [7,8], [9,0]]"
>>> b = eval(a)
>>> b
[[1, 2], [3, 4], [5, 6], [7, 8], [9, 0]]
>>> a = "{1:'xx',2:'yy'}"
>>> c = eval(a)
>>> c
{1: 'xx', 2: 'yy'}
>>> a = "(1,2,3,4)"
>>> d = eval(a)
>>> d
(1, 2, 3, 4)

3、將利用反引號轉換的字符串再反轉回對象

>>> list1 = [1,2,3,4,5]
>>> `list1`
'[1, 2, 3, 4, 5]'
>>> type(`list1`)
<type 'str'>
>>> type(eval(`list1`))
<type 'list'>
>>> a = eval(`list1`)
>>> a
[1, 2, 3, 4, 5]

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章