eval()函数的用法
1、用于执行表达式
str = '10 + 100'
print(eval(str))
代码解释:
str为一个字符串,但是该字符串是一个算符表达式的字符串,通过eval的函数可将其直接转化为算符表达式的执行结果
执行结果控制台显示:

2、格式转换(较为智能)
(一)它能够较为智能的将字符串进行类型转换:
a = '[2,3,1,4]'
print(type(a))
a = eval(a)
print(type(a))
执行结果:(第一次输出为字符串类型,第二次为列表类型)

(二)写入计算表达式时自动转换为计算要用到的整数类型
a = '2'
print(eval(a)+2)
控制台输出结果:4
(三)写入布尔表达式的转换
在下面这段代码中,eval自动将输入的值转化为了if所需要的布尔表达式类型
a = input()
if eval(a):
print("这是一个True测试")
else:
print("false")
输入测试:
输入1:

输入0:

但是当输入一个字符不能被转换为布尔类型时程序就会出错
本文详细介绍了Python内置函数eval()的两种主要用途:执行表达式和智能格式转换。通过示例展示了eval如何将字符串形式的数学表达式转化为实际计算结果,并能将字符串类型的列表、整数等转换为对应的Python数据类型。同时,提到了eval在处理布尔表达式时的自动转换功能。但需要注意,当输入无法转换为布尔类型时,程序可能出错。
422

被折叠的 条评论
为什么被折叠?



