Python列表对象没有属性位置
我收到此错误:Python列表对象没有属性位置,python,list,attributeerror,Python,List,Attributeerror,我收到此错误:AttributeError:'list'对象没有属性'Pozitie'当我尝试运行代码时,我在一个类中有一个列表,在其中我有另一个类的对象,它需要三个参数:两个元组和一个列表,我试图将列表作为参数传递到我的第一个类中。我对python非常陌生,我已经尝试了我能想到的一切,希望能得到一些帮助,谢谢。 这是我的代码,很抱歉变量名不是英文的: class StareJoc(): def __init__(self): self.Pozitie = [
AttributeError:'list'对象没有属性'Pozitie'
当我尝试运行代码时,我在一个类中有一个列表,在其中我有另一个类的对象,它需要三个参数:两个元组和一个列表,我试图将列表作为参数传递到我的第一个类中。我对python非常陌生,我已经尝试了我能想到的一切,希望能得到一些帮助,谢谢。
这是我的代码,很抱歉变量名不是英文的:
class StareJoc():
def __init__(self):
self.Pozitie = [
["Negru_Tura", "Negru_Cal", "Negru_Nebun", "Negru_Regina", "Negru_Rege", "Negru_Nebun", "Negru_Cal", "Negru_Tura"],
["Negru_Pion", "Negru_Pion", "Negru_Pion", "Negru_Pion", "Negru_Pion", "Negru_Pion", "Negru_Pion","Negru_Pion"],
["--", "--", "--", "--", "--", "--", "--", "--"],
["--", "--", "--", "--", "--", "--", "--", "--"],
["--", "--", "--", "--", "--", "--", "--", "--"],
["--", "--", "--", "--", "--", "--", "--", "--"],
["Alb_Pion", "Alb_Pion", "Alb_Pion", "Alb_Pion", "Alb_Pion", "Alb_Pion", "Alb_Pion", "Alb_Pion"],
["Alb_Tura", "Alb_Cal", "Alb_Nebun", "Alb_Regina", "Alb_Rege", "Alb_Nebun", "Alb_Cal", "Alb_Tura"]]
def Toate_Mutarile_Posibile(self):
mutari = [Mutare((6, 4), (4, 4), self.Pozitie)] #<--- I want to pass in the list "Pozitie" from above,
#but I get the error 'list' object has no attribute 'Pozitie'
for rand in range(len(self.Pozitie)):
for coloana in range(len(self.Pozitie[rand])):
randul = self.Pozitie[rand][coloana][0]
if (randul == 'A' and self.Mutare_Alb) or (randul == 'N' and not self.Mutare_Alb):
piesa = self.Pozitie[rand][coloana]
if piesa.find('Pion') != -1:
self.MutariPion(rand, coloana, mutari)
elif piesa.find('Tura') != -1:
self.MutariTura(rand, coloana, mutari)
return mutari
class Mutare():
def __init__(self, Patrat_Start, Patrat_Destinatie, Pozitie_Curenta): #args: self, tuple, tuple, list
#(some code)
class StareJoc():
定义初始化(自):
self.Pozitie=[
[“Negrou_Tura”、“Negrou_Cal”、“Negrou_Nebun”、“Negrou Regina”、“Negrou_Rege”、“Negrou_Nebun”、“Negrou_Cal”、“Negrou_Tura”],
[“内格罗π介子”、“内格罗π介子”、“内格罗π介子”、“内格罗π介子”、“内格罗π介子”、“内格罗π介子”、“内格罗π介子”],
["--", "--", "--", "--", "--", "--", "--", "--"],
["--", "--", "--", "--", "--", "--", "--", "--"],
["--", "--", "--", "--", "--", "--", "--", "--"],
["--", "--", "--", "--", "--", "--", "--", "--"],
[“Alb_π介子”、“Alb_π介子”、“Alb_π介子”、“Alb_π介子”、“Alb_π介子”、“Alb_π介子”、“Alb_π介子”],
[“Alb_Tura”、“Alb_Cal”、“Alb_Nebun”、“Alb_Regina”、“Alb_Rege”、“Alb_Nebun”、“Alb_Cal”、“Alb_Tura”]]
def Toate_Mutarile_Posibile(自身):
mutari=[Mutare((6,4),(4,4),self.Pozitie)]#首先,试着用英语编写代码(很可能你会发现其他国家对你的回应很低)。
第二,在这一行:如果(randul='A'和self.Mutare\u Alb)或(randul='N'和not self.Mutare\u Alb)
您调用的是self.Mutare\u Alb
,您永远不会在构造函数中分配这个变量。如果您在未发布的代码中定义了此函数或变量,那么我不会收到任何错误,抱怨字段Pozitie
,因此它会在其他地方出错。在您的代码中定义init_uu方法之外的常数:
class StareJoc():
Pozitie = [
["Negru_Tura", "Negru_Cal", "Negru_Nebun", "Negru_Regina", "Negru_Rege", "Negru_Nebun", "Negru_Cal", "Negru_Tura"],
["Negru_Pion", "Negru_Pion", "Negru_Pion", "Negru_Pion", "Negru_Pion", "Negru_Pion", "Negru_Pion","Negru_Pion"],
["--", "--", "--", "--", "--", "--", "--", "--"],
["--", "--", "--", "--", "--", "--", "--", "--"],
["--", "--", "--", "--", "--", "--", "--", "--"],
["--", "--", "--", "--", "--", "--", "--", "--"],
["Alb_Pion", "Alb_Pion", "Alb_Pion", "Alb_Pion", "Alb_Pion", "Alb_Pion", "Alb_Pion", "Alb_Pion"],
["Alb_Tura", "Alb_Cal", "Alb_Nebun", "Alb_Regina", "Alb_Rege", "Alb_Nebun", "Alb_Cal", "Alb_Tura"]]
如果你能提供一份工作报告,让我们自己看到错误,那会有帮助的。在这种情况下,您可以将其全部更改为英语,并删除所有不相关的部分。我冒昧地猜测,您正在执行类似于StareJoc.Toate\u Mutarile\u Posibile(StareJob.pozite)
的操作,这实际上会导致该错误。