btcq.net
当前位置:首页 >> Python如何从列表中找出所有目标元素的索引 >>

Python如何从列表中找出所有目标元素的索引

def myfind(x,y): return [ a for a in range(len(y)) if y[a] == x]

1、方法一: 利用数组自身的特性 a.index(target), 其中a是目标list,target是需要的下标对应的值.代码如下:可知索引为2.但是如果a中有多个76元素,这种方法仅仅能获取都第一个匹配的value的下标索引.2、方法二:利用enumerate函数.

1、在python语言中,查找列表list中某元素第一次出现的位置,可以使用列表list的index方法,如:>>>a_list = ['a','b','c','c','d','c'] #a_list为列表的名字>>>find='b' #find为查找的值>>>a_list.index(find)1 # 1为 'b'在列表中第一次出现的位置2、找出该元素的在列表中所有出现的位置,可以通过一个简单的循环语句来实现>>>find = 'c'>>>[i for i,v in enumerate(a_list) if v==find] [2, 3, 5]

#用enumerate函数,最好不要用index ,因为列表有相同的元素的时候,index就傻冒了for i,j in enumerate(('a','b','c')): print i,j0 a1 b2 c

#你的问题描述不是很准确啊in [1]: alist=[1,2,3,4]in [2]: n=2 in [3]: alist[n] #是想要这样使用一个变量做索引,out[3]: 3in [4]: s=slice(3)in [5]: alist[s] #或者是这样使用一个可以改变的切片(slice)?out[5]: [1, 2, 3]in [6]: s=slice(2,3) #改变成不同长度切片(slice)in [7]: alist[s]out[7]: [3]不过无论如何,索引总是是可以使用变量的.(防止误会:前面的in和out是ipython命令行输入输出提示.)

使用list的index方法可以找到list中第一次出现该元素的位置>>> l = ['a','b','c','c','d','c']>>> find='b'>>> l.index(find)1找出出现该元素的所有位置可以使用一个简单的表理解来实现>>> find = 'c'>>> [i for i,v in enumerate(l) if v==find][2, 3, 5]

你好:一样的:在后面加后缀即可:如果找6的话:list[3][1][0]

def unique_index(L,e):\x09 return [j for (i,j) in enumerate(L) if i == e]这样就可以了.enumerate是将可迭代的对象与对应的索引一起进行迭代的函数,其实蛮实用的.

for i in name: if type(i)==list: for j in i: print j

print(your_list.index('your_item')) ###your_list为列表名称 your_item为需要修该的数据.print [i for i, x in enumerate(your_list) if x == 'your_item'] your_list为待查list,your_item为具体要查的元素,打印出一个包含所有要查元素下标的列表.【python列

网站首页 | 网站地图
All rights reserved Powered by www.btcq.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com