eval函数:
eval()函数用来执行一个字符串表达式,并返回表达式的值。还可以把字符串转化为list、tuple、dict。 eval函数的语法<font style="background-color:#FFFB8F;">eval(expression[,globals[,locals]])</font>
参数:
<font style="color:#F5222D;">expression</font>:表达式
<font style="color:#F5222D;">globals</font>:变量作用域,如果被提供,必须是一个字典对象
<font style="color:#F5222D;">locals</font>:变量作用域,如果被提供,可以说任何映射对象
案例
- 字符串转换列表
str_a = "[1,2,3,4,5]" # 字符串类型数据lis_b = eval(str_a) # 列表类型数据print(lis_b,type(lis_b))输出结果[1, 2, 3, 4, 5] <class 'list'>
- 字符串转换字典
str_a = "{'name':'cherry','age':25}" # 字符串类型数据dic_b = eval(str_a) # 字典类型数据print(dic_b,type(dic_b))输出结果{'name': 'cherry', 'age': 25} <class 'dict'>
- 字符串转换元祖
str_a = "(1,2,3,4,5)" # 字符串类型数据tup_b = eval(str_a) # 元组类型数据print(tup_b,type(tup_b))输出结果(1, 2, 3, 4, 5) <class 'tuple'>
- 返回表达式的值
num = 2print(eval('3*num')) # 返回3*2的值 6dic = {'a':3}print(eval('a+1', dic)) # 返回字典a对应的值+1 4dic1 = {'a':3,'b':6}dic2 = {'d':4,'c':3}print(eval('a+b+c+d', dic1, dic2)) # 返回字典所有值相加
- 返回去引号的值或者执行相应的方法

