python设计小游戏“谁先走到17”,游戏规则:(1)有两位参赛者,参赛者每次可选择走1步、两步或者3步;(2)两位参赛者交替走,所走的路程相加等于17为获胜;(3)如果走超过了17则判断为输,另一方直接赢得比赛;(4)程序交互时,保证用户不管输入什么,程序不崩溃;(5)交互时,提示并引导参赛者输入正确内容
时间: 2024-01-17 15:02:44 浏览: 26
好的,我可以帮你写这个游戏。首先,让我们来定义两个参赛者,假设他们名字分别为"player1"和"player2"。
```
player1 = 1
player2 = 2
```
然后,我们需要定义一个函数,让参赛者输入走的步数,如果输入不合法则提示并引导用户重新输入,直到输入合法为止。
```
def get_input(player):
while True:
try:
steps = int(input("请{}输入走的步数(1-3): ".format(player)))
if steps < 1 or steps > 3:
print("输入错误,请重新输入!")
else:
return steps
except ValueError:
print("输入错误,请重新输入!")
```
接下来,我们需要定义一个函数,让参赛者轮流走步,并且判断是否游戏结束。
```
def play_game():
steps_left = 17
current_player = player1
while steps_left > 0:
print("当前剩余步数: ", steps_left)
steps = get_input("{}".format(current_player))
if steps > steps_left:
print("{}输了!".format(current_player))
return
steps_left -= steps
if steps_left == 0:
print("{}赢了!".format(current_player))
return
if current_player == player1:
current_player = player2
else:
current_player = player1
```
最后,调用play_game()函数开始游戏。
```
play_game()
```
好了,这就是游戏的全部代码了,你可以把它保存为一个.py文件并运行。如果你有任何问题,欢迎随时问我。