Phép toán toán học phần 2
Thuộc phần Logic và luồng chương trình trong hành trình Python của Coddy. Bài học 34 trên 78.
Hãy tiếp tục tìm hiểu các phép toán với tập hợp, tập trung vào những khái niệm nâng cao hơn như giao của nhiều tập hợp và hiệu giữa nhiều tập hợp.
Phép giao của nhiều tập hợp (& hoặc intersection()): Bạn có thể tìm các phần tử chung giữa nhiều tập hợp bằng cách dùng toán tử & hoặc gọi phương thức intersection() nhiều lần, hoặc truyền nhiều tập hợp vào phương thức intersection().
set1 = {1, 2, 3}
set2 = {2, 3, 4}
set3 = {3, 4, 5}
intersection_result = set1 & set2 & set3
# Hoặc
intersection_result = set1.intersection(set2, set3)
print(intersection_result)
# Đầu ra: {3}Hiệu của một tập hợp với nhiều tập hợp khác (- hoặc difference()): Bạn có thể tìm các phần tử chỉ có trong tập hợp đầu tiên so với nhiều tập hợp khác bằng cách dùng toán tử - hoặc phương thức difference(). Cách này thực hiện bằng cách lấy tập hợp đầu tiên trừ đi nhiều tập hợp khác.
set1 = {1, 2, 3, 4, 5}
set2 = {4, 5, 6}
set3 = {5, 6, 7}
difference_result = set1 - set2 - set3
# Hoặc
difference_result = set1.difference(set2, set3)
print(difference_result)
# Đầu ra: {1, 2, 3}Trong các ví dụ này, trước tiên, ta tìm giao của ba tập hợp, kết quả là một tập hợp chỉ chứa phần tử chung của cả ba tập hợp. Sau đó, ta tìm hiệu giữa nhiều tập hợp, kết quả là một tập hợp chỉ chứa các phần tử riêng có trong set1 sau khi loại bỏ các phần tử của set2 và set3.
Thử thách
DễHãy tưởng tượng bạn đang quản lý một câu lạc bộ riêng, nơi các thành viên được chia thành nhiều nhóm dựa trên sở thích. Bạn muốn tìm hiểu:
- Những thành viên nào có chung sở thích trong tất cả các nhóm?
- Những thành viên nào thật sự đặc biệt, chỉ thuộc nhóm đầu tiên mà không thuộc nhóm nào khác?
Viết một chương trình:
- Nhận ba tập hợp,
group1,group2vàgroup3, đại diện cho thành viên của ba nhóm sở thích. - Tìm và in ra giao của cả ba nhóm, tức là các thành viên chung của tất cả các nhóm.
- Tìm và in ra hiệu giữa
group1và hai nhóm còn lại, tức là các thành viên chỉ thuộc nhóm đầu tiên.
Hãy xem các test case để biết định dạng đầu ra cuối cùng!
Tự làm thử
# Viết code của bạn bên dưới
# In kết quả ra
Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.
Tất cả bài học trong Logic và luồng chương trình
4Ứng dụng sổ liên lạc
Hiển thị menuThêm liên hệ7Tập hợp phần 2
Phép toán toán học phần 1Phép toán toán học phần 2Ôn tập: Săn tìm kho báuTập hợp con và tập hợp chaLặp qua các tập hợpÔn tập: Theo dõi giải đấu10Tạo danh sách bằng cú pháp rút gọn cơ bản
Cú phápTạo danh sách đơn giảnThêm điều kiệnSử dụng phép tổng hợp dữ liệuÔn tập: Ngôi nhà của những danh sáchÔn tập: Những phần tử tự do13Hệ thống quản lý hàng tồn kho
Tổng quan dự ánThêm mặt hàng2Từ điển phần 1
Từ điển là gì?Tạo từ điểnTruy cập giá trịChỉnh sửa từ điểnÔn tập: Trình quản lý công thức nấu ăn5Ra quyết định nâng cao
Toán tử ba ngôiKiểm tra thành viênKiểm tra danh tínhLỗi thụt lềÔn tập: Bộ lọc kỳ nghỉ8Trình quản lý hồ sơ học sinh
Tổng quan dự ánThêm học sinh3Từ điển, phần 2
Phương thức của từ điểnTừ điển lồng nhauKiểm tra khóaLặp qua từ điểnÔn tập: Bộ đếm tần suất6Tập hợp phần 1
Tập hợp là gì?Các phép toán cơ bảnCác phương thức của tập hợpÔn tập: Xóa phần tử trùng lặp9Tổng hợp dữ liệu nâng cao
Sử dụng tổngTìm giá trị nhỏ nhất và lớn nhấtSắp xếp dữ liệu hiệu quảÔn tập: Bộ sắp xếp từ điểnTự luyện tập: Trình biên dịch Python online