我创建了一个程序,您可以在其中掷骰子或查找数字的平方根。这些选项可以用数字1和2切换。但是,每当我想找到一个数字的平方根时,它就会给出我想要的数字的平方根和2的平方根。如何解决这个问题?代码如下: 请忽略缩进错误,因为Stack Overflow让我很难把代码放进去。
from random import randint
import math
UserInput = int(input("To Roll A Dice, Type One. To Find The Square Root Of A
Number, Press 2 "))
while True:
if UserInput == 1:
print (randint(1, 6))
if UserInput == 2:
print(math.sqrt(int(input("What Number Would You Like To Find The Square Root Of? "))))
当我想找到16的平方根时,这是我的结果:
To Roll A Dice, Type One. To Find The Square Root Of A Number, Press 2 2
What Number Would You Like To Find The Square Root Of? 16
4.0
1.4142135623730951
答案 0 :(得分:2)
您的代码的主要问题是评论中所述的不良缩进。另外,我认为不需要无限循环,因为它会反复滚动并重复平方根,除非这是你的目标。 这是我的代码:
from random import randint
import math
UserInput = int(input("To Roll A Dice, Type One. To Find The Square Root Of A Number, Press 2 "))
if UserInput == 1:
print (randint(1, 6))
elif UserInput == 2:
print(math.sqrt(int(input("What Number Would You Like To Find The Square Root Of? "))))
除非您想反复询问用户输入,否则将while循环置于创建User Input变量之上。
编辑:如果你真的想要重新使用,那么使用def
使这成为一个函数并拥有以下代码
while True:
play = input("Do you want to play? y/n")
if play == "y":
function_name()
elif play == "n":
break