gpt4 book ai didi

python - 在 python 中有没有什么方法可以通过要求用户在循环结束时重复 while 或 for 循环?

转载 作者:行者123 更新时间:2023-11-28 22:40:58 25 4
gpt4 key购买 nike

我刚开始学习 Python,我正在编写一个简单的掷骰子程序,它会询问用户骰子的数量以及骰子的面数。

到目前为止我有这个:

numberOfDice = eval(input("How many dice/die would you like to use? "))
numberOfSides = eval(input("How many sides will each die have? "))

for i in range(1,numberOfDice + 1) :
roll = random.randint(1,numberOfSides)
print(roll)

while True :
replay = input("Would you like to play again? ")
if replay.lower() == "yes" :
numberOfDice = eval(input("How many dice/die would you like to use? "))
numberOfSides = eval(input("How many sides will each die have? "))
for i in range(1,numberOfDice + 1) :
roll = random.randint(1,numberOfSides)
print(roll)
else :
break

它有效,但对我来说似乎效率不高。我想知道是否有办法在第一个 for 循环结束时询问用户是否想再次播放,如果他们说是,则询问他们新值并再次重复 for 循环。有没有办法做这样的事情?

最佳答案

一般的应用是“stay while valid”循环,比如:

replay = True
while replay:
... remainder of code
replay = raw_input("Roll again? (y or n)") == 'y'

请注意,这是一个简单版本,没有错误检查:如果用户输入“y”,程序将继续;任何其他事情都会终止滚灭的美妙世界(永远不要说“死”:-))。

关于python - 在 python 中有没有什么方法可以通过要求用户在循环结束时重复 while 或 for 循环?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33113728/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com