我对编程非常陌生,所以不要介意这些幼稚的代码。我设法设置了一个简单的RPS游戏,然而,对于我的任务,我需要使用一个无限循环来使程序在用户出错时再次请求输入。例如,如果输入'roc‘或'scisor’。我不知道在哪里输入while循环,使它再次请求输入。这是我到目前为止所知道的:
player=input('rock. paper. or scissors?:')
computer_options= ['rock', 'paper', 'scissors']
computer=random.choice(computer_options)
if player==computer:
print('draw')
elif player=='rock':
if computer=='scissors':
print('you win')
else:
print('you lose')
elif player=='paper':
if computer=='scissors':
print('you lose')
else:
print('you win')
while player != computer:
print('you picked the wrong option')
break
发布于 2021-08-15 08:33:42
将while
放在外面,并将break
放在循环内的if
块中:
while True:
player=input('rock. paper. or scissors?:')
computer_options= ['rock', 'paper', 'scissors']
computer=random.choice(computer_options)
if player==computer:
print('draw')
elif player=='rock':
if computer=='scissors':
print('you win')
else:
print('you lose')
elif player=='paper':
if computer=='scissors':
print('you lose')
else:
print('you win')
if player != computer:
print('you picked the wrong option')
break
发布于 2021-08-15 08:40:34
您可以使用以下代码
computer_options= ['rock', 'paper', 'scissors']
computer=random.choice(computer_options)
while True:
player=input('rock. paper. or scissors?:')
if player.lower() == "rock" or player.lower() == "paper" or player.lower() == "scissors":
if player==computer:
print('draw')
elif player=='rock':
if computer=='scissors':
print('you win')
else:
print('you lose')
elif player=='paper':
if computer=='scissors':
print('you lose')
else:
print('you win')
else:
print("you did a mistake, select again between rock, paper or scissors")
continue
我创建了一个无限的while循环。你需要在这个循环中插入变量player
来玩游戏,然后我插入了条件if player.lower() == "rock" or player.lower() == "paper" or player.lower() == "scissors":
,意思是如果你写对了单词,游戏就开始了,否则你会收到消息“你做错了,在石头,布或剪刀之间再次选择”。然后,单词continue
再次启动循环,您必须向变量player
添加一个新值。
如果您需要更多帮助,请告诉我,例如添加退出游戏的可能性或其他任何事情
https://stackoverflow.com/questions/68793360
复制相似问题