感谢您为我查看此内容。 python新手。 所以,我有一个数组,time = [1,2,3,4,5,6,7,8 ....]我需要第一个元素的索引,其中时间> 7。 到目前为止我所拥有的: time.index(np.where(time> 7)) 得到错误: AttributeError:'numpy.ndarray'对象没有属性'index' 到目前为止,这在黑暗中很热。 请帮忙! 谢谢!
答案 0 :(得分:1)
如果你使用numpy,你可以这样做:
time_l=[1,2,3,4,5,6,7,8]
import numpy as np
a = np.array(time_l)
print(np.where(a > 7))
# Prints (array([7]),)
不需要使用numpy在列表中使用索引。
您还可以使用列表理解:
print([i for i,v in enumerate(time_l) if v > 7])
# gives: [7]
替代方式,使用生成器:
time_l=[1,2,3,4,5,6,7,8,9,10]
print(next(i for i,v in enumerate(time_l) if v > 7))
# prints 7
更直观的方式,使用for循环和索引:
for v in time_l:
if v > 7:
print(time_l.index(v))
break