0

假设我在 Python 3.3 中有以下数据:

my_array = 
   [{'man_id': 1, '_id': ObjectId('1234566'), 'type': 'worker', 'value': 11}, 
   {'man_id': 1, '_id': ObjectId('1234577'), 'type': 'worker', 'value': 12}],

   [{'man_id': 2, '_id': ObjectId('1234588'), 'type': 'worker', 'value': 11}, 
    {'man_id': 2, '_id': ObjectId('3243'), 'type': 'worker', 'value': 7},
    {'man_id': 2, '_id': ObjectId('54'), 'type': 'worker', 'value': 99},
    {'man_id': 2, '_id': ObjectId('9879878'), 'type': 'worker', 'value': 135}],
   #.............................
   [{'man_id': 13, '_id': ObjectId('111'), 'type': 'worker', 'value': 1}, 
    {'man_id': 13, '_id': ObjectId('222'), 'type': 'worker', 'value': 2},
    {'man_id': 13, '_id': ObjectId('3333'), 'type': 'worker', 'value': 9}]

有3个数组。如何在每个数组中找到具有最小值的元素?

4

2 回答 2

4
[min(arr, key=lambda s:s['value']) for arr in my_array]
于 2012-11-07T01:39:04.043 回答
1

也许这样的东西适合你:

for arr in my_array:
   minVal = min([row['value'] for row in arr])
   print [row for row in arr if row['value'] == minVal]
于 2012-11-07T01:41:09.977 回答