eval函数
eval()
将字符串转变为有效的表达式来求值并返回对应的结果
基础数据计算
In [1]: eval("1 + 1")
Out[1]: 2
字符串重复
In [2]: eval (" '*' * 10")
Out[2]: '**********'
字符串转为列表
In [3]: type(eval("[1,2,3,4,5]"))
Out[3]: list
字符产转为字典
In [5]: type(eval("{'key':'value'}"))
Out[5]: dict
计算器案例
in_str = input("请输入一道算术题:")
print(eval(in_str))
请输入一道算术题:1+1
2
慎用eval
- 防止代码注入
- 防止恶意攻击如:删除文件,获取敏感信息