Python 在列表中搜索元素
Python是一种解释性、面向对象的高级编程语言,具有动态语义。由Gudio Van Rossum于1991年开发。它支持多种编程范式,包括结构化、面向对象和函数式编程。
列表是可变的,意味着您可以更改列表的值,例如添加元素、删除重复项,并使用不同的运算符索引和切片列表中的元素,类似于字符串。
可以使用方括号创建列表。通过使用方括号[]将元素放在内,用逗号分隔。例如:list1 = [“a”,” b”]。还有一种名为“嵌套列表”的列表类型。它是一个列表中的列表。
例如:list1=[“a”,” b” [1,2] “c”]
在列表中搜索元素
在尝试访问、操作或删除列表中的特定项时,定位列表中元素的索引或位置是重要的。继续阅读以了解如何使用Python在列表中搜索元素。
下面的示例帮助您了解如何输入一串元素的列表,然后搜索该列表中的特定项目。这有助于快速查找项目,因为您不再需要手动逐个查找。
在这里,我们给出了一系列数字,并且我们必须使用不同的方法从列表中搜索一个元素。有八种方法从列表中删除一个子集。
- 使用in运算符
- 使用if else语句
- 使用循环
- 使用任何()
- 使用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循环用于重复执行一个语句,直到满足给定条件为止。当条件变为假时,程序中循环后面的行被执行。
示例
在下面的程序中,我们使用“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,如果所有元素均为假或者可迭代对象为空,则返回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() 是一个用于计数可哈希对象的字典子类。它是一个可以将元素存储为字典值的集合。它还可以包括负数和零值。例如 –
示例
这里,我们有一个程序,在其中使用了“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 List方法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
结论
在本文中,我们简要讨论了从列表中搜索元素使用的不同方法。