当前位置: Python基础教程 > 11-文件操作 > 阅读正文

python的eval函数

2021.6.23.   460 次   383字

python中,eval是一个将字符串转换为表达式并计算的函数

eval使用较多,例如

#简单的数学计算
eval("1+1")

#字符串重复
eval("'*' * 10")

#字符串转换为列表
type(eval("[1,2,3,4,5]"))

#将字符串转换为字典
type(eval("{'name':'xiaoming','age':18}"))

要非常谨慎的使用 eval 函数,千万不要给用户输入,如果把用户输入的字符串直接转换为eval,则将是一种灾难

print(eval(input("请输入一个算术运算")))

如果用户正常输入,比如

请输入一个算术运算1+1
2

可若输入的是命令,例如前面学习的os模块

__import__('os').system('rm test.txt')

它等价于以下代码,将删除test.txt

import os
os.system("rm test.txt")

本篇完,还有疑问?

加入QQ交流群:11500065636 IT 技术交流群