Kartenspiel

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
UTaker
User
Beiträge: 4
Registriert: Mittwoch 18. Januar 2006, 17:26

Mittwoch 18. Januar 2006, 17:31

Hallo,

ich habe eine Frage. Ich probiere mich seit einigen Wochen an python und versuche im Moment ein kleines Kartenspiel zu programmieren.

Da ich relativ neu an dieser Sprache bin verstehe ich noch recht wenig. Ich will das in meinem Kartenspiel, die Punkte des Computer-Spielers verdeckt werden. Ich will versuchen eine Liste durch eine andere zu ersetzen, nur ich weiss nicht genau wie. Ich bitte um eure Hilfe.

Danke im Voraus
UTaker
mr.hide
User
Beiträge: 108
Registriert: Montag 29. August 2005, 14:02

Mittwoch 18. Januar 2006, 17:52

UTaker hat geschrieben:Hallo,

ich habe eine Frage. Ich probiere mich seit einigen Wochen an python und versuche im Moment ein kleines Kartenspiel zu programmieren.

Da ich relativ neu an dieser Sprache bin verstehe ich noch recht wenig. Ich will das in meinem Kartenspiel, die Punkte des Computer-Spielers verdeckt werden. Ich will versuchen eine Liste durch eine andere zu ersetzen, nur ich weiss nicht genau wie. Ich bitte um eure Hilfe.

Danke im Voraus
UTaker
Welches Gui Toolkit nimmst du her, nimmst du überhaupt eins her?

Poste doch mal den schon vorhandenen Code.

btw:

Code: Alles auswählen

alteliste = ["alt", "huhu"]
print alteliste
neueliste = ["neu", "neuer", "am neueste"]
alteliste = neueliste
print alteliste
:wink:
Grüße
Matthias

- Fluchen befreit von Kummer und Leid -
UTaker
User
Beiträge: 4
Registriert: Mittwoch 18. Januar 2006, 17:26

Mittwoch 18. Januar 2006, 18:22

Ahh jetzt hab ichs danke, hätte aber doch noch eine Frage:

Was muss ich schreiben damit aus einer Liste zufällig ein Wert ausgegeben wird.

also z.B.:
a = [1,2,3,4,5]
und da will ich das er da zufällig einen wert ausgibt.
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

Mittwoch 18. Januar 2006, 18:37

UTaker hat geschrieben:Was muss ich schreiben damit aus einer Liste zufällig ein Wert ausgegeben wird.
Hi UTaker!

Das geht mit der Funktion "shuffle". Die Findest du im Modul "random".

http://python.org/doc/2.4.2/lib/module-random.html

mfg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
UTaker
User
Beiträge: 4
Registriert: Mittwoch 18. Januar 2006, 17:26

Mittwoch 18. Januar 2006, 19:04

Vielen Dank!

Ich bekomme da eine Fehlermeldung wenn ich das eingebe:
shuffle(karten[random])
NameError: name 'shuffle' is not defined

Das Modul random habe ich importiert und dennoch erscheint dieser Fehler.
Ich weiss das meine Fragen für einen sehr dumm erscheinen mögen und ich möchte mich deshalb entschuldigen.

PS: Dieses Forum ist super, ich suche etwa seit 1 Woche ein Forum das mir beim Einstieg helfen kann, und das hier ist mit Abstand das beste ;-)
modelnine
User
Beiträge: 670
Registriert: Sonntag 15. Januar 2006, 18:42
Wohnort: Celle
Kontaktdaten:

Mittwoch 18. Januar 2006, 19:27

random ist ein Modul, welches die Funktion shuffle zur Verfügung stellt. Du greifst also auf die Funktion mittels random.shuffle (genau wie in C/C++ um an ein Datum einer Struktur zu kommen, zum Beispiel) zu.

random.shuffle nimmt einen Parameter, der eine Liste ist, und der inplace (also ohne dass eine Kopie gemacht wird, die alte Ordnung ist zerstört) durcheinandergewürfelt wird.

Also, im Endeffekt machst Du:

Code: Alles auswählen

random.shuffle(karten)
PS: Was den Rest des Spiels angeht: wenn Du nicht ein bißchen genauer Spezifikationen postest oder aber irgendwie sagst was Du genau machen willst kann man Dir ganz schlecht helfen. Eine Frage wie: "Ich will ein Kartenspiel programmieren. Wie mach ich das?" hat nämlich ganz schön viele Antworten, die Dir aber im Forum wahrscheinlich keiner geben wird. ;-)

--- Heiko.
UTaker
User
Beiträge: 4
Registriert: Mittwoch 18. Januar 2006, 17:26

Mittwoch 18. Januar 2006, 19:58

Vielen Dank!

Jetzt funktioniert es :D

Ok ich werde in Zukunft drauf achten :-)

Ich entschuldige mich nochmals für meine vielleicht nicht gleich erkennbare Frage, und danke euch für eure Hilfsbereitschaft.
Antworten