如何获取无限参数列表中最高的两个数字



好的,所以首先我知道如果它不在*args列表中,该怎么做,但长话短说,它必须在创建使用*args的函数中。

我正在试着打印列表中最大的两个数字。

def findTwoLargest(*args):
max1 = 0
max1 = max(args)
args.sort()
max2 = 0
max2 = args[-2]
return max1, max2

m1, m2 = findTwoLargest(-2, 30, -4, 9, 1, 6)
print(m1, m2)

argstuple,因此不能在其上使用sort方法。可以使用sorted函数:

def findTwoLargest(*args):
max1 = 0
max1 = max(args)
max2 = 0
max2 = sorted(args)[-2]
return max1, max2

m1, m2 = findTwoLargest(-2, 30, -4, 9, 1, 6)
print(m1, m2)

简短版本:

def findTwoLargest(*args):
max2, max1 = sorted(args)[-2:]
return max1, max2

最新更新