Phương thức set.symmetric_difference[]
trả về một tập hợp mới với các phần tử riêng biệt được tìm thấy trong cả hai tập hợp
cú pháp
set.symmetric_difference[other_set]
Thông số
other_set. Yêu cầu. Tập hợp để xác định sự khác biệt đối xứng
Giá trị trả về
Trả về sự khác biệt đối xứng của các tập hợp
Ví dụ sau minh họa phương pháp set.symmetric_difference[]
nums1 = {1,2,3,4,5}
nums2 = {4,5,6,7,8}
nums3 = nums1.symmetric_difference[nums2]
print["New set: ", nums3]
New set: {1, 2, 3, 6, 7, 8}
Toán tử ^
cũng có thể được sử dụng để tìm hiệu đối xứng của các tập hợp
nums1 = {1,2,3,4,5}
nums2 = {4,5,6,7,8}
nums3 = nums1 ^ nums2
print["New set: ", nums3]
New set: {1, 2, 3, 6, 7, 8}
Tập hợp chứa tất cả các phần tử hoặc thuộc một tập hợp cụ thể nhưng không thuộc tập hợp kia hoặc thuộc cả hai tập hợp đã cho nhưng không chung được gọi là sai phân đối xứng trong toán học. Nó có thể được coi là hợp của hai hoặc nhiều tập hợp không bao gồm các phần tử chung của các tập hợp đã cho. Đó là một kỹ thuật để xác định điều gì làm cho mỗi bộ khác biệt. Set là một thư viện được Python cung cấp cho các thuật toán và cấu trúc dữ liệu. Mặc dù kiểu “tập hợp” có nhiều tính năng hấp dẫn, nhưng làm việc với sự khác biệt đối xứng của các tập hợp được thực hiện đơn giản bằng một hàm tích hợp trong Python. Trong bài viết này, chúng ta sẽ xem xét sự khác biệt đối xứng và cách sử dụng nó trong Python
Hàm Symmetric_Difference[] trong Python là gì?
Một tập hợp chênh lệch đối xứng của hai tập hợp đã chỉ định được trả về bằng phương thức set symmetric_difference[]. Các phần tử nằm trong tập hợp 1 hoặc tập hợp 2 nhưng không thuộc cả hai thì được chứa trong một tập hợp khác là tập hiệu đối xứng của hai tập hợp đã cho, i. e. bộ 1 và 2. Ví dụ: sự khác biệt đối xứng giữa các bộ {1, 2, 3} và {3, 2, 4} sẽ là {1, 4} do sự hiện diện của các phần tử 2 và 3 trong cả hai bộ
cú pháp
đặt. symmetric_difference [ other_set ]
Thông số.
other_set. Tập hợp được sử dụng để xác định sự khác biệt đối xứng
Làm cách nào chúng ta có thể tìm thấy tập hợp chênh lệch đối xứng trong Python?
Có thể thu được tập chênh lệch đối xứng bằng hai phương thức trong Python. Phương thức đầu tiên là sử dụng hàm symmetric_difference[] và phương thức thứ hai là sử dụng toán tử “^”. Tuy nhiên, trọng tâm chính của chúng tôi là tìm tập chênh lệch đối xứng bằng cách sử dụng hàm dựng sẵn “symmetric_difference[]” của Python
Phương pháp 1. Tìm sự khác biệt đối xứng bằng hàm Symmetric_Difference[]
Hàm này chỉ cho phép truyền một tham số làm đối số. Các loại có thể lặp lại như set, tuple, list, dictionary và string đều là các đầu vào được chấp nhận cho chức năng này
ví dụ 1. Tìm hiệu đối xứng giữa hai tập hợp số nguyên
Đầu tiên, chúng ta cần hai tập hợp mà từ đó chúng ta tìm tập hiệu đối xứng. Các bộ có thể được tạo đơn giản bằng cách đặt các phần tử dữ liệu bên trong dấu ngoặc nhọn “{}” được phân tách bằng dấu phẩy
Có thể thấy, hai bộ số nguyên “A” và “B” của chúng ta được tạo để lưu trữ các giá trị dữ liệu [3, 5, 6, 1, 4, 9, 11] và [2, 4, 3, 5, 6, . Bây giờ, chúng ta áp dụng hàm symmetric_difference[] để tìm tập chênh lệch đối xứng từ các tập “A” và “B”
Chúng tôi đã áp dụng hàm trên tập hợp “B” và tập hợp “A” được truyền dưới dạng tham số đầu vào bên trong hàm. Hàm trả về một tập chênh lệch đối xứng với các giá trị dữ liệu [1, 2, 11, 14]. Tất cả các phần tử chung giữa cả hai bộ 2, 3, 4, 5, 6 và 9 đều bị hàm loại trừ
ví dụ 2. Tìm Hiệu Đối Xứng Giữa Hai Tập Hợp Chuỗi
Lần này, chúng tôi tạo các bộ chứa các giá trị chuỗi. Sau đó, chúng tôi tìm thấy sự khác biệt đối xứng giữa chúng
Các bộ X, Y, Z bắt buộc của chúng ta được tạo với các giá trị chuỗi [“a”, “d”, “g”, “h”, “j”, “k”, “l”, “c”], [“ . Sử dụng hàm symmetric_difference[], chúng ta không thể tìm thấy hiệu đối xứng của nhiều hơn hai tập hợp. Vì vậy, trước tiên chúng tôi tìm thấy sự khác biệt đối xứng giữa các bộ X và Y
Tập đối xứng với các phần tử [‘v’, ‘l’, ‘k’, ‘c’] được hàm trả về. Bây giờ, hãy kiểm tra các bộ “Y” và “Z”
Hàm loại trừ tất cả các mục chung giữa cả hai tập hợp và trả về một tập hợp khác biệt đối xứng với các giá trị ['d', 's', 'v', 'g']
Ví dụ #3. Tìm sự khác biệt đối xứng giữa một tập hợp và một đối tượng danh sách
Chúng ta đã thấy cách tính hiệu đối xứng giữa hai tập hợp. Bây giờ, chúng ta tìm sự khác biệt đối xứng giữa một tập hợp và một đối tượng danh sách bằng cách sử dụng phương thức symmetric_difference[]
Chúng tôi đã tạo danh sách bắt buộc “L” và đặt “S” với các mục/giá trị [1, 2, 3, 4, 5, 6, 7] và [3, 4, 7, 1, 5, 8, 9], . Bây giờ, hãy sử dụng hàm symmetric_difference[] để lấy chênh lệch đối xứng
Chúng tôi đã áp dụng hàm trên tập hợp “S” và danh sách “L” được chuyển làm đối số cho hàm. Bằng cách so sánh các phần tử của tập hợp “S” với các mục của danh sách “L”, hàm trả về một tập hợp đầu ra có giá trị [2, 6, 8, 9]
Ví dụ #4. Tìm sự khác biệt đối xứng giữa một tập hợp và một tuple trong Python
Bây giờ, chúng ta cần một bộ và một bộ. Giống như một danh sách, nhiều mục có thể được lưu trữ trong một biến cụ thể bằng cách sử dụng các bộ dữ liệu. Để tạo một bộ Python đơn giản, chúng ta chỉ cần thêm/lưu trữ các mục bên trong dấu ngoặc tròn “[]” được phân tách bằng dấu phẩy
Một tuple “T” được tạo với các mục [2, 1, “a”, 5, 3, “b”, 4]. Các phần tử [“a”, 4, “c”, 1, 3, 6, 5, 2] được lưu trong tập “S”. Bây giờ chúng ta có thể tìm tập chênh lệch đối xứng
Chúng tôi đã áp dụng hàm trên tập “S” và bộ “T” được truyền dưới dạng đối số bên trong hàm. Sự khác biệt đối xứng với các phần tử {‘b’, 6, ‘c’} có được bằng hàm
Ví dụ 5. Tìm sự khác biệt đối xứng giữa Tập hợp và Từ điển trong Python
Bây giờ, trong ví dụ này, chúng ta sẽ kiểm tra sự khác biệt đối xứng giữa một tập hợp và một lệnh Python. Trước tiên, hãy tạo từ điển cần thiết của chúng tôi và thiết lập
Từ điển của chúng tôi được tạo bằng khóa. cặp giá trị ['a'. 1, 's'. 5, 'd'. 10, 'f'. 15, ‘g’. 20, ‘h’. 25]. Chúng tôi cũng đã tạo tập hợp “S” với các mục nhập dữ liệu ['a', 'b', 'c', 'd', 'e', 'f']. Bây giờ, hãy lấy sự khác biệt đối xứng
Bằng cách so sánh dữ liệu được lưu trữ trong từ điển “D” và tập hợp “S”, hàm đã trả về tập chênh lệch đối xứng { ‘h’, ‘b’, ‘e’, ‘s’, ‘g’, ‘c’}
Phương pháp 2. Tìm Hiệu Đối Xứng Sử Dụng Toán Tử “^”
Cũng có thể thu được sự khác biệt đối xứng giữa hai bộ hoặc giữa các bộ và các lần lặp bằng cách sử dụng toán tử “^”
Thí dụ
Chúng ta đã thấy cách tìm tập chênh lệch đối xứng bằng cách sử dụng phương thức symmetric_difference[]. Bây giờ, trong ví dụ này, toán tử “^” được sử dụng để làm như vậy. Trước tiên hãy tạo các bộ của chúng tôi
Chúng tôi đã tạo các bộ s1 và s2 chứa các giá trị dữ liệu [2, 4, 6, 8, 10] và [1, 2, 3, 4, 5] tương ứng. Bây giờ, hãy sử dụng toán tử “^”
Toán tử trả về chênh lệch đối xứng của bộ s1 và s2. Với việc sử dụng toán tử “^”, chúng ta cũng có thể tìm thấy tập hợp hiệu đối xứng của nhiều tập hợp, điều không thể thực hiện được khi sử dụng hàm sym_difference[]
Như bạn có thể quan sát, người vận hành đã thu được thành công kết quả/đầu ra chính xác
Sự kết luận
Trong hướng dẫn này, chúng tôi đã cố gắng dạy cho bạn biết sự khác biệt đối xứng là gì và cách chúng tôi có thể tìm thấy nó trong Python. Trước tiên, chúng tôi đã giải thích cách hoạt động và cú pháp của hàm sym_difference[]. Sau đó, chúng tôi đã trình bày nhiều ví dụ để cho bạn thấy cách tìm sự khác biệt đối xứng giữa hai tập hợp, giữa một danh sách và một tập hợp, giữa một bộ và một tập hợp và giữa một từ điển với một tập hợp. Chúng tôi cũng đã triển khai một ví dụ bằng cách sử dụng toán tử “^” để tìm sự khác biệt đối xứng giữa hai và nhiều tập hợp