迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > Python >

Python 错误 NameError: Name Execfile Is Not Defined

作者:迹忆客 最近更新:2023/05/30 浏览次数:

在 Python 2 中,有一个内置函数 execfile() ,其中将文件作为 Python 语句进行解析和评估。 这个函数不再存在于 Python 3 中。

本文演示了在 Python 3 中执行文件的可能替代方法。


替代 Python 3 中的 execfile()

在 Python 2 中,我们使用函数 execfile() 来执行文件。 在 Python 3 中,我们有一个类似的函数,叫做 exec()。

首先,我们将打开并读取文件并将其作为参数传递给 exec() 函数。

Python 3 中的 exec() 函数

Python exec() 函数执行动态创建的代码块,作为字符串传递。

一般语法:

exec(object, global, local)

exec() 函数需要三个参数。

  1. 对象可以是字符串或多行代码。
  2. 全局参数可以是字典。
  3. 本地可以是映射字典。

localglobal 参数都是可选的。 此外,exec() 是一个空函数,不返回任何值。

下面的代码演示了这个函数的基本工作原理。 以下代码中打印了字符串“programming is fun”。

执行三个数学运算并分别传递给 exec() 函数。

同样,我们可以向一个字符串中添加多行,每一行都被解析为 Python 语句并执行。

示例代码:

exec('print("programming is fun")')
exec('x=4; y=9; print("Multiplication:", x*y)')
w = 200
exec('print(w == 200)')
exec ('print(w / 100)')

输出:

programming is fun
Multiplication: 36
True
2.0

使用 exec() 执行 Python 文件

现在,如果我们想在我们的代码中执行一个外部 Python 文件,我们首先需要打开该文件,读取它并将它作为参数传递给 exec() 函数。

在这里,我们在相对目录中创建了一个文件 myfile.py,其中包含以下代码。

print("Jiyik")

要在我们的 Python 代码中执行此文件,我们将首先使用 open() 打开它,然后使用 read() 函数读取它,最后使用 exec() 函数运行它。

示例代码:

exec(open("myfile.py").read())

输出:

Jiyik

使用 with Block 使用 exec() 执行 Python 文件

with 块在文件到达块末尾时(自动)安全地关闭文件,确保没有任何文件保持打开状态。

示例代码:

with open("myfile.py", 'r') as f:
    exec(f.read())

输出:

Jiyik

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

Python 错误 ImportError: No Module Named Requests

发布时间:2023/05/31 浏览次数:104 分类:Python

错误 ImportError: No module named requests 意味着 Python 解释器无法导入 requests 模块。本篇文章展示了修复Python中 ImportError: No module named requests 错误的方法。

Python 中 Locale.Error: Unsupported Locale Setting 错误

发布时间:2023/05/31 浏览次数:100 分类:Python

在本文中,我们将了解什么是区域设置模块和区域设置错误不受支持的本地设置,以及如何修复区域设置错误。locale.Error: unsupported locale setting 当您不熟悉此模块时会遇到。

Python 中错误 ImportError: No Module Named Sklearn

发布时间:2023/05/31 浏览次数:194 分类:Python

在 Python 中,sklearn 被用作机器学习工具,用于在回归、集群等方面创建程序。很多时候,导入它会抛出错误—— No module named sklearn。Python中错误ImportError: No module named sklearn的原因

修复 Python 中的 TypeError: Can Only Join an Iterable 错误

发布时间:2023/05/30 浏览次数:172 分类:Python

本篇文章将讨论Python中的 TypeError: can only join an iterable 错误。修复Python中 TypeError: can only join an iterable 错误。由于它是 TypeError,我们可以得出结论,正在对给定对象执行不受支持的操作。

修复 Python 错误 SyntaxError: Invalid Token

发布时间:2023/05/30 浏览次数:85 分类:Python

在本文中,我们将了解什么是 SyntaxError: invalid token Python 错误以及如何修复它。 令牌是语句的重要组成部分,组合这些令牌可为 Python 编译器提供有意义的模式。

修复 Python 错误 SyntaxError: 'break' Outside Loop

发布时间:2023/05/30 浏览次数:93 分类:Python

本篇文章将讨论 Python 的 SyntaxError: 'break' outside loop 错误。循环和条件语句是任何编程语言不可或缺的一部分。修复 Python 中的 SyntaxError: 'break' outside loop 错误

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便