Witajcie przyjaciele. Moze mi ktoś pomoże. Czemu w tym kodzie nie działa mi metoda"nowy_dek"? Jest ona odpowiedzialna za utworzenie wszystkich kombinacji obiektów klasy "Karta" z samej góry. (Czyli po prostu nowego deku) Pisze że FIGURA i RANGA nie są zdefiniowane, mimo że są :/
class Karta(object):
"""Karta"""
figura = ["9","10","J","Q","K","A"]
kolor = ["kier","pik","karo","trefl"]
def __init__(self,figura,kolor):
self.figura = figura
self.kolor = kolor
def __str__(self):
co = self.figura + "_" + self.kolor
return co
class Reka(object):
def __init__(self):
self.lista = []
def __str__(self):
co = ""
if self.lista:
for x in self.lista:
co += str(x) + " " + "- "
else:
print("Reka jest pusta")
return co
def branie(self,karta):
self.karta = karta
self.lista.append(karta)
def przekazywanie(self,karta,komu):
self.karta = karta
self.komu = komu
self.lista.remove(karta)
self.komu.branie(karta)
class Dek(Reka):
def nowy_dek(self):
for x in Karta.kolor:
for x in Karta.figura:
self.branie(Karta(figura,kolor))
talia = Dek()
talia.nowy_dek()
print(talia)
"""To co ponizej nie jest wazne"""
karta1 = Karta(figura = "9", kolor = "kier")
karta2 = Karta(figura = "10", kolor = "pik")
karta3 = Karta(figura = "J", kolor = "karo")
karta4 = Karta(figura = "Q", kolor = "trefl")
karta5 = Karta(figura = "K", kolor = "kier")
karta6 = Karta(figura = "A", kolor = "pik")
moja_reka = Reka()
druga_reka = Reka()
moja_reka.branie(karta1)
moja_reka.branie(karta2)
moja_reka.branie(karta3)
moja_reka.branie(karta4)
moja_reka.branie(karta5)
moja_reka.przekazywanie(karta1,druga_reka)
print(moja_reka)
print(druga_reka)
druga_reka.przekazywanie(karta1,moja_reka)
print("Po ponownym przekazaniu")
print(moja_reka)
print(druga_reka)