Python Stein-Papier-Schere-Spiel
Erstellen Sie ein Stein-Schere-Papier-Spiel in Python. Beherrschen Sie zufällige Auswahlmöglichkeiten, die Validierung von Benutzereingaben und relationale Regelzuordnungen.
Übersicht
Stein-Schere-Papier ist eine Standard-Spiellogik-Herausforderung. Es erfordert die Überprüfung der Eingaben anhand spezifischer Spielregeln und die Ermittlung eines Gewinners.
Anstatt mühsame, vielschichtige If/Else-Leitern zu schreiben, können wir Regeln mithilfe eines Mapping-Wörterbuchs implementieren. Dies ist hoch skalierbar und ermöglicht eine einfache Regelerweiterung (z. B. Hinzufügen von Lizard und Spock).
Das Skript wählt zufällig aus den Standardoptionen aus, vergleicht sie mit der Auswahl des Spielers und druckt Ergebnisse einschließlich Aktualisierungen der Punktestände aus.
Code- und Ausführungsausgabe
Ein Rock Paper Scissors-Skript, das den Wörterbuchregelabgleich und Zufallsmodule veranschaulicht.
import random
def get_winner(player, computer):
if player == computer:
return "tie"
# Dictionary mapping choice -> what it beats
winning_rules = {
"rock": "scissors",
"paper": "rock",
"scissors": "paper"
}
if winning_rules[player] == computer:
return "player"
return "computer"
def play_game():
choices = ["rock", "paper", "scissors"]
# Mocking player selections
player_moves = ["rock", "paper", "scissors"]
print("Rock, Paper, Scissors Game!")
# Seed generator for deterministic outputs
random.seed(11)
for player_move in player_moves:
computer_move = random.choice(choices)
winner = get_winner(player_move, computer_move)
print(f"\nPlayer chose: {player_move.capitalize()}")
print(f"Computer chose: {computer_move.capitalize()}")
if winner == "tie":
print("Result: It is a Tie!")
elif winner == "player":
print("Result: Player Wins!")
else:
print("Result: Computer Wins!")
play_game()Rock, Paper, Scissors Game!
Player chose: Rock
Computer chose: Scissors
Result: Player Wins!
Player chose: Paper
Computer chose: Paper
Result: It is a Tie!
Player chose: Scissors
Computer chose: Rock
Result: Computer Wins!Schrittweise Umsetzung
- Entscheidende Regelverifikationsmatrizen
- Zufallszahlenauswahl-Engines
- Projekte zur Kontrollflusslogik im Bildungsbereich
Häufig gestellte Fragen
Wie kann ich das auf Stein-Papier-Schere-Eidechse-Spock erweitern?
Erweitern Sie einfach die Wörterbuchzuordnung „winning_rules“, sodass jeder Schlüssel auf eine Liste von Elementen verweist, die er übertrifft. Zum Beispiel „Rock“: [„Schere“, „Eidechse“]“.
Wie lasse ich das Spiel unendlich laufen, bis der Benutzer es beendet?
Binden Sie die Interaktionslogik in eine „while True:“-Schleife ein und unterbrechen Sie die Ausführung, wenn der Spieler „quit“ eingibt.
Verwandte Themen
Führen Sie ein Terminal-Tic-Tac-Toe-Spiel in Python aus. Erfahren Sie mehr über die Verwaltung des Platinenstatus, das Schalten von Schaltvorgängen und die Prüfung von Zustandszuständen.
Implementierung des Python-Hangman-SpielsErstellen Sie ein Hangman-Spiel in Python und führen Sie es aus. Entdecken Sie die Überprüfung von Zeichensätzen, Zähler für verbleibende Versuche und das Ersetzen versteckter Wortfolgen.