Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/284.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Class属性显然在那里,但python找不到它_Python_Class_Object_Attributeerror - Fatal编程技术网

Class属性显然在那里,但python找不到它

Class属性显然在那里,但python找不到它,python,class,object,attributeerror,Python,Class,Object,Attributeerror,为什么我会得到这个属性错误 class GameState(object): """Keeps track game state variables""" def __init__(self, convo_flag=0, characters_talked_to=0, convo_log=(None)): self.convo_flag = convo_flag self.characters_talked_to = characters_talked_to se

为什么我会得到这个属性错误

class GameState(object):
  """Keeps track game state variables"""
  def __init__(self, convo_flag=0, characters_talked_to=0, convo_log=(None)):
    self.convo_flag = convo_flag
    self.characters_talked_to = characters_talked_to
    self.convo_log = convo_log

def welcome_screen():
  global LAST_NAME
  global BULLY
  global DAY

  raw_input(messages.WELCOME)

  LAST_NAME = raw_input(messages.LAST_NAME)
  BULLY = characters.random_character(cclass='Camper', gender='m')

  print 'Your name is Pickett %s' % LAST_NAME

  messages.print_messages([
    messages.EXPLANATION,
    messages.BUS_LOADING,
    messages.CRACK,
    messages.GAME_KID_LOST])

  return week_one(DAY)

def week_one(day):
  if day == 1:
    messages.print_messages(messages.WEEK_ONE[day])
    campers = characters.random_character_sample(cclass='Camper', count=5)
    people_outside_theater = campers + [characters.TROID]

    while GameState.characters_talked_to != 3:
我不明白为什么我会得到这个属性错误,我完全在那个构造函数中声明了它,如果我需要在构造函数之外声明它,我会缺少什么吗?这真是伤了我的脑筋

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "pickett.py", line 44, in welcome_screen
    return week_one(DAY)
  File "pickett.py", line 52, in week_one
    while GameState.characters_talked_to != 3:
AttributeError: type object 'GameState' has no attribute 'characters_talked_to'
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
欢迎屏幕中第44行的文件“pickett.py”
返回第一周(天)
第一周第52行“pickett.py”文件
当GameState.characters\u与您交谈时!=三:
AttributeError:类型对象“GameState”没有属性“characters\u-to”

您需要创建一个实例,以便像这样使用您的类:

gameState = GameState()
while gameState.characters_talked_to != 3:

在您的代码中,您试图访问未在类中定义的内容

您需要创建一个实例,以便像这样使用您的类:

gameState = GameState()
while gameState.characters_talked_to != 3:

在您的代码中,您试图访问未在类中定义的内容

您的
\uuuuu init\uuuuuuu
函数在
self
上设置
字符
,这是
游戏状态
的一个实例

您没有将其设置为
游戏状态
,这是一个类


您也没有创建任何
游戏状态的实例,因此在任何情况下
\uuuuu init\uuuu
都不会被您的程序调用。

您的
\uuuu init\uuuuu
函数集
字符在
self
上与之对话,这是
游戏状态的一个实例

您没有将其设置为
游戏状态
,这是一个类


您也没有创建任何
游戏状态的实例
,因此在任何情况下,您的程序都不会调用
\uuuu init\uuuu

我做了这些更改,但仍然会得到完全相同的错误!该游戏状态没有名为yada yada yadat的属性这是我在编辑时的错误,我做了一个新的属性来反映我代码的当前状态。它可以工作!糟糕的是,我忘了我需要重新加载模块,仍然是一个python noob,非常感谢大家!我做了这些更改,但仍然得到完全相同的错误!该游戏状态没有名为yada yada yadat的属性这是我在编辑时的错误,我做了一个新的属性来反映我代码的当前状态。它可以工作!糟糕的是,我忘了我需要重新加载模块,仍然是一个python noob,非常感谢大家!如果它“真的”在那里,那么Python就会找到它。注意断言,练习用更中性的语气写标题/问题。(同样,“类属性”和“[对象]数据属性”是不同的…)如果它“真的”在那里,那么Python会找到它。注意断言,练习用更中性的语气写标题/问题。(同样,“类属性”和“[对象]数据属性”是不同的…)