全局名称 'q' 未定义 - Python
Global Name 'q' not Defined - Python
我有一个像这样的程序:
class ABC:
q = {}
def update:
self.state = (xx,xx)
global q
if self.state in q:
// do something
我遇到错误:
"NameError: global name 'q' is not defined"
我是 python 的新手,需要一些帮助。
q
未在此处声明为全局变量 - 它被声明为 class ABC
.
的 class 变量
如果您希望 q
是全局的,您应该在开始声明 class 之前定义它。
您可以将 q 移出 class:
q = {}
class ABC:
def update:
self.state = (xx,xx)
global q
if self.state in q:
# do something
pass
或者您可以将 q 作为 class 变量引用:
class ABC:
q = {}
def update:
self.state = (xx,xx)
if self.state in ABC.q:
# do something
pass
我有一个像这样的程序:
class ABC:
q = {}
def update:
self.state = (xx,xx)
global q
if self.state in q:
// do something
我遇到错误:
"NameError: global name 'q' is not defined"
我是 python 的新手,需要一些帮助。
q
未在此处声明为全局变量 - 它被声明为 class ABC
.
如果您希望 q
是全局的,您应该在开始声明 class 之前定义它。
您可以将 q 移出 class:
q = {}
class ABC:
def update:
self.state = (xx,xx)
global q
if self.state in q:
# do something
pass
或者您可以将 q 作为 class 变量引用:
class ABC:
q = {}
def update:
self.state = (xx,xx)
if self.state in ABC.q:
# do something
pass