Hallo Leute, ich bin gerade dabei ein Kartenspiel zu programmieren.
Python gibt mir jedoch bei der Zeile karte1=Karte(3,11) die Fehlermeldung "object() takes no parameters". Was muss ich machen, damit mir die die Karte ausgegeben wird???
class Karte:
farbListe = ["Treff", "Pik", "Karo", "Herz"]
rangListe = ["nix", "As", "2", "3", "4", "5", "6", "7",
"8", "9", "10", "Bube", "Dame", "König"]
karte1 = Karte(3, 11)
print(karte1)
Fehlermeldung
- noisefloor
- User
- Beiträge: 3856
- Registriert: Mittwoch 17. Oktober 2007, 21:40
- Wohnort: WW
- Kontaktdaten:
Hallo,
schau' dir noch mal an, wie man Klassen und Python schreibt und welche Sinn Methoden in Klassen haben - besonders, wozu die __init__ Methode gut ist. So, wie das bei dir aussieht, ist es ziemlich falsch bzw. zumindest sehr unvollständig.
Und das nächste Mal deinen Python-Code bitte in einen Codeblocksetzen. Dann ist er besser lesbar.
Gruß, noisefloor
schau' dir noch mal an, wie man Klassen und Python schreibt und welche Sinn Methoden in Klassen haben - besonders, wozu die __init__ Methode gut ist. So, wie das bei dir aussieht, ist es ziemlich falsch bzw. zumindest sehr unvollständig.
Und das nächste Mal deinen Python-Code bitte in einen Codeblocksetzen. Dann ist er besser lesbar.
Gruß, noisefloor
Ich habe es mal in Form gebracht. Teste mal das Snipplet, möglicherweise kommst du hiermit weiter?
Code: Alles auswählen
class Karte:
farbListe = ["Treff", "Pik", "Karo", "Herz"]
rangListe = ["nix", "As", "2", "3", "4", "5", "6", "7", "8", "9", "10", "Bube", "Dame", "König"]
def __init__(self, farbe, rang):
self.farbe = self.farbListe[farbe]
self.rang = self.rangListe[rang]
def __str__(self):
return "{} {}".format(self.farbe, self.rang)
karte1 = Karte(1, 1)
print(karte1)