📜  Python – 元组列表中的最小值

📅  最后修改于: 2022-05-13 01:55:07.059000             🧑  作者: Mango

Python – 元组列表中的最小值

很多时候,在处理任何语言的容器时,我们都会遇到不同形式的元组列表,元组本身有时可能比本机数据类型更多,并且可以将列表作为它们的属性。本文讨论了作为元组属性的列表的最小值。让我们讨论可以执行此任务的某些方式。

方法 #1:使用列表理解 + min()
这个特殊问题可以使用列表推导结合 min函数来解决,其中我们使用 min函数找到列表的最小值作为元组属性和列表推导迭代列表。

# Python3 code to demonstrate
# Minimum in tuple list value
# using list comprehension + min()
  
# initializing list
test_list = [('key1', [3, 4, 5]), ('key2', [1, 4, 2]), ('key3', [9, 3])]
  
# printing original list
print("The original list : " + str(test_list))
  
# using list comprehension + min()
# Minimum of list as tuple attribute
res = [(key, min(lst)) for key, lst in test_list]
  
# print result
print("The list tuple attribute minimum is : " + str(res))
输出 :
The original list : [('key1', [3, 4, 5]), ('key2', [1, 4, 2]), ('key3', [9, 3])]
The list tuple attribute minimum is : [('key1', 3), ('key2', 1), ('key3', 3)]

方法 #2:使用 map + lambda + min()
上述问题也可以使用 map函数将逻辑扩展到整个列表来解决,min函数可以执行与上述方法类似的任务。

# Python3 code to demonstrate
# Minimum in tuple list value
# using map() + lambda + min()
  
# initializing list
test_list = [('key1', [3, 4, 5]), ('key2', [1, 4, 2]), ('key3', [9, 3])]
  
# printing original list
print("The original list : " + str(test_list))
  
# using map() + lambda + min()
# Minimum in tuple list value
res = list(map(lambda x: (x[0], min(x[1])), test_list))
  
# print result
print("The list tuple attribute minimum is : " + str(res))
输出 :
The original list : [('key1', [3, 4, 5]), ('key2', [1, 4, 2]), ('key3', [9, 3])]
The list tuple attribute minimum is : [('key1', 3), ('key2', 1), ('key3', 3)]