Python eval 函数

零基础 Python 学习路线推荐 : Python 学习目录 >> Python 基础入门


一.前言

       Python 内置函数其实挺多的,其中 input 和 eval 算得上比较特殊,input 属于交互式内置函数,eval 函数能直接执行字符串表达式并返回表达式的值.


二.Python eval 函数简介

       内置函数 eval 能直接执行字符串表达式,并返回表达式的结果,示例代码如下:

# !usr/bin/env python
# -*- coding:utf-8 _*-
"""
@Author:猿说编程
@Blog(个人博客地址): www.codersrc.com
@File:Python eval 函数.py
@Time:2021/04/11 07:37
@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
 
"""


a = eval("3+2.5")
print("a={} ,a的类型是{}".format(a,type(a)))

a = eval("3+2")
print("a={} ,a的类型是{}".format(a,type(a)))

b = 33
a = eval("b/2")
print("a={} ,a的类型是{}".format(a,type(a)))

'''
输出结果:

a=5.5 ,a的类型是<class 'float'>
a=5 ,a的类型是<class 'int'>
a=16.5 ,a的类型是<class 'float'>
'''

三.Python eval 函数实战

        input 函数和 eval 函数配合使用完成一个无界面的计算器:

# !usr/bin/env python
# -*- coding:utf-8 _*-
"""
@Author:猿说编程
@Blog(个人博客地址): www.codersrc.com
@File:Python eval 函数.py
@Time:2021/04/11 07:37
@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
 
"""

while True:
    result = eval(input("请输入表达式:"))
    print("结果:",result)


'''
输出结果:

请输入表达式:3+2-6
结果: -1
请输入表达式:55*25
结果: 1375
请输入表达式:89/7
结果: 12.714285714285714
请输入表达式:
'''

注意:

  •        1.input 函数的返回值是字符串 str 类型,如果需要 int 或者 list 类型可以通过转换完成
  •        2.eval 是一个很强大的内置函数,除了以上功能,eval 还能直接删除系统文件,这里不做过多讲解,注意 eval 不要滥用。

四.猜你喜欢

  1. Python 字符串/列表/元组/字典之间的相互转换
  2. Python 局部变量和全局变量
  3. Python type 函数和 isinstance 函数区别
  4. Python is 和 == 区别
  5. Python 可变数据类型和不可变数据类型
  6. Python 浅拷贝和深拷贝
  7. Python 递归函数
  8. Python sys模块
  9. Python 列表list
  10. Python 元组tuple
  11. Python 字典 dict
  12. Python 条件推导式
  13. Python 列表推导式
  14. Python 字典推导式
  15. Python 函数声明和调用
  16. Python 不定长参数 *argc/**kargcs

未经允许不得转载:猿说编程 » Python eval 函数
喜欢(4) 打赏

评论抢沙发

不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!!

开始学习

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏