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 [4]: type(eval("{'name': 'xiaoming', 'age': 18}"))
Out[4]: dict

案例 - 计算器

需求

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

    input_str = input("请输入一个算术题:")

    print(eval(input_str))

不要滥用 eval

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

__import__('os').system('ls')
  • 等价代码

    import os

    os.system("终端命令")

  • 执行成功,返回 0
  • 执行失败,返回错误信息

转载于:https://www.cnblogs.com/jincieryi1120/p/10832308.html

14-eval 函数相关推荐

  1. 为什么使用JavaScript eval函数是个坏主意?

    eval函数是一种动态生成代码的强大而简便的方法,那么有哪些警告? #1楼 我知道这个讨论很古老,但是我真的很喜欢Google的这种方法,并希望与他人分享这种感觉:) 另一件事是,您越了解越多,您就会 ...

  2. JQuery eval函数

    eval函数语法 转载: http://lxbfly.iteye.com/blog/1213734 eval(codes); eval函数参数 codes -- 字符串形式的表达式或语句 eval函数 ...

  3. c++ _int64转字符串_C语言 仿JS的eval函数 解析字符串

    C语言 利用后缀表达式解析字符串(符合c98标准,很容易移植到计算器上) 最近用98标准的C语言写了个解析字符串,类似于JavaScript中的eval函数,感觉挺实用(移植到了计算器上,可以画F(X ...

  4. python eval函数的神奇魔法

    eval函数的解析 eval() 函数 eval()书写简易计算器 eval() 深度解析 eval() 类型 特别注意 三岁和你用白话学编程,白话一堆,编程自会! eval() 函数 eval() ...

  5. C语言 科学计算器 后缀表达式 解析字符串 仿JS的eval函数

    C语言 利用后缀表达式解析字符串 最近用98标准的C语言写了个解析字符串,类似于JavaScript中的eval函数,感觉挺实用(移植到了计算器上,可以画F(X,Y)==0这种图像了),特此分享一下, ...

  6. makefile eval函数详解

    函数功能:函数"eval"是一个比较特殊的函数.使用它可以在Makefile中构造一个可变的规则结构关系(依赖关系链),其中可以使用其它变量和函数.函数"eval&quo ...

  7. Python数据类型转换 int()、float()、eval()函数

    python数据类型转换 一.其他数据类型转为int型 1.float数据类型转为int 2.整型的字符串转整型 二.其他数据类型转为float型 1.int数据类型转为float型 2.数字类型的字 ...

  8. eval函数和isNaN函数

    (一)eval函数定义:eval() 函数可计算某个字符串,并执行其中的的 JavaScript 代码. (二)语法:eval(string)string必需. (三)返回值:通过计算 string ...

  9. 微信小程序开发之不能使用eval函数的问题

    2019独角兽企业重金招聘Python工程师标准>>> 一 eval函数问题 JavaScript中的eval函数是颇受开发者争议的问题之一,问题主要在于其可能导致的不安全性.有关此 ...

  10. python中eval()函数的使用

    python中eval()函数的使用 python eval函数功能:将字符串str当成有效的表达式来求值并返回计算结果. 函数定义: eval(expression, globals=None, l ...

最新文章

  1. Python学习笔记(二):标准流与重定向
  2. fork()子进程与父进程之间的文件描述符问题
  3. 在ASP.NET中重写URL 方法三:在IIS7中使用HttpModule 实现无扩展名的URL重写
  4. 二、LInux系统安装Java
  5. 命令行 sql 将结果导出到文件
  6. spring缓存与Redis
  7. windowsf进程管理器中进程解释
  8. python - - 函数 - - 递归函数
  9. MYSQL中ALTER命令
  10. xshell 4 中文乱码问题解决
  11. 手把手教你用 Keras 实现 LSTM 预测英语单词发音
  12. android微信摇一摇(抽奖)
  13. plus project的mpp文件导出问题和plus project的xml导出
  14. Windows重定向技术【文件重定向与注册表重定向】
  15. 别拦我,我不想搞Android开发了!
  16. 如何使用 CSS 定位 HTML 元素
  17. DHU OJ 27 约瑟夫环
  18. linux安装Ftp
  19. 【VRP问题】基于模拟退火遗传实现带时间窗的车辆路径规划问题
  20. 计算机专业实践报告1000字,计算机专业毕业实习报告1000字

热门文章

  1. PyTorch搭建LSTM实现多变量多步长时间序列预测(一):直接多输出
  2. 存储卡格式化后数据如何恢复呢?
  3. 基于TX2的全向四轮小车搭建(一)
  4. JAWS模块分析(小东子)
  5. Arduino 和LCD1602液晶屏 I2C接口实验
  6. 条条道路通罗马感受古罗马帝国的辉煌时代!
  7. html遮罩层样式,遮罩层样式
  8. UVA 12304 (平面几何)
  9. /var/log/journal日志清理
  10. 独家分享《非诚勿扰2》普清下载 葛优 舒淇 姚晨 孙红雷 邵兵 安以轩 廖凡