BlackJack
Če želimo ustvariti točno določeno igro s kartami, potem uporabimo starševski razred Komplet
, podedujemo njegove metode in ga razširimo tako, da dodamo nove metode, ki so specifične za izbrano igro s kartami. Kot primer, bomo napisali kodo, s katero bomo simulirali igro Black Jack.
Ustvarimo razred BlackJack
, ki bo metode podedoval iz starševskega razreda Komplet
. Ker zaenkrat ne bomo dodali nobenih razširitev, saj starševski razred že vsebuje vse metode, ki jih potrebujemo, dodamo pass
v telo kode razreda:
class BlackJack(Komplet): pass
Cilj igre Black Jack je doseči seštevek kart 21 ali se mu čimbolj približati, vendar ga ne preseči. Polne igralne karte (fant, dama, kralj) predstavljajo vrednost 10, as predstavlja vrednost 1 ali 11 (kar igralcu v igri bolj odgovarja), druge karte imajo vrednost številk, ki jih predstavljajo.
Delivec nato podeli vsakemu igralcu dve karti, sebi pa dve karti, od katerih je samo ena vidna. Igralci se nato odločajo, ali bodo še kupovali karte (uporabijo izraz Hit), ali se bodo zadovoljili s seštevkom prvih dveh kart (uporabijo izraz Stand). Naslednji korak igre je, da delivec še sebi podeli naslednjo karto.
Igra je zaključena, ko delivec doseže seštevek najmanj 17, ali ko preseže seštevek 21. Sledi obračun posamezne igre. Če igralec že med svojo igro preseže 21 točk, stavo takoj izgubi. Če seštevek 21 preseže delivec, mora izplačati stave vsem igralcem, ki so ostali v igri. Kadar tako igralec, kot delivec ostaneta v igri, se njuna seštevka kart primerjata in stavo dobi tisti, ki je bližji seštevku 21. Ob enakih seštevkih zmaga delivec. Glavni dobitek je kombinacija asa in polne karte. To je vrednost 21, imenuje pa se Black Jack.