例如,我有t=[1.0, 1.0, 1.6, 1.125, 1.5]
我想打印具有最小值min(t)
的元素的索引,但是我希望它们从1
开始
因此,对于此示例,我要打印1 2
当我这样做时它正在工作:
for j in range(len(t)):
if t[j]==min(t):
print j+1,`
输出:
1 2
但是它不起作用:
for j in t:
if j==min(t):
a=t.index(j)
print a+1,`
输出:
1 1
那是为什么?
答案 0 :(得分:3)
您的错误在这里
a = t.index(j)
t.index(j)将为您提供该值的第一个索引。
您可以做到这一点:
m = min(t)
cont = 0
for j in t:
if j == m:
print cont+1,
cont += 1
或
for idx, val in enumerate(t):
if val == m:
print idx + 1,