我正在编写一个代码,用户需要输入float作为输入,以便计算循环的压力。我把事情当作字符串和非负输入来处理,但不知道如何让我的用户输入浮点数(2.5、1.6等),而不会出现错误或陷入循环。这是我的密码:
psrc = input("Enter starting pressure for source: ") # Druck Quelle [Pa] / pressure source
while psrc.isnumeric() == False or float(psrc) <=0 or float(psrc) >=3:
print ("Starting pressure must be numeric value in range 0-3. Please enter valid pressure value.")
psrc = input("Enter new pressure: ")
编辑:算出了。 谢谢大家的想法。通过添加一个函数来解决这个问题,该函数检查值并将布尔值返回到循环,然后继续计算。 功能:
def is_float(n):
try:
float(n)
return True
except:
return False
新循环定义:
psrc = input("Enter starting pressure for source: ") # Druck Quelle [Pa] / pressure source
while is_float(psrc) != True or float(psrc) <=0 or float(psrc) >=3:
print ("Starting pressure must be numeric value in range 0-3. Please enter valid pressure value.")
psrc = input("Enter new pressure: ")
看看这个
str(int(psrc)).isnumeric()
我想会帮助你们解决这个问题我可以提供两种方式: 1.
相关问题 更多 >
编程相关推荐