Python:从User获取最大数字输入

时间:2017-11-09 14:06:22

标签: python

这是由用户输入的简单最大号码识别的问题。

当试图获得在函数中作为争论传递的最大数字时 - 它有效。但是当动态地从用户获得3个输入数字时,输出实际上并不是更大的数字。请更正。

def maxof2nums(x,y):
  if (x>y):
    return x
  return y 

a= input('Enter value for a=')
b= input('Enter value for b=')
c= input('Enter value for c=')

def maxof3nums(a,b,c):
  return maxof2nums(a,maxof2nums(b,c))
print ("Maximum of 3 numbers=",maxof3nums(a,b,c))

2 个答案:

答案 0 :(得分:2)

如果您想保留代码而不是使用内置的max方法,那么您只需要进行一次轻微的疏忽,即比较input中的字符串而不是数字。将它们投射到int,它应该可以正常工作。

def maxof2nums(x,y):
  if (x>y):
    return x
  return y 

a= int(input('Enter value for a='))
b= int(input('Enter value for b='))
c= int(input('Enter value for c='))

def maxof3nums(a,b,c):
  return maxof2nums(a,maxof2nums(b,c))
print ("Maximum of 3 numbers=",maxof3nums(a,b,c))

答案 1 :(得分:0)

我会做那样的事情:

nb_list = []
nb_list.append(input('Enter value for a='))
nb_list.append(input('Enter value for b='))
nb_list.append(input('Enter value for c='))

print(max(nb_list))