Kiểm tra xem tất cả các phần tử của danh sách có nằm trong danh sách khác không Python
Trong Python, danh sách là vùng chứa quan trọng vì chúng lưu trữ tất cả các loại kiểu dữ liệu dưới dạng tập hợp. Nó có thể chứa tới 536.870.912 mục trong hệ thống 32 bit. Đôi khi rất khó để biết liệu danh sách có chứa một mục cụ thể hay không. Python có nhiều cách khác nhau để chúng ta có thể tìm hiểu xem danh sách có chứa mục đó không Show
Mục lục
Danh sách Python chứa - Giới thiệuKiểm tra xem một phần tử có trong danh sách hay không là một trong những thao tác danh sách cơ bản trong Python và có nhiều cách khác nhau để chúng ta có thể kiểm tra điều đó. Trong hướng dẫn này, chúng tôi sẽ đề cập đến một số cách để kiểm tra xem danh sách có chứa phần tử hay không Kiểm tra xem danh sách Python có chứa phần tử hay không bằng toán tử inCách thuận tiện nhất để kiểm tra xem danh sách có chứa phần tử hay không là sử dụng toán tử in. Không sắp xếp danh sách theo bất kỳ thứ tự cụ thể nào, nó trả về TRUE nếu phần tử ở đó, nếu không thì FALSE Ví dụ dưới đây cho thấy cách thực hiện điều này bằng cách sử dụng 'in' trong câu lệnh if-else Đầu vào
đầu ra
Sử dụng vòng lặp for để kiểm tra xem danh sách có chứa phần tử trong Python khôngMột phương pháp đơn giản khác để kiểm tra xem danh sách có chứa phần tử đang lặp qua nó không. Đúng như tên gọi, vòng lặp sẽ khớp từng phần tử của danh sách với phần tử mà chúng ta đang tìm kiếm từng cái một và sẽ chỉ dừng lại nếu có sự trùng khớp hoặc không có sự trùng khớp nào cả. Ví dụ dưới đây minh họa điều này Đầu vào
đầu ra
Sử dụng any() để kiểm tra xem danh sách có chứaHàm any() là một phương pháp tích hợp sẵn để kiểm tra sự trùng khớp trong một chuỗi với sự trùng khớp của từng thành phần danh sách Ví dụ dưới đây cho thấy cách thức hoạt động của hàm any(). Chúng tôi kiểm tra xem có bất kỳ mục phổ biến nào trong chuỗi không, 'Adam sống ở New York' và danh sách được đề cập trong dòng đầu tiên Đầu vào
đầu ra
count() để kiểm tra xem danh sách có chứaMột phương thức tích hợp khác trong Python, count() trả về số lần phần tử được truyền xuất hiện trong danh sách. Nếu phần tử không có trong danh sách thì hàm đếm() sẽ trả về 0. Nếu nó trả về số nguyên dương lớn hơn 0 nghĩa là danh sách chứa phần tử Đầu vào
đầu ra
Bớt tư tưởngTrong hướng dẫn này, chúng ta đã sử dụng các phương thức , vòng lặp for, any() và count() để kiểm tra xem một mục cụ thể có tồn tại trong danh sách hay không. Mọi người có thể tìm hiểu thêm các khái niệm khác liên quan đến Python tại đây Trong quá trình học máy, AI hoặc thậm chí là phát triển web, chúng ta thường gặp sự cố khi cần kiểm tra xem mục cụ thể từ danh sách nhất định có nằm dưới dạng chuỗi con hay khôngTrong bài viết này, chúng ta sẽ khám phá các cách khác nhau để kiểm tra xem một danh sách có chứa một mục cụ thể hay không Danh sách Python chứa5 cách dễ dàng để kiểm tra xem một danh sách có chứa một phần tử trong Python hay không
Phương pháp 1. Sử dụng toán tử “in”Để kiểm tra xem danh sách có chứa phần tử trong Python hay không, hãy sử dụng toán tử “in”. Toán tử “in” kiểm tra xem danh sách có chứa một mục cụ thể hay không. Nó cũng có thể kiểm tra xem phần tử có tồn tại trong danh sách hay không bằng cách sử dụng danh sách. hàm đếm() Danh sách Python là một thùng chứa thiết yếu vì nó lưu trữ các phần tử của tất cả các loại dữ liệu dưới dạng một bộ sưu tập. Toán tử “in” là cách thuận tiện nhất để kiểm tra xem một mục có tồn tại trong danh sách hay không Cách tiếp cận này trả về True nếu một mục tồn tại trong danh sách và Sai nếu một mục không tồn tại. Danh sách không cần phải được sắp xếp để thực hành phương pháp kiểm tra này Kiểm tra nếu mục tồn tại trong danh sáchĐể kiểm tra xem một mục có tồn tại trong danh sách hay không, hãy sử dụng “toán tử in”. Sau đó, sử dụng toán tử “in” với điều kiện if và nếu mục đó tồn tại trong danh sách, thì điều kiện đó sẽ trả về True và nếu không, nó sẽ trả về False cú pháp________số 8_______Giá trị trả vềNó sẽ trả về True nếu một mục tồn tại trong danh sách khác trả về False # app.py listA = ['Stranger Things', 'S Education', 'Game of Thrones'] if 'S Eductation' in listA: print("Yes, 'S Eductation' found in List : ", listA) đầu rapython3 app.py Yes, 'S Eductation' found in List : ['Stranger Things', 'S Education', 'Game of Thrones'] Hãy lấy một ví dụ mà chúng tôi không tìm thấy một mục nào trong danh sách # app.py listA = ['Stranger Things', 'S Education', 'Game of Thrones'] if 'Dark' in listA: print("Yes, 'S Eductation' found in List : ", listA) else: print("Nope, 'Dark' not found in the list") đầu rapython3 app.py Nope, 'Dark' Not found in the list Danh sách không chứa phần tử tối, vì vậy nó trả về Sai và khối khác thực thi Phương pháp 2. Sử dụng Khả năng hiểu danh sáchĐể kiểm tra xem một danh sách có chứa một hay nhiều phần tử trong Python hay không, hãy sử dụng tính năng hiểu danh sách main_list = [11, 21, 19, 18, 46] check_elements = [11, 19, 46] if all([item in main_list for item in check_elements]): print("The list contains all the items") đầu raThe list contains all the items Trong ví dụ này, chúng tôi đã xác định hai danh sách
Sử dụng khả năng hiểu danh sách, chúng tôi đang kiểm tra xem tất cả các phần tử của check_list có trong main_list hay không Trong trường hợp của chúng tôi, Nó trả về True vì tất cả các phần tử đều có mặt. Đó là lý do tại sao nếu điều kiện được thực hiện ví dụ 2# app.py data_string = "The last season of Game of Thrones was not good" listA = ['Stranger Things', 'S Education', 'Game of Thrones'] print("The original string : " + data_string) print("The original list : " + str(listA)) res = [ele for ele in listA if(ele in data_string)] print("Does string contain any list element : " + str(bool(res))) đầu rapython3 app.py The original string : The last season of Game of Thrones was not good The original list : ['Stranger Things', 'S Education', 'Game of Thrones'] Does string contain any list element : True Khả năng hiểu danh sách cung cấp một cách ngắn gọn để tạo danh sách Nó bao gồm các dấu ngoặc chứa biểu thức theo sau bởi một mệnh đề for, sau đó là 0 hoặc nhiều mệnh đề for hoặc if. Các biểu thức có thể là bất kỳ thứ gì, nghĩa là bạn có thể đặt tất cả các đối tượng trong danh sách Kết quả sẽ là danh sách mới do đánh giá một biểu thức trong ngữ cảnh của các mệnh đề for và if theo sau nó Trong ví dụ của chúng tôi, chúng tôi kiểm tra danh sách và cả các mục chuỗi nếu chúng tôi có thể tìm thấy kết quả khớp và trả về true Hãy xem liệu chuỗi có chứa từ không tồn tại trong một mục của danh sách # app.py data_string = "The last season of BoJack Horseman was good" # initializing test list listA = ['Stranger Things', 'S Education', 'Game of Thrones'] # printing original string print("The original string : " + data_string) # printing original list print("The original list : " + str(listA)) # using list comprehension # checking if string contains list element res = [ele for ele in listA if(ele in data_string)] # print result print("Does string contain any list element : " + str(bool(res))) đầu ra# app.py listA = ['Stranger Things', 'S Education', 'Game of Thrones'] if 'S Eductation' in listA: print("Yes, 'S Eductation' found in List : ", listA)0 Phương pháp 3. Sử dụng danh sách. hàm đếm()Để kiểm tra xem mục có tồn tại trong danh sách Python hay không, hãy sử dụng danh sách. phương thức đếm() cú pháp# app.py listA = ['Stranger Things', 'S Education', 'Game of Thrones'] if 'S Eductation' in listA: print("Yes, 'S Eductation' found in List : ", listA)1 Phương thức List count(item) trả về số lần xuất hiện của phần tử đã cho trong danh sách. Nếu nó lớn hơn 0, một mục nhất định tồn tại trong danh sách # app.py listA = ['Stranger Things', 'S Education', 'Game of Thrones'] if 'S Eductation' in listA: print("Yes, 'S Eductation' found in List : ", listA)2 đầu ra# app.py listA = ['Stranger Things', 'S Education', 'Game of Thrones'] if 'S Eductation' in listA: print("Yes, 'S Eductation' found in List : ", listA)3 Phương pháp 4. Sử dụng phương thức any()Hàm any() của Python là cách cổ điển nhất để thực hiện tác vụ này một cách hiệu quả. Hàm any() kiểm tra sự trùng khớp trong một chuỗi với sự trùng khớp của từng thành phần danh sách # app.py listA = ['Stranger Things', 'S Education', 'Game of Thrones'] if 'S Eductation' in listA: print("Yes, 'S Eductation' found in List : ", listA)4 đầu ra# app.py listA = ['Stranger Things', 'S Education', 'Game of Thrones'] if 'S Eductation' in listA: print("Yes, 'S Eductation' found in List : ", listA)5 Từ đầu ra, Game of Thrones tồn tại trong danh sách Phương pháp 5. Sử dụng không trong toán tử nghịch đảo“not in” trong Python là một toán tử tích hợp có giá trị là True nếu nó không tìm thấy một biến trong chuỗi đã chỉ định và False nếu không Để kiểm tra xem danh sách có chứa một mục cụ thể hay không, hãy sử dụng toán tử không nghịch đảo # app.py listA = ['Stranger Things', 'S Education', 'Game of Thrones'] if 'S Eductation' in listA: print("Yes, 'S Eductation' found in List : ", listA)6 đầu ra# app.py listA = ['Stranger Things', 'S Education', 'Game of Thrones'] if 'S Eductation' in listA: print("Yes, 'S Eductation' found in List : ", listA)7 Toán tử trong và không trong Python hoạt động tốt đối với danh sách, bộ dữ liệu, bộ và ký tự (kiểm tra phím) Phương thức all() trong Python để kiểm tra xem danh sách có tồn tại trong danh sách khác khôngTrong chương trình này, bạn sẽ học cách kiểm tra xem danh sách Python có chứa các mục của danh sách khác hay không và hiển thị kết quả bằng hàm print() của python Chúng tôi sẽ sử dụng hai danh sách có giá trị chồng chéo. Một trong số này là cái lớn chứa tất cả các mục của cái thứ hai
# app.py listA = ['Stranger Things', 'S Education', 'Game of Thrones'] if 'S Eductation' in listA: print("Yes, 'S Eductation' found in List : ", listA)8 đầu ra# app.py listA = ['Stranger Things', 'S Education', 'Game of Thrones'] if 'S Eductation' in listA: print("Yes, 'S Eductation' found in List : ", listA)9 Bạn có thể thấy rằng danh sách đầu tiên chứa tất cả các phần tử của danh sách thứ hai. Điều này là do chúng ta đã kiểm tra danh sách đầu tiên bằng phương thức all() Câu hỏi thường gặpLàm cách nào để kiểm tra xem một danh sách có chứa một phần tử cụ thể trong Python không?Sử dụng “toán tử in” để kiểm tra xem một phần tử có tồn tại trong danh sách trong Python không Tôi có thể sử dụng phương thức đếm () để kiểm tra xem danh sách có chứa một mục cụ thể không?Có, trong Python, bạn có thể sử dụng phương thức đếm() để kiểm tra xem một danh sách có chứa một mục cụ thể hay không Làm cách nào để kiểm tra xem một danh sách có chứa tất cả các mục từ một danh sách khác trong Python không?Sử dụng hàm Python all() và biểu thức trình tạo để kiểm tra xem tất cả các mục từ danh sách khác có tồn tại trong danh sách không Làm cách nào để kiểm tra xem một danh sách có chứa bất kỳ mục nào từ một danh sách khác trong Python không?Sử dụng hàm any() và biểu thức trình tạo để kiểm tra xem có bất kỳ mục nào từ danh sách khác tồn tại trong danh sách trong Python không Làm cách nào để kiểm tra xem danh sách có chứa các phần tử trùng lặp trong Python không?Sử dụng hàm len() kết hợp với hàm set() để kiểm tra xem số lượng mục duy nhất trong danh sách có ít hơn số lượng mục trong danh sách trong Python không Làm cách nào để xóa các mục trùng lặp khỏi danh sách trong Python?Sử dụng phương thức set() để tạo một tập hợp các phần tử duy nhất từ danh sách và sau đó chuyển đổi nó trở lại danh sách Phần kết luậnCách tốt nhất và hiệu quả nhất để kiểm tra xem một danh sách có chứa một phần tử hay không là sử dụng “toán tử in” trong Python |