python学习笔记26.eval函数

eval()函数 – 将字符串当成有效的表达式来求值并返回计算结果

# 基本的数学计算
a = eval('1+1')
print(a)  # Output:2

# 字符串重复
b = eval("'*' * 10")
print(b) # Output:**********

# 将字符串转换成列表
c = type(eval('[1,2,3,4,5]'))
print(c) # Output:<class 'list'>

# 将字符串转换成字典
d = type(eval('{"a":1,"b":2,"c":3}'))
print(d) # Output:<class 'dict'>

举个栗子 - 计算器

需求:

  1. 提示用户输入一个加减乘除混合运算

  2. 返回计算结果

input_str = input('请输入一个算术题: ')
print(eval(input_str))

Output:

请输入一个算术题: 3*2
6

不要滥用eval

  • 在开发时千万不要使用eval直接转换input结果
    • 用户可以通过以下命令直接对系统文件进行操作
__import__('os').system('ls')
上一篇:Mac上IntelliJ IDEA 2021 通过插件重置试用期的方法


下一篇:2021高通人工智能应用创新大赛踩坑指南