App下載

python怎么查詢list是否存在并且并返回下標?

猿友 2021-07-30 15:55:13 瀏覽數(shù) (5337)
反饋

對于一個列表,我們有這樣的一個常見業(yè)務(wù)需求:查詢一個元素是否在一個列表里,如果有,就返回這個元素的下標。他的實現(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))

輸出結(jié)果:

3,4

補充:python字符串列表中查找出某個值且對應(yīng)的下標

1、字符串中查找值和對應(yīng)的下標

a = "123yui78y8y67tuy"
print re.findall("y",a)  #查找出在a包含的字符串中所有的y值
print [i for i, x in enumerate(a) if x == 'y']  
#查找出a包含的y值所對應(yīng)的下標——————————————————————結(jié)果————————————————————————
['y', 'y', 'y', 'y'][3, 8, 10, 15]

2、列表中查找值和對應(yīng)的下標

'''
遇到問題沒人解答?小編創(chuàng)建了一個Python學(xué)習(xí)交流QQ群:778463939
尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學(xué)習(xí)教程和PDF電子書!
'''
l = [23,45,4,2,4,2,4]   
result = []    #給定空列表,將結(jié)果值寫入此列表中
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________________________結(jié)果____________________________[2, 4, 6]

補充:python-字符串中查找某個值的index索引值(下標)

問題:如題

解決:

使用find() 方法 或者 index()方法

例子:

例子

以上就是python查詢元素是否在列表中并返回元素下標的全部內(nèi)容,希望能給大家一個參考,也希望大家多多支持W3Cschool


0 人點贊