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]"))
0ut[3]: list
#将字符串转换成字典
In [4]: type(eval("{'name': 'xiaoming', 'age': 18}"))
0ut[4]: dict
执行成功返回0
执行失败返回错误信息
`
案例:利用eval()
函数制作小计算器
如图:
注:开发时千万不能使用
eval()
函数直接转换input
的结果
如果用户在输入内容时,导入os模块,会控制后台的文件和目录,导致安全隐患
例: