Computer >> Máy Tính >  >> Lập trình >> Python

Kiểm tra xem phần tử có tồn tại trong danh sách danh sách bằng Python hay không

Danh sách có thể được lồng vào nhau, có nghĩa là các phần tử của danh sách chính là danh sách. Trong bài viết này, chúng ta sẽ xem cách tìm hiểu xem một phần tử đã cho có xuất hiện trong danh sách con hay không, bản thân chúng là các phần tử trong danh sách lớn hơn.

Với bất kỳ

Trước tiên, chúng tôi tìm kiếm xem một phần tử có trong danh sách con hay không và liệu danh sách con có xuất hiện trong danh sách hay không. Nếu điều này đúng, chúng ta có thể nói rằng phần tử có trong danh sách.

Ví dụ

listA = [[-9, -1, 3], [11, -8],[-4,434,0]]
search_element = -8

# Given list
print("Given List :\n", listA)

print("Element to Search: ",search_element)

# Using in
if any(search_element in sublist for sublist in listA):
   print("Present")
else:
   print("Not Present")

Đầu ra

Chạy đoạn mã trên cho chúng ta kết quả sau -

('Given List :\n', [[-9, -1, 3], [11, -8], [-4, 434, 0]])
('Element to Search: ', -8)
Present

Với trong

Trong cách tiếp cận này, chúng tôi thực hiện một tìm kiếm đơn giản bằng cách sử dụng toán tử in. Nếu mục là một phần của danh sách con cũng là một phần của danh sách ngoài, thì chúng tôi chấp nhận phần tử như hiện tại. Chúng tôi thực hiện hai lần kiểm tra, một để kiểm tra sự hiện diện và một kiểm tra khác để kiểm tra sự vắng mặt.

Ví dụ

listA = [[-9, -1, 3], [11, -8],[-4,434,0]]
search_element = -8

# Given list
print("Given List :\n", listA)

print("Element to Search: ",search_element)

# Using in
if search_element in (item for sublist in listA for item in sublist):
   print("Present")
else:
   print("Not Present")

search_element = 13
print("New Element to Search: ",search_element)

# Using in
if search_element in (item for sublist in listA for item in sublist):
   print("Present")
else:
   print("Not Present")

Đầu ra

Chạy đoạn mã trên cho chúng ta kết quả sau -

Given List :
[[-9, -1, 3], [11, -8], [-4, 434, 0]]
Element to Search: -8
Present
New Element to Search: 13
Not Present

Với chuỗi

Với phương thức chuỗi từ mô-đun itertools, chúng ta có thể mở rộng danh sách các danh sách con và tiếp tục kiểm tra sự hiện diện của một phần tử bằng cách sử dụng trong menthod.

Ví dụ

from itertools import chain

listA = [[-9, -1, 3], [11, -8],[-4,434,0]]
search_element = -8

# Given list
print("Given List :\n", listA)

print("Element to Search: ",search_element)

# Using in
if search_element in chain(*listA):
   print("Present")
else:
   print("Not Present")

search_element = 13
print("New Element to Search: ",search_element)

# Using in
if search_element in chain(*listA):
   print("Present")
else:
   print("Not Present")

Đầu ra

Chạy đoạn mã trên cho chúng ta kết quả sau -

Given List :
[[-9, -1, 3], [11, -8], [-4, 434, 0]]
Element to Search: -8
Present
New Element to Search: 13
Not Present