NameError:名称“sys”未在 Python 中定义
NameError: name ‘sys’ is not defined in Python
当我们使用sys
模块而不先导入它时,会出现 Python“NameError: name ‘sys’ is not defined”。要解决错误,请sys
在使用之前导入模块 – import sys
。
下面是错误如何发生的示例。
主程序
print('before') # ⛔️ NameError: name 'sys' is not defined print(sys.version) print(sys.exit()) print('after')
为了解决这个错误,我们必须导入
sys模块。
主程序
# 👇️ import sys first import sys print('before') print(sys.version) print(sys.exit()) print('after')
即使该sys
模块在 Python 标准库中,我们仍然需要在使用前导入它。
s
确保在导入时没有使用大写字母,因为模块名称区分大小写。 sys
另外,请确保您没有导入sys
嵌套范围,例如函数。在顶层导入模块,以便能够在整个代码中使用它。
导入整个sys
模块的替代方法是仅导入您的代码使用的函数和常量。
主程序
from sys import version, exit print('before') print(version) print(exit()) print('after')
该示例显示了如何从模块中导入exit()
函数和version
常量。sys
例如sys.exit()
,我们现在直接访问它们,而不是访问模块上的成员。
这应该是您的首选方法,因为它使您的代码更易于阅读。
例如,当我们使用诸如 之类的导入时
import sys
,很难看出sys
文件中使用了模块中的哪些函数。相反,当我们导入特定的函数时,更容易看出sys
正在使用模块中的哪些函数。
该sys
模块提供对 Python 解释器使用的变量以及与解释器交互的函数的访问。
sys
您可以通过访问官方文档查看模块提供的所有函数和常量。
结论
当我们使用sys
模块而不先导入它时,会出现 Python“NameError: name ‘sys’ is not defined”。要解决错误,请sys
在使用之前导入模块 – import sys
。