【发布时间】:2020-03-03 17:10:47
【问题描述】:
如何在函数中编写条件以做出此注释“请提供两个整数或浮点数” 现在我有一个 ValueError,比如“无法转换字符串或浮点数”
def divede():
num1 = float(input("Enter first number:"))
num2 = float(input("Enter second number:"))
return num1, num2
num1, num2 = divede()
while True:
if num2 == []:
print("Please provide two integers or floats")
elif num2 != 0:
print(f"{num1} / {num2} is {num1/num2}")
break
else:
print("Please do not divede by zero")
num1, num2 = divede()
def divede():
num1 = float(input("Enter first number:"))
num2 = float(input("Enter second number:"))
return num1, num2
num1, num2 = divede()
while True:
if num2 == []:
print("Please provide two integers or floats")
elif num2 != 0:
print(f"{num1} / {num2} is {num1/num2}")
break
else:
print("Please do not divede by zero")
num1, num2 = divede()
这里有个问题:
while True:
if num2 == []: # wrong condition
print("Please provide two integers or floats")
感谢所有答案
【问题讨论】:
-
当您从用户那里获取输入时,请使用 try...except 块。因此,当用户输入字符串而不是 int 或 float 时,会引发异常。用 print("请提供两个整数或浮点数") 处理它
-
num2是float和[]是list。默认情况下,python 不知道你想如何解决这个比较 -
因为你在得到
num2时已经转换成float,所以不需要检查它是否为空。如果是,您将在输入本身中获得ValueError。
标签: python python-3.x valueerror