2
I’m having a problem in my class in function __init__()
class Lutador():
__nome = "null"
__nacionalidade = 'null'
__idade = 0
__altura = 0.0
__peso = 0.0
__categoria = 'null'
__vitorias = 0
__derrostas = 0
__empates = 0
#Métodos Especias
def __init__(self,no,na,ida,al,pe,vi,de,em):
self.__nome = no
self.__nacionalidade = na
self.__idade = ida
self.__altura = al
self.setPeso(pe)
self.__vitorias = vi
self.__derrotas = de
self.__empates = em
def getNome(self):
return self.__nome
def setNome(self,nome):
self.__nome = nome
def getNacionalidade(self):
return self.__nacionalidade
def setNacionalidade(self,nacionalidade):
self.__nacionalidade = nacionalidade
def getIdade(self):
return self.__idade
def setIdade(self,idade):
self.__idade = idade
def getAltura(self):
return self.__altura
def setAltura(self,altura):
self.__altura = altura
def getPeso(self):
return self.__peso
def setPeso(self,peso):
self.__peso = peso
self.setCategoria()
def getCategoria(self):
return self.__categoria
def setCategoria(self):
if (self.__peso<52.2):
self.__categoria = "Inválido"
elif (self.__peso<=70.3):
self.__categoria = "Leve"
elif (self.__peso<=83.9):
self.__categoria = "Médio"
elif (self.__peso<=120.2):
self.__categoria = "Pesado"
else:
self.__categoria = "Inválido"
def getVitorias(self):
return self.__vitorias
def setVitorias(self,vitorias):
self.__vitorias = vitorias
def getDerrostas(self):
return self.__derrostas
def setDerrostas(self,derrostas):
self.__derrostas = derrostas
def getEmpates(self):
return self.__empates
def setEmpates(self,empates):
self.__empates = empates
#Métodos
def apresentar():
print("-----------------------------------------")
print(f"CHEGOU A HORA! Apresentamos o lutador {self.getNome()}")
print(f"Diretamente de {self.getNacionalidade()}")
print(f"Com {self.getIdade()} anos {self.getAltura()}m")
print(f"Pesando {self.getPeso()} kg")
print(f"{self.getVitorias()} vitorias")
print(f"{self.getDerrotas()} derrotas")
print(f"{self.getEmpates()} empates")
def status():
print(f"{self.getNome()} é um peso {self.getCategoria()}")
print(f"Ganhou {self.getVitorias()} vezes")
print(f"Perdeu {self.getDerrotas()} vezes")
print(f"Empatou {self.getEmpates()} vezes")
def ganharLuta():
self.setVitorias(self.getVitorias() + 1)
def perderLuta():
self.setDerrotas(self.getDerrotas() + 1)
def empatarLuta():
self.setEmpates(self.getEmpates() + 1)
# Programa principal
l = []
l[0] = Lutador("Pretty Boy", "França", 31, 1.75, 68.9, 11, 2, 1)
When I run it gives an error:
Traceback (most recent call last):
File "/home/fbcode/PooPython/07/UltraEmojiCombat.py", line 5, in <module>
l[0] = Lutador("Pretty Boy", "França", 31, 1.75, 68.9, 11, 2, 1)
IndexError: list assignment index out of range
What I must do?
Thank you for your attention