data = ['cat', 'dog', 'None', 'Turtle', 'None']
new_data = []
for item in data:
if item == 'None':
new_data.append(data.index(item))
print new_data
>> [2,2]
如何以[2,4]
的身份访问此商店新数据?这就是我要的。谢谢!
答案 0 :(得分:6)
循环时使用enumerate()
。这将跟踪当前项目及其索引:
[index for index, x in enumerate(data) if x == "None"]
答案 1 :(得分:2)
for idx, item in enumerate(data):
if item == 'None':
new_data.append(idx)
更好的是,只需使用列表理解,如Sven的回答
答案 2 :(得分:1)
尝试:
In [1]: data = ['cat', 'dog', 'None', 'Turtle', 'None']
In [2]: [i for i,val in enumerate(data) if val == 'None']
Out[2]: [2, 4]
答案 3 :(得分:1)
data.index(item)仅返回列表中项目首次出现的位置。 你可以这样做:
for i in range(0,len(data)):
if data[i] == 'None':
new_data.append(i)
这应该为您提供所需的输出
OR
查看Sven的回答