Python eval()函数的用法
eval(str)函数很强大,官方解释为:将字符串str当成有效的表达式来求值并返回计算结果。所以,结合math当成一个计算器很好用。
eval()函数常见作用有:
1、计算字符串中有效的表达式,并返回结果
1 >>> eval(‘pow(2,2)‘) 2 4 3 >>> eval(‘2 + 2‘) 4 4 5 >>> eval("n + 4") 6 85
2、将字符串转成相应的对象(如list、tuple、dict和string之间的转换)
1 >>> a = "[[1,2], [3,4], [5,6], [7,8], [9,0]]" 2 >>> b = eval(a) 3 >>> b 4 [[1, 2], [3, 4], [5, 6], [7, 8], [9, 0]] 5 >>> a = "{1:‘xx‘,2:‘yy‘}" 6 >>> c = eval(a) 7 >>> c 8 {1: ‘xx‘, 2: ‘yy‘} 9 >>> a = "(1,2,3,4)" 10 >>> d = eval(a) 11 >>> d 12 (1, 2, 3, 4)
3、将利用反引号转换的字符串再反转回对象
1 >>> list1 = [1,2,3,4,5] 2 >>> `list1` 3 ‘[1, 2, 3, 4, 5]‘ 4 >>> type(`list1`) 5 <type ‘str‘> 6 >>> type(eval(`list1`)) 7 <type ‘list‘> 8 >>> a = eval(`list1`) 9 >>> a 10 [1, 2, 3, 4, 5]