Python eval()函数的使用

文章目录

  • 一、官网给出的定义
    • 1、eval() 方法的语法:
  • 二、eval的作用
    • 1、计算字符串中有效的表达式,并返回结果
    • 2、将字符串转成相应的对象(如list、tuple、dict和string之间的转换)
  • 三、eval()使用globals参数

切记: eval()函数的第一个参数的类型是字符串


一、官网给出的定义

eval(str)函数很强大,官方解释为:将字符串str当成有效的表达式来求值并返回计算结果。所以,结合math当成一个计算器很好用。

def eval(*args, **kwargs): # real signature unknown"""Evaluate the given source in the context of globals and locals.The source may be a string representing a Python expressionor a code object as returned by compile().The globals must be a dictionary and locals can be any mapping,defaulting to the current globals and locals.If only globals is given, locals defaults to it."""pass

1、eval() 方法的语法:


eval(expression[, globals[, locals]])

参数:

  • expression – 表达式。
  • globals – 变量作用域,全局命名空间,如果设置属性不为None的话,则必须是一个字典对象
  • locals – 变量作用域,局部命名空间,如果设置属性不为None的话,可以是任何映射(map)对象

返回值:
返回表达式计算结果。

二、eval的作用

1、计算字符串中有效的表达式,并返回结果

注意:
eval 的表达式一定是 字符串

>>> x1 = eval("pow(2,4)")
>>> x1
16
>>> type(x1)
<class 'int'>
>>> x2 = eval("2+6")
>>> x2
8
>>> type(x2)
<class 'int'>
>>> x3 = eval("8/4")
>>> x3
2.0
>>> type(x3)
<class 'float'>

2、将字符串转成相应的对象(如list、tuple、dict和string之间的转换)

  1. 字符串转换成列表数据结构
>>> x1 = "[[1,2], [3,4], [5,6], [7,8], [9,0]]"
>>> x1
'[[1,2], [3,4], [5,6], [7,8], [9,0]]'
>>> x2 = eval(x1)
>>> x2
[[1, 2], [3, 4], [5, 6], [7, 8], [9, 0]]
>>> x1 = "[[1,2], [3,4], [5,6], [7,8], [9,0]]"
>>> x1
'[[1,2], [3,4], [5,6], [7,8], [9,0]]'
>>> type(x1)
<class 'str'>
>>> x2 = eval(x1)
>>> x2
[[1, 2], [3, 4], [5, 6], [7, 8], [9, 0]]
>>> type(x2)
<class 'list'>
  1. 字符串转换成字典数据结构
>>> x1 = "{'name': 'Tom', 'age': 23}"
>>> x1
"{'name': 'Tom', 'age': 23}"
>>> type(x1)
<class 'str'>
>>> x2 = eval(x1)
>>> x2
{'name': 'Tom', 'age': 23}
>>> type(x2)
<class 'dict'>

三、eval()使用globals参数

可以在字典中定义未知数的值

>>> a = eval("x+23", {"x": 17})
>>> a
40
>>> b = eval("a + b", {"a": 13, "b": 7})
>>> b
20




♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠

Python eval()函数的使用相关推荐

  1. python eval 入门_Python学习笔记整理3之输入输出、python eval函数

    Python学习笔记整理3之输入输出.python eval函数 来源:中文源码网    浏览: 次    日期:2018年9月2日 Python学习笔记整理3之输入输出.python eval函数 ...

  2. Python eval 函数 - Python零基础入门教程

    目录 一.前言 二.Python eval 函数简介 三.Python eval 函数实战 四.猜你喜欢 零基础 Python 学习路线推荐 : Python 学习目录 >> Python ...

  3. Python eval 函数 -Python零基础入门教程

    目录 一.前言 二.Python eval 函数简介 三.Python eval 函数实战 四.猜你喜欢 零基础 Python 学习路线推荐 : Python 学习目录 >> Python ...

  4. Python eval()函数

    Python eval()函数 eval()是python的一个内置函数,这个函数接受的参数是字符串,它返回字符串的表达式的结果.可以用来传递一个列表外面包着一层字符串给它,返回列表本身.在Paddl ...

  5. python eval()函数使用

    一.eval()函数是什么? Python的一个内置函数: 返回传入字符串的表达式结果(官方) 二.eval()函数语法解析 eval(expression[, globals[, locals]]) ...

  6. python办公室妙用-python eval()函数的妙用和滥用

    eval()函数十分强大,官方demo解释为:将字符串str当成有效的表达式来求值并返回计算结果: >>> s="8*8" >>> eval(s ...

  7. python eval函数_Python基础元素语法总结

    一.程序的格式框架 1.缩进 缩进是指每行语句前的空白区域,用来表示Python程序间的包含和层次关系. 一般语句不需要缩进,顶行书写且不留空白. 当表示分支.循环.函数.类等含义,在if,while ...

  8. python eval函数的神奇魔法

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

  9. python eval函数_Python中eval与exec区别 | 萧小寒

    摘要 学过JavaScript的人都知道,在JS中有一个函数叫内置函数叫eval.eval函数可计算某个字符串,并执行其中的的JavaScript代码.正是因为这个特性,所以现在很多教材都不推荐使用这 ...

  10. python eval函数_Python eval 函数妙用

    作者博文地址:https://www.cnblogs.com/liu-shuai/ eval 功能:将字符串str当成有效的表达式来求值并返回计算结果. 语法: eval(source[, globa ...

最新文章

  1. python语言包含的错误,Python语言程序中包含的错误,一般分为三种,以下____________不是其中的一种...
  2. redis的两种持久化方式详解
  3. [Angularjs]ng-select和ng-options(转载)
  4. JQuery URL的GET参数值获取方法
  5. Android的HTTP方式网络通信---HttpURLConnection
  6. 【笔试/面试】排列组合与概率计算(三)
  7. 大数据营销平台该如何选择
  8. 20190218每日一句
  9. 用纯JavaScript制作扫雷游戏-1
  10. 知网查重原理以及降重举例
  11. PHP摄影网站怎么制作,摄影网站的设计与实现.doc
  12. Windows10 下面一个非常快速而精悍的看图软件 - IrfanView
  13. AndroidStudio报错Transform output file D:\android\RfidDemo\app\libs\RFID_lib.jar does not exist.
  14. Mysql统计男女比例
  15. python五边形的代码_python正五边形代码
  16. 关于图文识别功能相关技术的大致实现
  17. 如何在虚拟机下安装Linux
  18. python count函数时间复杂度_Python之时间复杂度
  19. IOS证书获取(证书profile文件,p12私钥证书,证书私钥密码,Bundle ID)
  20. c语言退回N帧滑动窗口协议,滑动窗口协议实验的报告.docx

热门文章

  1. 2017ACM暑期多校联合训练 - Team 7 1009 HDU 6128 Inverse of sum (数学计算)
  2. storm源码之storm代码结构【译】
  3. Autorun.inf文件(2):改变硬盘分区图标
  4. alertdialog.builder 自定义弹窗
  5. 使用Flex4容器若干技巧
  6. java是什么 需要学什么_Java是什么,Java需要学习哪些内容?如何自学Java?
  7. 安装python后如何打开-Python的安装与使用
  8. python飞机大战的实训心得体会-python之基础总结(飞机大战)
  9. 如何用python画数据图-利用Python绘制数据的瀑布图的教程
  10. python 数据分析学什么-如何在业余时学数据分析?