Python in tất cả các phần tử chung của hai danh sách

Lớp nhận một đối số tùy chọn có thể lặp lại và trả về một đối tượng set mới với các phần tử được lấy từ đối tượng có thể lặp lại

Đặt các đối tượng lưu trữ một bộ sưu tập các phần tử duy nhất không có thứ tự và triển khai phương thức symmetric_difference[]

Phương thức symmetric_difference trả về tất cả các phần tử nằm trong chính xác một trong các đối tượng set

Bước cuối cùng là sử dụng lớp list[] để chuyển đổi đối tượng set thành một danh sách

Bạn cũng có thể sử dụng ký hiệu dấu mũ set1 để xóa các phần tử chung khỏi hai danh sách

Dấu mũ set1 là cách viết tắt của phương thức symmetric_difference, nhưng các giá trị ở cả hai phía của toán tử phải là đối tượng set

Nếu bạn cần lấy các phần tử nằm trong set5 nhưng không nằm trong set6, hãy sử dụng phương thức set7

Các đối tượng của tập hợp có một phương thức trả về một set mới với các phần tử trong set không có trong iterable được cung cấp

Nói cách khác, symmetric_difference[]0 trả về một set mới chứa các mục trong set5 không có trong set6

Ví dụ tìm các phần tử phổ biến trong ba danh sách, nhưng bạn có thể sử dụng phương pháp này với bao nhiêu danh sách nếu cần

Chúng tôi đã sử dụng lớp set[] để chuyển đổi danh sách đầu tiên thành một set

Lớp nhận một đối số tùy chọn có thể lặp lại và trả về một đối tượng set mới với các phần tử được lấy từ đối tượng có thể lặp lại

Đặt các đối tượng lưu trữ một bộ sưu tập các phần tử duy nhất không có thứ tự và triển khai phương thức intersection[]

Phương thức trả về một set mới với các phần tử chung cho các đối tượng được cung cấp

Bạn có thể sử dụng hàm len[] nếu cần lấy số phần tử chung giữa các danh sách

Ngoài ra, bạn có thể sử dụng cách hiểu danh sách

Tìm các giá trị chung trong nhiều danh sách bằng cách sử dụng khả năng hiểu danh sách

Để tìm các phần tử phổ biến trong nhiều danh sách

  1. Sử dụng khả năng hiểu danh sách để lặp lại danh sách đầu tiên
  2. Kiểm tra xem mỗi phần tử có mặt trong các danh sách khác không và trả về kết quả
  3. Danh sách mới sẽ chỉ chứa các phần tử chung giữa các danh sách

Chúng tôi đã sử dụng cách hiểu danh sách để lặp lại danh sách đầu tiên

Khả năng hiểu danh sách được sử dụng để thực hiện một số thao tác cho mọi phần tử hoặc chọn một tập hợp con các phần tử đáp ứng một điều kiện

Trên mỗi lần lặp, chúng tôi kiểm tra xem mục hiện tại có trong hai danh sách khác hay không và trả về kết quả

Danh sách mới chỉ chứa các phần tử có trong cả ba danh sách

Các bài kiểm tra tư cách thành viên. Ví dụ: intersection[]0 ước tính thành intersection[]1 nếu intersection[]2 là thành viên của intersection[]3, nếu không, nó ước tính thành intersection[]4

Ngoài ra, bạn có thể sử dụng vòng lặp intersection[]5 đơn giản

Tìm các giá trị chung trong nhiều danh sách bằng vòng lặp for

Để tìm các phần tử phổ biến trong nhiều danh sách

  1. Sử dụng vòng lặp intersection[]5 để lặp lại danh sách đầu tiên
  2. Kiểm tra xem mỗi mục có nằm trong các danh sách khác không
  3. Nối các mục phù hợp vào danh sách mới

Chúng tôi đã sử dụng vòng lặp intersection[]5 để lặp lại danh sách đầu tiên

Trên mỗi lần lặp, chúng tôi sử dụng toán tử intersection[]8 để kiểm tra xem mục hiện tại có nằm trong hai danh sách kia không

Nếu điều kiện được đáp ứng, chúng tôi sẽ thêm giá trị vào danh sách mới

Phương thức thêm một mục vào cuối danh sách

Phương thức trả về intersection[]9 vì nó thay đổi danh sách ban đầu

Bạn chọn cách tiếp cận nào là vấn đề sở thích cá nhân. Tôi sẽ sử dụng cách hiểu danh sách vì tôi thấy chúng khá trực tiếp và dễ đọc

Cho hai danh sách, in ra phần tử chung của hai danh sách

Ví dụ -

Input : L1 = [5, 6, 7, 8, 9] 
        L2 = [5, 13, 34, 22, 90]
Output : {5}

Giải trình

Các phần tử chung của cả hai danh sách là 5

thuật toán

Step1 : create two user input lists.
Step2 : Convert the lists to sets and then print set1&set2.
Step3 : set1 and set2 returns the common elements set, where set1 is the list1 and set2 is the list2.

Mã ví dụ

# Python program to find the common elements  
# in two lists 
def commonelemnets[a, b]: 
   seta = set[a] 
   setb = set[b] 
   if [seta & setb]: 
      print["Common Element ::>",seta & setb] 
   else: 
      print["No common elements"]  
              
A=list[]
n=int[input["Enter the size of the First List ::"]]
print["Enter the Element of First List ::"]
for i in range[int[n]]:
   k=int[input[""]]
   A.append[k] 
B=list[]
n=int[input["Enter the size of the Second List ::"]]
print["Enter the Element of Second List ::"]
for i in range[int[n]]:
   k=int[input[""]]
   B.append[k] 
commonelemnets[A,B]

đầu ra

Enter the size of the First List :: 4
Enter the Element of First List ::
4
5
6
7
Enter the size of the Second List :: 4
Enter the Element of Second List ::
1
2
3
4
Common Element ::> {4}
Enter the size of the First List :: 4
Enter the Element of First List ::
1
2
3
4
Enter the size of the Second List :: 4
Enter the Element of Second List ::
5
6
7
8
No common elements

Chủ Đề