猿问

如何在同一个列表中使用 min() 和 max()

所以我是编码新手,我试图在同一个列表中获得最大和最小数字。

我尝试使用max(min(max + min

print(max + min(18, 20, 35, 285, 285.01, 300-1))

我怎样才能把 18 和 300-1 放在一起?我有TypeError: unsupported operand type(s) for +: 'builtin_function_or_method' and 'int'


UYOU
浏览 176回答 2
2回答

凤凰求蛊

你可以打电话max()和min()在名单上l = [18,20,35,285,285.01,300-1]print(min(l), max(l))print(min(l) + max(l))(18, 299)317

饮歌长啸

您必须单独运行每个操作,例如:myvalues = 18, 20, 35, 285, 285.01, 300-1print(max(myvalues) + min(myvalues))唯一的另一种方法是对其进行排序并取出第一个和最后一个元素,例如:minval, *_, maxval = sorted([18, 20, 35, 285, 285.01, 300-1])print(maxval + minval)但鉴于排序是O(n log n)可行的, wheremin和maxare O(n),通常最好只进行两次传递,一次用于min,一次用于max。
随时随地看视频慕课网APP

相关分类

Python
我要回答