Python 为什么在第一个条件为true时if语句继续
我有一个程序,用户将给出3个输入。比较输入,程序将返回最大的数字。当用户输入的第三个数字大于第二个数字,但第一个数字是最大的数字时,会给出第三个数字是最大的结果。但它应该给出第一个数字是最大的结果Python 为什么在第一个条件为true时if语句继续,python,python-3.x,function,if-statement,return,Python,Python 3.x,Function,If Statement,Return,我有一个程序,用户将给出3个输入。比较输入,程序将返回最大的数字。当用户输入的第三个数字大于第二个数字,但第一个数字是最大的数字时,会给出第三个数字是最大的结果。但它应该给出第一个数字是最大的结果 def max_num(x,y,z): x = input("num_1") y = input("num_2") z = input("num_3") if x > y and x >
def max_num(x,y,z):
x = input("num_1")
y = input("num_2")
z = input("num_3")
if x > y and x > z:
return(x + "is the biggest number")
elif y > x and y > z:
return(y + " is the biggest number")
else:
return(z + " is the biggest number")
print(max_num("num_1", "num_2", "num_3"))
您需要将
str
类型的对象转换为int
:
x = int(input("num_1"))
y = int(input("num_2"))
z = int(input("num_3"))
您甚至可以取消使用和关键字,只需对变量使用多个运算符。最后,您不需要elif
和else
语句;return
调用已经确保只能执行三行中的一行:
def max_num(x,y,z):
x = int(input(x))
y = int(input(y))
z = int(input(z))
if z < x > y:
return f"{x} is the biggest number"
if z < y > x:
return f"{y} is the biggest number"
return f"{z} is the biggest number"
print(max_num("num_1", "num_2", "num_3"))
def max_num(x,y,z):
x=int(输入(x))
y=int(输入(y))
z=int(输入(z))
如果zy:
返回f“{x}是最大的数字”
如果zx:
返回f“{y}是最大的数字”
返回f“{z}是最大的数字”
打印(最大数量(“数量1”、“数量2”、“数量3”))
注意f字符串。如果将x
、y
和z
转换为整数,则无法再使用+
运算符将它们与字符串连接,除非使用str()
包装器。您需要将str
类型的对象转换为int
:
x = int(input("num_1"))
y = int(input("num_2"))
z = int(input("num_3"))
您甚至可以取消使用和关键字,只需对变量使用多个运算符。最后,您不需要elif
和else
语句;return
调用已经确保只能执行三行中的一行:
def max_num(x,y,z):
x = int(input(x))
y = int(input(y))
z = int(input(z))
if z < x > y:
return f"{x} is the biggest number"
if z < y > x:
return f"{y} is the biggest number"
return f"{z} is the biggest number"
print(max_num("num_1", "num_2", "num_3"))
def max_num(x,y,z):
x=int(输入(x))
y=int(输入(y))
z=int(输入(z))
如果zy:
返回f“{x}是最大的数字”
如果zx:
返回f“{y}是最大的数字”
返回f“{z}是最大的数字”
打印(最大数量(“数量1”、“数量2”、“数量3”))
注意f字符串。如果将x
、y
和z
转换为整数,您将无法再使用+
运算符将它们与字符串连接起来,除非您使用str()
包装器。Python具有内置的max
函数
你可以像这样重写你的函数
def max_num(x,y,z):
x = int(input(x))
y = int(input(y))
z = int(input(z))
return f"{max(x, y, z)} is the biggest number"
Python有一个内置的max
函数
你可以像这样重写你的函数
def max_num(x,y,z):
x = int(input(x))
y = int(input(y))
z = int(input(z))
return f"{max(x, y, z)} is the biggest number"
input
读取字符串–字符串“9”
确实比字符串“678”
大,因为它的第一个字符更大。int(input(“Num 1”)
。这就行了。对其他输入重复此操作input
读取字符串–字符串“9”
确实比字符串“678”
大,因为它的第一个字符更大。int(input(“Num 1”)
。这就行了。对其他输入重复此步骤