spielkarte raten problem

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.
Sirius3
User
Beiträge: 17741
Registriert: Sonntag 21. Oktober 2012, 17:20

@kodela: es ist immer gut, die Ausgabe von der Verarbeitung zu trennen. Das ist bei den konditionalen Eingaben schwierig, aber für die Ausgabe relativ einfach, in dem man eben nur ein print hat. Da der Artikel eindeutig vom Wert abhängt, läßt sich das Problem über ein einfaches Mapping lösen - Du hast das Ass vergessen.
kodela
User
Beiträge: 185
Registriert: Montag 12. Oktober 2015, 21:24
Wohnort: Landsberg am Lech
Kontaktdaten:

Hallo @Sirius3,

ja, ich sehe das auch so, die Ausgabe sollte von der Verarbeitung getrennt werden. Das habe ich in dem Beispiel nicht gemacht. Asche auf mein Haupt. Spaß beiseite, eine Frage: Inwiefern habe ich die Ass vergessen? Sie ist doch berücksichtigt (Zeilen 55 und 56).

MfG, kodela
Benutzeravatar
cofi
Python-Forum Veteran
Beiträge: 4432
Registriert: Sonntag 30. März 2008, 04:16
Wohnort: RGFybXN0YWR0

kodela
User
Beiträge: 185
Registriert: Montag 12. Oktober 2015, 21:24
Wohnort: Landsberg am Lech
Kontaktdaten:

Hallo @cofi, hallo @Sirius3,

Hm - danke für die Hinweise. Rechtschreiben 5, setzen!

MfG, kodela
kodela
User
Beiträge: 185
Registriert: Montag 12. Oktober 2015, 21:24
Wohnort: Landsberg am Lech
Kontaktdaten:

Hallo Sirius3
Sirius3 hat geschrieben:@kodela: ... Du verwendest Python 2, dort ist print ein Statement und keine Funktion, die Klammern gehören also nicht da hin.
Ich muss noch einmal auf Deine Aussage zu meinem Code für das Spielkarte raten Problem zurück kommen.

In der Dokumentation zu Python 2.7 ist print sehr wohl als Funktion aufgeführt. Daneben kann print auch als Anweisung verwendet werden. Die Ergebnisse sind übrigens nicht immer identisch. Oder sehe ich da etwas falsch?

MfG, kodela
BlackJack

@kodela: In Python 2.7 ist `print()` genau dann eine Funktion wenn der in der Dokumentation erwähnte `__future__`-Import in dem Modul verwendet wurde. Und zwar nur dann, nur in dem jeweiligen Modul, und dann auch *nur* eine Funktion und nicht mehr Anweisung. Man hat also entweder das eine oder das andere. Wenn man also den `__future__`-Import nicht im Modul hat, sollten bei ``print`` auch keine Klammern stehen als wenn es eine Funktion wäre, denn dann sind es nur unnötige Klammern um einen Wert/Ausdruck, oder aber man bekommt eine Ausgabe die so nicht gemeint war, wenn nämlich die Klammern dafür sorgen das Kommata ein Tupel erstellen und nicht mehrere Ausdrücke trennt.
kodela
User
Beiträge: 185
Registriert: Montag 12. Oktober 2015, 21:24
Wohnort: Landsberg am Lech
Kontaktdaten:

Hallo @BlackJack,

danke für die Aufklärung. Alles klar!

MfG, kodela
Antworten