为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

UYOU 2021-12-29 18:26:58
所以我是编码新手,我试图在同一个列表中获得最大和最小数字。我尝试使用max(min(和max + minprint(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'
查看完整描述

2 回答

?
凤凰求蛊

TA贡献1825条经验 获得超4个赞

你可以打电话max()和min()在名单上


l = [18,20,35,285,285.01,300-1]


print(min(l), max(l))

print(min(l) + max(l))

(18, 299)


317


查看完整回答
反对 回复 2021-12-29
?
饮歌长啸

TA贡献1951条经验 获得超3个赞

您必须单独运行每个操作,例如:


myvalues = 18, 20, 35, 285, 285.01, 300-1

print(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。


查看完整回答
反对 回复 2021-12-29
  • 2 回答
  • 0 关注
  • 137 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信