把一个逗号分隔的很长的字符串转换为列表和eval函数的简介和语法

1 eval函数的简介和语法:
eval()函数用来执行一个字符串表达式,并返回表达式的值。
还可以把字符串转化为list、tuple、dict。

eval函数的语法:

eval(expression[,globals[,locals]])
参数:

expression:表达式。

globals:变量作用域,如果被提供,必须是一个字典对象。

locals:变量作用域,如果被提供,可以说任何映射对象。

2 eval()函数使用实例:
1 字符串转换成列表:
a="[1,2,3,4,5]"
b=eval(a)
 
# a是字符串类型数据,b是列表类型数据
2 字符串转换成字典 :
a="{"name":"guo","age":25}"
b=eval(a)
 
# a为字符串类型数据,b为字典类型数据
3 字符串转换为元组:
a="(1,2,3,4,5)"
eval(a)
 
# a的数据结构是字符串 b的数据结构是元组
4 eval()返回表达式的值:
x=4
eval("3*x")
 
# 返回值为12
 
x=10
g={'a':4}
eval{"a+1",g}

【解析】:
因为现在指定了globals,所以在expression部分的作用域就是globals指定的字典范围内。
所以此时外面的a=10被屏蔽,取用字典中的值。
 
# 返回值为  5
 
x=10
b=20
c=30
g={'a':6,'b':8}
t={'b':100,'c':10}
eval('a

猜你喜欢

转载自blog.csdn.net/weixin_42550871/article/details/122238854
今日推荐