【发布时间】:2019-11-13 04:50:14
【问题描述】:
我试图从一个列表中找到 3 个最低的数字,并使用这些索引从另一个列表中找到相应的值。 这是我尝试过的一个例子
a = [12, 83, 22, 30, 57, 32, 88, 46, 20, 26, 78, 65, 45, 56, 74]
b = ['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o']
lowest = lowest2 = lowest3 = max(a)
indexes = []
for i in range(0,len(a)):
if a[i] < lowest :
lowest = a[i]
print(b[i])
elif a[i] < lowest2 and a[i] > lowest:
lowest2 = a[i]
print(b[i])
elif a[i] < lowest3 and a[i] > lowest2:
lowest3 = a[i]
print(b[i])
print(lowest,lowest2,lowest3)
我只能使用 anaconda 库,不,这不是分配,这是我一直在尝试做的程序的一小部分。
输出:一个 b C d 一世 j 12 20 26
【问题讨论】:
-
你试过的代码的输出是什么?你收到任何错误信息吗?提供这个有问题的
-
您的列表是否总是包含唯一值?
-
是的。这只是我做的一个例子。它通常是信号中存在的频率,其他列表是对应的音调。
-
我猜你想要 12、20 和 22。对应的元素是 a、i、c。
-
是的!这正是我正在寻找的。span>
标签: python python-3.x list