一、eval()函数
用来执行一个字符串表达式,并返回表达式的值。可以把字符串转化为list,dict ,tuple。
二、eval()函数源码
三、eval()函数语法
eval(*args, **kwargs)
说明:
- expression -- 表达式。
- globals -- 变量作用域,全局命名空间,如果写,则必须是一个字典对象。
- locals -- 变量作用域,局部命名空间,如果写,可以是任何映射对象。
- return:返回表达式计算结果。
四、eval()函数的应用
1、使用eval()函数,将字符串还原为数字类型,和int()函数的作用类似
# 1.使用eval()函数,将字符串还原为数字类型,和int()函数的作用类似
a = input()
print(type(a))
#利用eval()将字符串类型转为整形
print(type(eval(a)),type(int(a)))
2.将输入的字符串转为对应的数据类型:如列表、元组、字典
# 2.将输入的字符串转为对应的数据类型:如列表、元组、字典
# [1,2,4]
# (1, 2, 4)
# {'a':1,'b':2}
a = input()
n = eval(a) # 得到一个列表
print(type(n),type(a))
3.对表达式的结果进行计算,返回计算后的值
# 3.对表达式的结果进行计算,返回计算后的值
ss1 = "5*8"
num=90
print(eval(ss1), eval("pow(3,2)"),eval('num+10'))
4、可以使用格式化字符串的操作更加简便
#4.可以使用格式化字符串的操作更加简便
a=10
oper='+'
b=5
#加法运算
sums=eval(f'{a}{oper}{b}')
print(f'{a}{oper}{b}={sums}')