【发布时间】:2019-12-05 01:37:07
【问题描述】:
我正在尝试跨类访问变量以比较字符串。我想使用一个全局的,但只有当我为全局分配一个值时才有效。我从一个类的列表中分配每个变量随机字符串,然后在另一个类中执行相同的操作,然后比较它们是否匹配。
class A(screen):
check1 = ""
check2 = ""
check3 = ""
def on_enter(self):
rand_files = ["hello", "goodbye", "what"]
Check1, Check2, Check3 = rand_files
class B(screen):
Ans1 = ""
Ans2 = ""
Ans3 = ""
Ans4 = ""
Ans5 = ""
Ans6 = ""
def on_enter(self):
rand_files = ["hello", "night", "goodbye", "day", "what", "morning"]
Ans1, Ans2, Ans3, Ans4, Ans5, Ans6 = rand_files
def verifyAns1(self):
if Ans1 == Check1 or Ans2 == Check2 or Ans3 == Check3:
print("You got it!!!")
else:
print("Try again")
当我尝试这样做时,我得到了错误:
NameError: name 'Ans1' is not defined
【问题讨论】:
-
请发送minimal reproducible example,包括完整的错误信息。
-
您似乎忘记了 Ans1-3 之前的
self.,但随后 Check1-3 未定义。
标签: python python-3.x function class variables