Python 保存字典中特定列的最大值
我有一个以字典结尾的for循环:Python 保存字典中特定列的最大值,python,Python,我有一个以字典结尾的for循环: print("A: {0}, B: {2}, C: {1}".format(k,score,n_clusters)) A: -11.88, B: 8, C: 0.0548 A: -10.79, B: 76, C: 0.0049 A: -6.167, B: 57, C: -0.0018 A: -2.569, B: 94, C: -0.0062 A: -1.667, B: 2, C: 0.3269 # same value A: -1.356, B: 2, C:
print("A: {0}, B: {2}, C: {1}".format(k,score,n_clusters))
A: -11.88, B: 8, C: 0.0548
A: -10.79, B: 76, C: 0.0049
A: -6.167, B: 57, C: -0.0018
A: -2.569, B: 94, C: -0.0062
A: -1.667, B: 2, C: 0.3269 # same value
A: -1.356, B: 2, C: 0.3269 # same value
我想根据C
的最大值0.3269
保存B
的值一次,即使该值重复了几次
期望输出:
final_score = 2
如果我正确理解你的问题,考虑到以下情况:
lst = [{'A': -11.88, 'B': 8, 'C': 0.0548},
{'A': -10.79, 'B': 76, 'C': 0.0049},
{'A': -6.167, 'B': 57, 'C': -0.0018},
{'A': -2.569, 'B': 94, 'C': -0.0062},
{'A': -1.667, 'B': 2, 'C': 0.3269},
{'A': -1.356, 'B': 2, 'C': 0.3269}]
此代码适用于您:
final_score = max(lst, key=lambda x:x['C'])['B']
如果你没有字典里的值保存在列表中,但要在循环中找到最大值,只需执行以下操作:
final_score = None
max_clusters = float("-inf")
for i in foo_range: # your loop
# do something and retrieve 'score' and 'n_clusters'
if max_clusters < n_clusters:
final_score = score
max_clusters = n_clusters
print(final_score)
final_得分=无
最大值=浮点(“-inf”)
对于foo_范围内的i:#您的循环
#做点什么并检索“分数”和“n_群集”
如果最大簇
如果我正确理解了您的问题,考虑到以下几点:
lst = [{'A': -11.88, 'B': 8, 'C': 0.0548},
{'A': -10.79, 'B': 76, 'C': 0.0049},
{'A': -6.167, 'B': 57, 'C': -0.0018},
{'A': -2.569, 'B': 94, 'C': -0.0062},
{'A': -1.667, 'B': 2, 'C': 0.3269},
{'A': -1.356, 'B': 2, 'C': 0.3269}]
此代码适用于您:
final_score = max(lst, key=lambda x:x['C'])['B']
如果你没有字典里的值保存在列表中,但要在循环中找到最大值,只需执行以下操作:
final_score = None
max_clusters = float("-inf")
for i in foo_range: # your loop
# do something and retrieve 'score' and 'n_clusters'
if max_clusters < n_clusters:
final_score = score
max_clusters = n_clusters
print(final_score)
final_得分=无
最大值=浮点(“-inf”)
对于foo_范围内的i:#您的循环
#做点什么并检索“分数”和“n_群集”
如果最大簇
输入列表是否…?如果您在2分钟内思考此问题,则可能重复:您将能够解决它…输入列表是否…?如果您在2分钟内思考此问题,则可能重复:您将能够解决它…如果我没有“lst”怎么办。我的意思是我没有把价值储存在某个地方。它通过print()
为我提供输出,然后只需计算循环中的最大值即可。考虑到您上次的请求,我更新了我的答案。如果我没有“lst”怎么办。我的意思是我没有把价值储存在某个地方。它通过print()
为我提供输出,然后只需计算循环中的最大值即可。考虑到你上次的请求,我更新了我的答案。