Python程式查詢列表中的元素


Python是一種解釋型、面向物件、高階程式語言,具有動態語義。由Guido Van Rossum於1991年開發。它支援多種程式設計正規化,包括結構化、面向物件和函數語言程式設計。

列表是可變的,這意味著您可以更改列表的值,例如,我們可以新增、刪除、重複元素,並像字串一樣允許索引和切片。

列表可以使用方括號建立。將元素放在方括號[ ]內,用逗號分隔。例如:list1= [“a”,”b”]。還有一種稱為“巢狀列表”的列表型別。它是在列表中的列表。

例如:list1=[“a”,”b”[1,2]”c”]

在列表中搜索元素

當嘗試訪問、操作或從列表中刪除特定專案時,找到元素在列表中的索引或位置非常重要。閱讀更多內容以瞭解如何使用python在列表中搜索元素。

下面提到的示例幫助您瞭解如何輸入元素列表,然後在該列表中搜索特定專案。這有助於快速查詢專案,因為您不再需要逐個手動查詢它們。

這裡,我們給出了一個數字列表,我們必須使用不同的方法從列表中搜索元素。有八種方法可以從列表中刪除子集。

  • 使用in運算子

  • 使用if else語句

  • 使用迴圈

  • 使用any()

  • 使用find()

  • 使用Counter()

  • 使用count()

使用“if else”語句

要使用if-else語句在列表中查詢元素,只需遍歷列表中的每個元素,並檢查它是否等於您要查詢的元素。如果條件滿足,則返回True,否則返回false。

示例

在下面的示例中,我們使用“if else”語句在下面給出的列表中搜索元素。該列表建立了六個元素,變數“i”設定為等於“arun”。現在,if-else語句進入場景,並檢查“i”的值是否存在於列表中。

lst=["kiran","arun","varun","kunnal","tiya","rhea" ]
i="arun"
if i in lst:
   print("exist")
else:
   print("not exist")

輸出

以下是上述程式執行時的輸出:

exist

示例

在下面的示例中,我們使用if-else語句搜尋由變數i設定的元素“arjun”。這裡,列表'lst'包含6個字串。

lst=["kiran","arun","varun","kunnal","tiya","rhea" ]
i="arjun"
if i in lst:
   print("exist")
else:
   print("not exist")

輸出

以下是執行上述程式碼時的輸出:

not exist

這裡,我們有兩個程式,在這兩個程式中,我們都使用了“if else”語句來查詢元素。在第一個程式中,我們搜尋存在於列表中的元素“arun”。因此,結果為“存在”。在第二個程式中,我們必須搜尋列表中不存在的專案“arjun”。因此,輸出為“不存在”。

使用in運算子

in運算子可用於在列表中查詢元素。它檢查給定元素是否在列表中。如果找到該元素,則此方法返回True,否則返回False。這使得搜尋專案比手動檢視列表中的每個專案更快更容易。

“in”運算子確定給定值是否是序列(如字串、陣列、列表或元組)的組成元素。它用於在列表中搜索元素。

示例

這裡,我們有一個程式,我們使用“in”運算子查詢元素。在程式中,我們必須搜尋存在於列表中的元素“kunnal”。因此,結果為“元素存在”。

lst=["kiran","arun","varun","kunnal","tiya","rhea" ]
if ("kunnal"in lst):
   print("Element Exists")

輸出

執行上述程式後,將生成以下輸出。

Element Exists

這裡,我們有一個程式,我們使用“in”運算子查詢元素。在程式中,我們必須搜尋存在於列表中的元素“kunnal”。因此,結果為“元素存在”。

使用for迴圈

for迴圈用於重複執行語句,直到滿足給定條件。當條件變為false時,將執行程式中迴圈後的下一行。

示例

在下面的程式中,我們使用“for迴圈”方法查詢我們正在查詢的元素。在程式中,變數'lst'被賦值為一個名稱列表。for迴圈遍歷列表中的每個元素,並檢查它是否等於“varun”。

lst=["kiran","arun","varun","kunnal","tiya","rhea" ]
for i in lst:
   if(i == "varun"):
      print("Element Exists")

輸出

我們有一個程式,我們使用“for迴圈”查詢元素。在這個程式中,我們必須搜尋存在於列表中的元素“varun”。因此,結果為“元素存在”。

Element Exists

使用any()

any()函式在python中接受一個可迭代物件(列表、字串、字典等)。any()函式返回一個布林值——true,如果;可迭代物件的至少一個元素為true,如果所有元素都為false或可迭代物件為空,則返回false。

示例

在下面的程式中,我們使用“any()”在給定的6個字串列表中查詢元素。

lst=["kiran","arun","varun","kunnal","tiya","rhea" ]
result = any(item in lst for item in lst)
print("Does string contain any list element: " +str(bool(result)))

輸出

執行上述程式後,將生成以下輸出,並且該方法返回True,因為列表中至少包含一個元素。

Does string contain any list element: True

使用find()

find()方法用於查詢給定子字串在一個字串中的位置,如果它在列表中給出。它幫助我們找到子字串第一次出現的索引。如果子字串不存在於給定字串中,則返回-1。

示例

這裡,我們有一個程式,我們在其中使用“find()”查詢元素。

lst=["kiran","arun","varun","kunnal","tiya","rhea" ]
print("Checking if kunnal exists in list")
x=list(map(str,lst))
y="-".join(x)
if y.find("kunnal") !=-1:
   print("Yes, kunnal exists in list")
else:
   print("No, kunnal does not exists in list")

輸出

在這個程式中,我們必須搜尋存在於列表中的元素“kunnal”。因此,結果為“是的,kunnal存在於列表中”,如下所示,執行時。

Checking if kunnal exists in list
Yes, kunnal exists in list

使用Counter()

Counter()是用於計算可雜湊物件的dict子類。它是一個集合,其中元素可以作為字典值儲存。它也可以是負值和零值。例如:

示例

這裡,我們有一個程式,我們使用“counter()”查詢元素

from collections import Counter
lst=["kiran","arun","varun","kunnal","tiya","rhea" ]
frequency = Counter(lst)
if(frequency["kunnal"] > 0):
   print("Yes, kunnal exists in list")
else:
   print("No, kunnal does not exists in list")

輸出

執行上述程式後,將生成以下輸出,程式搜尋存在於列表中的“kunnal”元素。因此,結果如下:

Yes, kunnal exists in list

使用Count()

Count()函式用作內建python列表方法count(),用於檢查傳遞的元素是否存在於列表中。如果傳遞的元素存在於列表中,則count()方法將顯示它在整個列表中出現的次數。如果它是一個非零正數,則表示列表中存在一個元素。

示例

我們有一個程式,我們使用“count()”查詢元素

lst=["kiran","arun","varun","kunnal","tiya","rhea" ]
print("Checking if kunnal exists in list")
exist_count = lst.count("kunnal")
if exist_count> 0:
   print("Yes, kunnal exists in list")
else:
   print("No, kunnal does not exists in list")

輸出

Checking if kunnal exists in list
Yes, kunnal exists in list

結論

在本文中,我們簡要討論了用於從列表中搜索元素的不同方法。

更新於:2023年4月21日

6000+ 次檢視

啟動你的職業生涯

透過完成課程獲得認證

開始學習
廣告