我已经开始研究这个应该播放Rock,Paper Scissors的程序了。我尝试了不同的模型,这个是最接近的模型。唯一的问题是它有一个语法错误,我不知道如何修复。
#Macchiat0
#3, 6, 2016
#3. RPS is played between the computer and a single user.
#The player is prompted for a throw when 1 corresponds
#to Rock, 2 to Paper, and 3 to Scissors.
#A random number between 1 and 3 is generated for the computer throw.
#The winner is determined based on the rules of Rock Paper and Scissors.
#Program Menu
import random
end_game = True
while end_game == True:
print('1. Enter 1 for Rock ')
print('2. Enter 2 for Paper ')
print('3. Enter 3 for Scissors ')
print('4. Quit')
ans = int(input('What do you want to do?: '))
if ans=="1":
print("\n Enter 1 for Rock: ")
if Player game = 1
print('You win')
if Player game = 2
print('You loose')
if Player game = 3
print('You draw')
if ans =="2":
print("\n Enter 2 for Paper: ")
if Player game = 1
print('You win')
if Player game = 2
print('You loose')
if Player game = 3
print('You draw')
if ans =="3":
print("\n Enter 3 for Scissors: ")
if Player game = 1
print('You win')
if Player game = 2
print('You loose')
if Player game = 3
print('You draw')
elif ans=="4":
print("\n Goodbye")
break
else:
print("\n Not Valid Choice Try Again")
答案 0 :(得分:2)
只是很少有人注意到。真正的答案是在运行脚本时检查输出。它会告诉你什么是错的。
你的问题不是最好的,所以有人可能因为这样做而挂我...但是,天啊,星期五!你走了:
import random
end_game = False
def intToRPS(i):
if i == 1:
return 'Rock'
elif i == 2:
return 'Paper'
elif i == 3:
return 'Scissors'
return ''
while end_game == False:
print('1. Enter 1 for Rock ')
print('2. Enter 2 for Paper ')
print('3. Enter 3 for Scissors ')
print('4. Quit')
ans = int(input('What do you want to do?: '))
comp = random.randint(1, 3)
if ans > 0 and ans < 4:
msg = 'You chose ' + intToRPS(ans) + ' and computer chose ' + intToRPS(comp)
print(msg)
if ans == comp:
print('Draw')
elif ans == 1 and comp == 2: #Rock vs Paper
print('You loose')
elif ans == 1 and comp == 3: #Rock vs Scissors
print('You win')
elif ans == 2 and comp == 1: #Paper vs Rock
print('You win')
elif ans == 2 and comp == 3: #Paper vs Scissors
print('You loose')
elif ans == 3 and comp == 1: #Scissors vs Rock
print('You loose')
elif ans == 3 and comp == 2: #Scissors vs Paper
print('You win')
elif ans=="4":
print("\n Goodbye")
end_game = True
break
else:
print("\n Not Valid Choice Try Again")