为何会出现NameError: name 'arg' is not defined错误?如何解决

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为何会出现NameError: name 'arg' is not defined错误?如何解决相关的知识,希望对你有一定的参考价值。

def add_number1(a,**kwargs): for arg.value in kwargs.items(): print (arg.value)add_number1(1,x=2,y=3)

参考技术A 你arg.value这个地方点用错了,这里应该是英文逗号不是点

for arg,value in kwargs.items():
print (arg,value)

NameError:没有为pygame定义名称“退出”

【中文标题】NameError:没有为pygame定义名称“退出”【英文标题】:NameError: name 'quit' is not defined for pygame 【发布时间】:2020-10-05 13:13:35 【问题描述】:

我尝试制作一个小蛇游戏(使用 pygame),并尝试使用 cx_Freeze 将其导出为 .exe。游戏运行良好,直到我关闭窗口。当我这样做时,会出现以下错误消息:

但我只是用它来关闭游戏循环:

for event in pygame.event.get():
    if event.type == pygame.QUIT:
        pygame.quit()
        quit()
    if event.type == pygame.KEYDOWN:
        if event.key == pygame.K_ESCAPE:
            pygame.quit()
            quit()
        if event.key == pygame.K_SPACE:
            Game()

如果我打开 .py 文件,我不会收到任何错误消息。我不知道如何解决这个问题。

我的 setup.py:

import cx_Freeze

executables = [cx_Freeze.Executable("snake.py", base="Win32GUI", icon="links/icon.ico")]

cx_Freeze.setup(
    name="Snake",
    options="build_exe": "packages": ["pygame"], "include_files": ["links/"],
    executables=executables
    )

这是我的代码:Codeshare.io

【问题讨论】:

不要发布指向您的代码的链接。 (Codeshare.io 似乎没有自动启动)。贴出调用quit()的相关代码。 您在程序中未定义的代码笔上的第 42 行调用 pygame.quit() 下的函数 quit()。创建函数或删除行。 quit 在冻结时对我来说也总是失败。请改用sys.exit() quit() 已经是一个定义的函数,pygame.quit() 也是。如果我删除其中一个,只会产生更多错误或错误... for 循环之前是否有一个while 循环运行? 【参考方案1】:

所以我通过输入 sys.exit() 而不是输入 quit() 解决了这个问题 我之前试过这个,但我不知道我必须import sys

(对不起,我是初学者)

【讨论】:

以上是关于为何会出现NameError: name 'arg' is not defined错误?如何解决的主要内容,如果未能解决你的问题,请参考以下文章

python3出现错误:NameError: name 'abchello' is not defined

NameError: name 'QApplication' is not defined 的解决办法

我写了一个python程序,报错NameError: name XX is not defined 求解

Python 解决 :NameError: name 'reload' is not defined 问题

selenium + python之BSTestRunner生成测试报告时报错:NameError: name 'unicode' is not defined

selenium + python之BSTestRunner生成测试报告时报错:NameError: name 'unicode' is not defined