Ich benutze Python. Aktuell neu dazu. Ich erstelle ein Stein Papier Schere Spiel mit Win Counter. Ich habe online eine Lösung gefunden, aber es funktioniert nicht für mich. Ich bin kurz davor, es zu beenden. Aber es gibt nur einen Fehler. Ich kann den Zähler nicht funktionieren lassen. Es zeigt keinen Gewinn Zählen am Ende des ProgrammsRock, Papier, Schere Tally Zähler Python
from random import randint
print ("Rock ,Paper,Scissors game.")
#Function to get computer input
def generate():
comlist = ["rock","paper","scissors"]
comans = comlist[randint(-1,2)]
if comans == "rock":
print ("Computer choose rock.")
elif comans == "paper" :
print ("Computer choose paper.")
elif comans == "scissors":
print ("Computer choose scissors.")
return comans
#Function to get user input
def user():
userchoice = input ("Choose rock, paper , or scissors.")
while userchoice != 'rock' and userchoice != 'paper' and userchoice != 'scissors':
print ("Invalid input. Please enter again")
userchoice = input ("Choose rock, paper , or scissors.")
if userchoice == "rock":
print ("You choose rock.")
choice = userchoice
elif userchoice == "paper" :
print ("You choose paper.")
choice = userchoice
else:
userchoice == "scissors"
print ("You choose scissors.")
choice = userchoice
return choice
#Function to determine winner
def result(comans ,choice):
global result_set
if choice == comans:
print ("Tie")
elif choice == "rock":
if computer == "paper":
print ("You lose")
else :
print("You win")
result_set ='win'
elif choice == "paper":
if computer == "scissors":
print("You lose")
else:
print("You win")
result_set ='win'
elif choice == "scissors":
if computer == "rock":
print("You lose")
else:
print("You win")
result_set ='win'
#Function to get win taly
def wincounter (result,guess,computer):
if result_set == 'win':
win += 1
else:
pass
print (win)
#Main program
counter = 0
win = 0
diffulty = input(' Please enter diffulty.("1" for easy , "2" for medium, "3" for hard)')
while diffulty != '1' and diffulty != '2' and diffulty != '3':
print ('Invalid input')
diffulty = input(' Please enter diffulty.("1" for easy , "2" for medium, "3" for hard)')
if diffulty == '1':
print ("You have choose easy")
counter = 1
guess = user()
computer = generate()
result (computer, guess)
while counter < 3:
guess = user()
computer = generate()
result (computer, guess)
counter +=1
if diffulty == '2':
print ("You have choose medium")
counter = 1
guess = user()
computer = generate()
result (computer, guess)
while counter < 5:
guess = user()
computer = generate()
result (computer, guess)
counter +=1
if diffulty == '3':
print ("You have choose hard")
counter = 1
guess = user()
computer = generate()
result (computer, guess)
while counter < 10:
guess = user()
computer = generate()
result (computer, guess)
counter +=1
Hier ist mein Code. Es ist etwas unordentlich. Sorry dafür seit als ich noch neu in Python bin. Danke für die Hilfe. Nach dem Ausführen.
Choose rock, paper , or scissors.rock
You choose rock.
Computer choose scissors.
You win
Choose rock, paper , or scissors.rock
You choose rock.
Computer choose rock.
Tie
Choose rock, paper , or scissors.rock
You choose rock.
Computer choose rock.
Tie
Es wird angenommen, die Ergebnisse nach dem Ende der letzten Runde zu zeigen.
Was ist das Problem jetzt? Was funktioniert nicht? – Mehari
Bitte zuerst erklären, was "nicht funktioniert" ist: Absturz? falsche Ergebnisse? ... Dann bitte nur zeigen (oder zumindest den relevanten Teil hervorheben), niemand liest wirklich gerne 100er Zeilen Code. Siehe [fragen] und [mcve]. – Julien
Sie verwenden die Parameter nicht für Ihre Wincounter-Funktion – samgak