Python:eval和exec函数的使用方法

eval()函数

把一个字符串当成一个表达式来执行, 返回表达式执行后的结果
语法:

  eval(string_code, globals=None, locals=None)
x = 100
y = 200
# 执行x+y
# z = x + y
z1 = x + y
z2 = eval("x+y")

print(z1)
print(z2)

300
300

从上式可以看出,z1、z2语句不同,输出结果一样,eval就是能将字符串里内容执行后并返回

exec()函数

跟eval函数类似,能够将字符串当一个表达式来执行,但是不能返回执行的结果,而是一个None。
语法:

      exec(string_code, globals=None, locals=None)
# exec示例
x = 100
y = 200
# 执行x+y
# z = x + y
z1 = x + y
# 1, 注意字符串中引号的写法
# 2. 比对exec执行结果和代码执行结果
z2 = exec("print('x+y:', x+y)")

print(z1)
print(z2)

x+y: 300
300
None

eval()、exec()函数都能和print()函数一样,直接打印出内部的元素。

猜你喜欢

转载自blog.csdn.net/qq_28766729/article/details/82556639