名称出口未在 python 中定义

Posted

技术标签:

【中文标题】名称出口未在 python 中定义【英文标题】:name exit is not defined in python 【发布时间】:2015-05-09 20:52:17 【问题描述】:

以下是代码。 当我运行时,我收到一条错误消息,说“未定义名称退出”。谁能告诉我为什么?非常感谢您的时间和关注。

if len(sys.argv) == 4:
   ### do something
    pass
else:
    print
    "usage: #### something here"
    exit(-1)

【问题讨论】:

只要import sys,像这样:from sys import exit;导入系统 你使用的是sys.argv,很明显,你已经导入了sys。所以就做sys.exit 一个简单的问题。我早些时候用一台超级计算机运行它,它可以工作。但是今天我在我的电脑上运行它,它给了我这样的错误。有谁知道为什么? 【参考方案1】:

您需要先import sys,因为exit(和argv)在该模块中。

我在运行您的代码时遇到的错误是:

文件“”,第 1 行,在 NameError 中:名称 'sys' 不是 定义

这是抱怨sys.argv 而不是exit。但无论哪种情况,解决方案——import sys都是一样的。

【讨论】:

实际上,即使没有import sysexit 命令也可以在终端中运行。但是当我在 Jupyter 笔记本中运行相同的脚本时,我需要导入。不知道为什么? 即使我导入 sys,我也无法退出以在正在运行的 Python3 程序中的任何位置工作。【参考方案2】:

如果您导入了sys,则使用sys.exit(0) - 将0 更改为您想要退出的任何结果代码。 我遇到了同样的问题,在编译之前从.py 文件exit(0) 运行时运行良好,但是在编译到.exe 之后它给了我一个错误。我不得不将 exit(0) 更改为 sys.exit(0) 并且成功了。

【讨论】:

宾果游戏!一些关于编译的事情使它复杂化了。添加sys. 解决了这个问题。

以上是关于名称出口未在 python 中定义的主要内容,如果未能解决你的问题,请参考以下文章

NSUnknownKeyException 即使定义了出口

在 awakeFromNib 中获取出口尺寸

NX二次开发用户出口函数介绍

出口未定义 ia tsc'ed (js) 文件

出口成章显示重名怎么回事

iOS swift中的自定义视图出口在视图控制器中不起作用