《Python编程的术与道:Python语言进阶》视频课程
《Python编程的术与道:Python语言进阶》视频课程链接:https://edu.csdn.net/course/detail/28618

exec函数

exec是Python的内置函数,能够执行储存在字符串或文件中的 Python 语句。 eval()函数只能执行计算数学表达式的结果的功能,而exec()能够动态地执行复杂的Python代码,

exec做的是编译和评估字符串中的语句。

首先,我们可以看到它可以完成eval所做的相同工作,例如:

exec("print('so this works like eval')")
so this works like eval
result = exec("print('so this works like eval')")
print(type(result))
so this works like eval
<class 'NoneType'>
list_str = "[5,6,2,1,6]"
list_exec = exec(list_str)
print(type(list_exec))
print(list_exec)
<class 'NoneType'>
None

并且可以比eval做更多,例如:

exec("def test(): print('oooo snap!!!')")
test()
oooo snap!!!
exec("""
def test2():print('lets see if multi line works....')
""")test2()
lets see if multi line works....

在实际项目中,我们有些时候会将Python代码写入一些文件中,举个例子,如以下的fact.txt,它储存了我们想要的Python代码,如下:

# fact.txt
def fact(n):if n==1:return 1else:return n*fact(n-1)
t = fact(6)
print(t)
720

请再次注意,这是一个txt格式的Python代码。那么,我们如何调用它呢?答案就是exec()函数,代码如下:

with open('./files/fact.txt', 'r') as f:s = f.read()exec(s)
720

23.Python中的exec函数相关推荐

  1. python中的open函数

    python中的open函数 open函数用于文件处理 操作文件时,一般需要经历如下步骤: 打开文件 操作文件 一.打开文件 1 文件句柄 = open('文件路径', '模式') 打开文件时,需要指 ...

  2. python中index函数_详解python中的index函数用法

    1.函数的创建 def fun(): #定义 print('hellow') #函数的执行代码 retrun 1 #返回值 fun() #执行函数 2.函数的参数 普通参数 :要按照顺序输入参数 de ...

  3. python中匿名函数的作用_什么是Python中的匿名函数

    匿名函数 lambda x , y : x+y 1.匿名的目的就是要没有名字,给匿名函数赋给一个名字是没有意义的. 2.匿名函数的参数规则.作用域关系与有名函数是一样的. 3.匿名函数的函数体通常应该 ...

  4. Python eval 与 exec 函数的区别 - Python零基础入门教程

    目录 一.Python eval 与 exec 函数的区别 二.价值 10 个亿的智能机器人核心代码 三.猜你喜欢 基础 Python 学习路线推荐 : Python 学习目录 >> Py ...

  5. Python eval 与 exec 函数区别 - Python零基础入门教程

    目录 一.Python eval 与 exec 函数的区别 二.价值 10 个亿的智能机器人核心代码 三.猜你喜欢 基础 Python 学习路线推荐 : Python 学习目录 >> Py ...

  6. Python eval 与 exec 函数 - Python零基础入门教程

    目录 一.前言 二.Python eval 与 exec 函数简介 三.Python eval 与 exec 函数使用 1.exec 函数执行代码段 2.exec 函数执行 py 文件 四.猜你喜欢 ...

  7. python中调用C++函数

    python中调用C++函数 无参调用 单变量传入与返回调用 numpy数组传入与返回调用 c++类调用 用python写不香吗?还这么复杂调用C++? 一. 无参调用 在python中调用无参数和无 ...

  8. Python中的split()函数

    举例详解Python中的split()函数的使用方法 函数:split() Python中有split()和os.path.split()两个函数,具体作用如下: split():拆分字符串.通过指定 ...

  9. python中index方法详解_详解python中的index函数用法

    1.函数的创建 def fun(): #定义 print('hellow') #函数的执行代码 retrun 1 #返回值 fun() #执行函数 2.函数的参数 普通参数 :要按照顺序输入参数 de ...

最新文章

  1. 【S操作】简单粗暴自动化免费文档存储备份方案
  2. [OS复习]进程管理2
  3. 01:MongoDB基础
  4. 手机php用什么打开手机浏览器下载,php实现读取手机客户端浏览器的类
  5. python dataframe的某一列变为list_Pandas某一列是列表,怎么展开呢?
  6. Jupyter Notebook安装jupyter_contrib_nbextension扩展功能和安装后不显示Nbextensions标签的解决办法
  7. 租房管理系统需求分析
  8. 最新最全的云开发入门教程,微信小程序云开发,云函数,云数据库学习,微信小程序云开发扩展功能学习
  9. 手机vnc远程控制软件,手机vnc远程控制软件如何配置
  10. MaxScript调用IGame
  11. 基于uniapp+springboot声纹考勤系统app设计
  12. Qt5 模拟鼠标点击
  13. 最长公共子序列(LCS)算法
  14. Python多进程4 进程池——Pool
  15. 二叉树的中序遍历,前序遍历,后序遍历
  16. python第三章课后答案_XX医学院本科各专业《Python》第三章习题与答案-2020年实用精品...
  17. 不要再走弯路了,黑客学习路线看这里
  18. yolov5-6.0训练自己的模型
  19. WindowsXP 瘦身及优化
  20. eclipse ee 最新版,官网安装教程

热门文章

  1. linux 查看硬盘的uuid_linux下硬盘uuid查看及修改
  2. Android Q私有目录与公共目录文件的交互(读取,复制,保存等)——Pittkai
  3. 易灵思40nm Trion系列FPGA斩获“数字新芯奖”奖项
  4. 如何做好项目的售前技术支持
  5. 常函数const的学习
  6. 启动计算机引导windows10,Win10电脑如何判断系统的启动方式
  7. mysql慢查询记录到表_MySQL慢查询记录原理和内容解析
  8. 沉浸式状态栏 关于状态栏高度的获取
  9. 【Android】短信应用——短信发送2
  10. 什么运动耳机不容易掉、佩戴稳固的运动耳机推荐