Python_从零开始学习_(46) eval 函数

Myth丶恋晨 2021-09-16 20:40 415阅读 0赞

eval() 函数十分强大 —— 将字符串 当成 有效的表达式 来求职 并 返回计算结果

  1. # 基本的数学计算
  2. print(eval("1 + 1")) # 2
  3. # 字符串重复
  4. print(eval("'*' * 5")) # *****
  5. # 将字符串转换成列表
  6. print(eval("[1, 2, 3, 4]")) # [1, 2, 3, 4]
  7. # 等等...

案例 — 计数器

需求

  1. 提示用户输入一个 加减乘除混合运算
  2. 返回计算结果

    input_str = input(“请输入算术题: “)

    print(eval(input_str))

不要滥用 eval


在开发时千万不要使用 eval 直接转换 input 的结果

  1. __import__('os').system('ls')

等价于

  1. import os
  2. os.system("终端命令")

意思是可以通过输入的内容, 对服务器文件增删查改, 操作本地的文件, 很危险

发表评论

表情:
评论列表 (有 0 条评论,415人围观)

还没有评论,来说两句吧...

相关阅读