Tôi có hai danh sách mỗi danh sách chứa danh sách hai phần tử.
a = [['Adolf', '10'], ['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15']]
b = [['Rudolf', '40'], ['Adolf', '50']]
Tôi muốn có được 'sự khác biệt đối xứng' của hai danh sách, dựa trên các yếu tố đầu tiên 'khóa' của những người phụ.
'Sự khác biệt đối xứng' này sẽ như sau:
c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
Vì vậy, các mục 'Adolf' đã bị xóa vì chúng tồn tại trong cả hai danh sách, trong khi các mục khác, bao gồm cả mục 'Rudolf', đã được đưa vào vì chúng tồn tại không trong cả hai danh sách.
Một ví dụ khác sẽ là như sau:
a = [['Adolf', '10'], ['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15']]
b = [['Heinrich', '25']]
c = [['Adolf', '10'], ['Hermann', '20']]
Tôi cảm thấy rằng điều này phải có thể đạt được thông qua một số toàn bộ danh sách thông minh, nhưng tôi không hoàn toàn chắc chắn làm thế nào để tiếp cận nó.
c = [x for x in a_pairs if x not in b_pairs]
Phương thức Python Set Symmetric_Difference [] được sử dụng để có được các phần tử có trong một trong hai bộ, nhưng không phổ biến cho cả hai tập hợp. Hãy cùng nhìn vào sơ đồ Venn của Symmetric_Diferference giữa hai bộ.is used to get the elements present in either of the two sets, but not common to both the sets. Let’s look at the Venn diagram of the symmetric_difference between two sets.
Python SET SYMMETRIC_DIFFERTY [] Sơ đồ Venn
& nbsp; sự khác biệt đối xứng được đánh dấu màu xanh lá cây nếu có set_a và set_b, thì sự khác biệt đối xứng giữa chúng sẽ bằng với sự kết hợp của set_a và set_b mà không có giao điểm giữa hai.Symmetric Difference is marked in Green If there are a set_A and set_B, then the symmetric difference between them will be equal to the union of set_A and set_B without the intersection between the two.
Python set symmetric_difference [] Phương thức cú pháp
Cú pháp: set_a.symmetric_difference [set_b]set_A.symmetric_difference[set_B]
Tham số: lấy một tham số duy nhất phải là một tập hợpTakes a single parameter that has to be a set
Trả về: Trả về một bộ mới là sự khác biệt đối xứng giữa hai bộ.Returns a new set which is the symmetric difference between the two sets.
Ví dụ về phương thức symmetric_difference [] của Python SET
Python3
c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
5c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
6 c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
7c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
8c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
9a = [['Adolf', '10'], ['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15']]
b = [['Heinrich', '25']]
c = [['Adolf', '10'], ['Hermann', '20']]
0c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
9a = [['Adolf', '10'], ['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15']]
b = [['Heinrich', '25']]
c = [['Adolf', '10'], ['Hermann', '20']]
222a = [['Adolf', '10'], ['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15']]
b = [['Heinrich', '25']]
c = [['Adolf', '10'], ['Hermann', '20']]
8c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
6 c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
7c = [x for x in a_pairs if x not in b_pairs]
1c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
9c = [x for x in a_pairs if x not in b_pairs]
3c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
9a = [['Adolf', '10'], ['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15']]
b = [['Heinrich', '25']]
c = [['Adolf', '10'], ['Hermann', '20']]
222{1, 2, 5, 6, 7, 9}1
{1, 2, 5, 6, 7, 9}2
Output:
{1, 2, 5, 6, 7, 9}
Ví dụ 1: Tìm sự khác biệt đối xứng bằng cách sử dụng toán tử ‘^
Chúng ta cũng có thể tìm thấy sự khác biệt đối xứng từ hai bộ bằng cách sử dụng toán tử ‘^, trong Python.
Python3
c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
5c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
6 c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
7{1, 2, 5, 6, 7, 9}6
c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
9{1, 2, 5, 6, 7, 9}8
c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
9{'shyam', 'ravi', 'rahim', 'rishav'}0
c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
9{'shyam', 'ravi', 'rahim', 'rishav'}22
a = [['Adolf', '10'], ['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15']]
b = [['Heinrich', '25']]
c = [['Adolf', '10'], ['Hermann', '20']]
8c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
6 c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
7{'shyam', 'ravi', 'rahim', 'rishav'}4
c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
9{'shyam', 'ravi', 'rahim', 'rishav'}0
c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
9set[['e', 'o', 'p', 'r', 'w']] set[['e', 'o', 'p', 'r', 'w']] set[['a', 'p', 'w', 'n']] set[['a', 'r', 'e', 'o', 'n']]3
c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
9{1, 2, 5, 6, 7, 9}6__19
{1, 2, 5, 6, 7, 9}1
A = {'a', 'b', 'c', 'd'}
B = {'c', 'd', 'e' }
# returns all items to result variable except the items on intersection
result = A.symmetric_difference[B]
print[result]
# Output: {'a', 'b', 'e'}
0Output:
{'shyam', 'ravi', 'rahim', 'rishav'}
Ví dụ 2: Phương thức symmetric_difference [] Set Set Set
Python
A = {'a', 'b', 'c', 'd'}
B = {'c', 'd', 'e' }
# returns all items to result variable except the items on intersection
result = A.symmetric_difference[B]
print[result]
# Output: {'a', 'b', 'e'}
1c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
6 c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
7A = {'a', 'b', 'c', 'd'}
B = {'c', 'd', 'e' }
# returns all items to result variable except the items on intersection
result = A.symmetric_difference[B]
print[result]
# Output: {'a', 'b', 'e'}
4c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
9A = {'a', 'b', 'c', 'd'}
B = {'c', 'd', 'e' }
# returns all items to result variable except the items on intersection
result = A.symmetric_difference[B]
print[result]
# Output: {'a', 'b', 'e'}
6c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
9A = {'a', 'b', 'c', 'd'}
B = {'c', 'd', 'e' }
# returns all items to result variable except the items on intersection
result = A.symmetric_difference[B]
print[result]
# Output: {'a', 'b', 'e'}
8c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
9A = {'a', 'b', 'c', 'd'}
B = {'c', 'd', 'e' }
# returns all items to result variable except the items on intersection
result = A.symmetric_difference[B]
print[result]
# Output: {'a', 'b', 'e'}
6__19A.symmetric_difference[B]
4c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
6 c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
7A.symmetric_difference[B]
7c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
9A = {'a', 'b', 'c', 'd'}
B = {'c', 'd', 'e' }
# returns all items to result variable except the items on intersection
result = A.symmetric_difference[B]
print[result]
# Output: {'a', 'b', 'e'}
6c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
9c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
A = {'Python', 'Java', 'Go'}
B = {'Python', 'JavaScript', 'C' }
# returns the symmetric difference of A and B to result variable
result = A.symmetric_difference[B]
print[result]
7c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
6 A = {'Python', 'Java', 'Go'}
B = {'Python', 'JavaScript', 'C' }
# returns the symmetric difference of A and B to result variable
result = A.symmetric_difference[B]
print[result]
9{1, 2, 5, 6, 7, 9}1
c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
01{1, 2, 5, 6, 7, 9}1
c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
03{1, 2, 5, 6, 7, 9}1
c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
05{1, 2, 5, 6, 7, 9}1
c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
07Output:
set[['e', 'o', 'p', 'r', 'w']] set[['e', 'o', 'p', 'r', 'w']] set[['a', 'p', 'w', 'n']] set[['a', 'r', 'e', 'o', 'n']]
Phương thức
c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
08 trả về tất cả các mục có trong các bộ đã cho, ngoại trừ các mục trong giao lộ của chúng.Thí dụ
A = {'a', 'b', 'c', 'd'}
B = {'c', 'd', 'e' }
# returns all items to result variable except the items on intersection
result = A.symmetric_difference[B]
print[result]
# Output: {'a', 'b', 'e'}
Symmetric_difference [] cú pháp
Cú pháp của phương thức
c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
08 là:A.symmetric_difference[B]
Ở đây, A và B là hai bộ.
tham số symmetric_difference []
Phương thức
c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
08 có một tham số duy nhất:- B - Một tập hợp các cặp với tập A để tìm sự khác biệt đối xứng của chúng
symmetric_difference [] Giá trị trả về
Phương thức
c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
08 Trả về:- A tập hợp với tất cả các mục của a và b không bao gồm các mục không bao gồm
Ví dụ 1: SET PYTHON SOMMETRIC_DIFFERTE []
A = {'Python', 'Java', 'Go'}
B = {'Python', 'JavaScript', 'C' }
# returns the symmetric difference of A and B to result variable
result = A.symmetric_difference[B]
print[result]
Đầu ra
c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
0Trong ví dụ trên, chúng tôi đã sử dụng
c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
08 để trả về sự khác biệt đối xứng của A và B cho biến kết quả.Ở đây,
c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
13 có mặt trong cả hai bộ A và B. Vì vậy, phương thức trả về tất cả các mục của A và B để kết quả ngoại trừ c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
13.Ví dụ 2: SET PYTHON SOMMETRIC_DIFFERTE []
c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
1Đầu ra
c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
2Trong ví dụ trên, chúng tôi đã sử dụng
c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
08 để trả về sự khác biệt đối xứng của A và B cho biến kết quả.Ở đây,
c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
13 có mặt trong cả hai bộ A và B. Vì vậy, phương thức trả về tất cả các mục của A và B để kết quả ngoại trừ c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
13.Ví dụ 2: SET PYTHON SOMMETRIC_DIFFERTE []
Trong ví dụ trên, chúng tôi đã sử dụng
c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
08 với hai bộ A và B. Ở đây, A và B là siêu của nhau, có nghĩa là tất cả các mục của A đều có trong B và ngược lại.c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
3Đầu ra
c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
4Trong ví dụ trên, chúng tôi đã sử dụng toán tử
c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
16 để tìm sự khác biệt đối xứng của A và B và A, B và C. Với toán tử c = [['Hermann', '20'], ['Heinrich', '30'], ['Heinrich', '15'], ['Rudolf', '40']]
16, chúng ta cũng có thể tìm thấy sự khác biệt đối xứng của 3 bộ.