有没有更好的方法在
python中执行以下操作:
m = float("inf")
for i in ((1,2,3),(1,3,1),(2,2,3),(0,2,2)):
r = sum(i)
if r < m:
best = i
m = r
print(best)
我试图找到((1,2,3),(1,3,1),(2,2,3),(0,2,2))中的项目,它总和为最小值.
以下是我能想到的最好的:
data = ((1,2,3),(1,3,1),(2,2,3),(0,2,2))
sums = tuple(sum(i) for i in data)
print(data[sums.index(min(sums))])
最佳答案 只需使用内置的
min
data = ((1,2,3),(1,3,1),(2,2,3),(0,2,2))
print(min(data, key=sum))