程序员

eval函数

2018-11-27  本文已影响1人  MA木易YA

eval(str)函數很強大,官方解釋為:將字符串str當成有效的表達式來求值並返回計算結果。所以,結合math當成一個計算器很好用。

用途

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

eval('2 + 2')

2、將字符串轉成相應的對象(如list、tuple、dict和string之間的轉換),常用于对input函数输入的字符串做转换

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‘}

3、將利用反引號轉換的字符串再反轉回對象(python2),python3里面已经不支持~~了,可以使用repr函数:功能是创建一个字符串,以合法的Python表达式的形式来表示值,下面展示的是py2中的示例

list1 = [1,2,3,4,5]
`list1`
type(`list1`)
type(eval(`list1`))
#输出
‘[1, 2, 3, 4, 5]‘
<type ‘str‘>
<type ‘list‘>


a = eval(`list1`)
a
#输出
[1, 2, 3, 4, 5]
上一篇下一篇

猜你喜欢

热点阅读