對于一個列表,我們有這樣的一個常見業(yè)務需求:查詢一個元素是否在一個列表里,如果有,就返回這個元素的下標。他的實現(xiàn)方式也比較簡單,python查詢元素是否在列表中可以遍歷列表逐一比對,得到這個元素后,使用python返回元素下標的方法就可以獲得這個元素的下標,從而實現(xiàn)這個需求,那么接下來我們就來看看怎么實現(xiàn)吧。
看代碼吧~
def find_all_index(arr, item):
return [i for i, a in enumerate(arr) if a == item]
if __name__ == '__main__':
print(find_all_index([1,2,3,4,4,3,89],4))
輸出結果:
3,4
補充:python字符串列表中查找出某個值且對應的下標
1、字符串中查找值和對應的下標
a = "123yui78y8y67tuy"
print re.findall("y",a) #查找出在a包含的字符串中所有的y值
print [i for i, x in enumerate(a) if x == 'y']
#查找出a包含的y值所對應的下標——————————————————————結果————————————————————————
['y', 'y', 'y', 'y'][3, 8, 10, 15]
2、列表中查找值和對應的下標
'''
遇到問題沒人解答?小編創(chuàng)建了一個Python學習交流QQ群:778463939
尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學習教程和PDF電子書!
'''
l = [23,45,4,2,4,2,4]
result = [] #給定空列表,將結果值寫入此列表中
for i in range(l.count(4)):
if i==0:
pos=l.index(4)
else:
pos=l.index(4,pos+1)
result.append(pos)
print result________________________結果____________________________[2, 4, 6]
補充:python-字符串中查找某個值的index索引值(下標)
問題:如題
解決:
使用find() 方法 或者 index()方法
例子:
以上就是python查詢元素是否在列表中并返回元素下標的全部內(nèi)容,希望能給大家一個參考,也希望大家多多支持W3Cschool。