【发布时间】:2022-01-30 03:07:55
【问题描述】:
这是代码块。它通过此代码并打印例如“玩家 1 开始”,但随后它返回到 while 循环并要求我在终端中再次说出正面或反面。我不明白为什么。
def turn_decider():
n = 0
print("Let's flip a coin to see who goes first!")
sleep(1)
while n == 0:
coin_flip_guess = input("Heads or tails player 1? ").lower()
heads_tails = ["heads", "tails"]
if coin_flip_guess not in heads_tails:
print("Say heads or tails!")
elif coin_flip_guess in heads_tails:
break
mini_dic = {1: "heads", 2: "tails"}
headsortails = mini_dic[randint(1, 2)]
if coin_flip_guess == headsortails:
print("Player 1 starts")
person = "Player 1"
elif coin_flip_guess != headsortails:
print("Player 2 starts")
person = "Player 2"
return person
turn_decider()
【问题讨论】:
-
不清楚这两个代码块是如何连接的。
-
它是一个函数。它没有任何属性,但都是正面或反面游戏的功能,最终成为刽子手游戏的一部分。正面或反面就是看谁先走。
-
您能否编辑您的问题以显示定义函数的代码,因为如果整个是函数,则缩进暗示嵌套函数或缩进错误??
-
当然,让我再次打开我的电脑 1 秒
-
好的,@InhirCode 已编辑,我想我也应该提一下,while 循环是检查用户是否输入了正面或反面,而不是随机的。
标签: python while-loop