Python 执行字符串表达式函数(eval exec execfile)

yipeiwu_com6年前Python基础

仔细研读后学习了三个函数:
eval:计算字符串中的表达式
exec:执行字符串中的语句
execfile:用来执行一个文件

需注意的是,exec是一个语句,而eval()和execfile()则是内建built-in函数。

Python 2.7.2 (default, Jun 12 2011, 15:08:59) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> x=1
>>> print eval("x+1")
2
>>> exec "print 'http://blog.leniy.org/python-eval-exec-execfile.html'"
http://blog.leniy.org/python-eval-exec-execfile.html
>>> 

同时,我们有时使用input输入一些数据,例如

>>> input("请输入:")
请输入:1+2**3
9
>>> 

其实这里的input也是eval的应用,等效于

>>> eval(raw_input("请输入:"))
请输入:1+2**3
9
>>> 

相关文章

Django项目中model的数据处理以及页面交互方法

Django项目中model的数据处理以及页面交互方法

Django中Models是什么: 通常,一个Model对应一张数据表, Django中Models以类的形式表现, 它包含一些基本字段以及数据的一些行为 ORM: 对象关系映射(Obj...

python 中split 和 strip的实例详解

 python 中split 和 strip的实例详解 一直以来都分不清楚strip和split的功能,实际上strip是删除的意思;而split则是分割的意思。 python...

pygame实现成语填空游戏

pygame实现成语填空游戏

最近看到很多人玩成语填字游戏,那么先用pygame来做一个吧,花了大半天终于完成了,附下效果图。 偷了下懒程序没有拆分,所有程序写在一个文件里,主要代码如下: # -*- codi...

Python和Ruby中each循环引用变量问题(一个隐秘BUG?)

虽然这个问题我是在 Python 里遇到的,但是用 Ruby 解释起来比较容易一些。在 Ruby 里,遍历一个数组可以有很多种方法,最常用的两种无非是 for 和 each:复制代码 代...

tensorflow 重置/清除计算图的实现

调用tf.reset_default_graph()重置计算图 当在搭建网络查看计算图时,如果重复运行程序会导致重定义报错。为了可以在同一个线程或者交互式环境中(ipython/jupy...