说我有一些名单,例如
list1 = [9.2,6.6,3.1,6.9]
list2 = [1,2,3,4]
我想找到list1
的最小值并获取该最小值的索引,并使用它来打印list2
对应该索引的值。
min(list1)
会给我3.1
,索引为2
,现在我想要print list2[2]
。
应该注意这些不是我的实际值,它们要复杂得多。我只需要一般的想法。
答案 0 :(得分:3)
list1, list2 = [9.2,6.6,3.1,6.9], [1,2,3,4]
print list2[min((j,i) for i, j in enumerate(list1))[1]]
# 3
<强>解释强>
min((j,i) for i, j in enumerate(list1))
将给出最小元素及其索引。在这种情况下,它将返回(3.1, 2)
。所以我们只取第二个元素,并从list2
得到与之对应的元素。
另一种方法是
print min(zip(list1, list2))[1]
# 3
答案 1 :(得分:1)
这应该做
print (list2[list1.index(min(list1))])
长篇:
list1 = [9.2,6.6,3.1,6.9]
list2 = [1,2,3,4]
a = min(list1)
b= list1.index(a)
print (list2[b])
答案 2 :(得分:0)
可以使用索引来完成:
list2[list1.index(min(list1))]
输出:
3