Działania matematyczne — część 2
Część sekcji Logika i przepływ programu ścieżki Python w Coddy. Lekcja 34 z 78.
Kontynuujmy poznawanie operacji matematycznych na zbiorach, skupiając się na bardziej zaawansowanych zagadnieniach, takich jak część wspólna wielu zbiorów i różnica wielu zbiorów.
Część wspólna wielu zbiorów (& lub intersection()): Możesz znaleźć wspólne elementy wielu zbiorów, wielokrotnie używając operatora & lub metody intersection(), albo przekazując wiele zbiorów do metody intersection().
set1 = {1, 2, 3}
set2 = {2, 3, 4}
set3 = {3, 4, 5}
intersection_result = set1 & set2 & set3
# Lub
intersection_result = set1.intersection(set2, set3)
print(intersection_result)
# Wynik: {3}Różnica między wieloma zbiorami (- lub difference()): Możesz znaleźć elementy, które występują tylko w pierwszym zbiorze w porównaniu z wieloma innymi zbiorami, używając operatora - lub metody difference(). Robi się to poprzez odjęcie wielu zbiorów od pierwszego zbioru.
set1 = {1, 2, 3, 4, 5}
set2 = {4, 5, 6}
set3 = {5, 6, 7}
difference_result = set1 - set2 - set3
# Lub
difference_result = set1.difference(set2, set3)
print(difference_result)
# Wynik: {1, 2, 3}W tych przykładach najpierw znajdujemy część wspólną trzech zbiorów, otrzymując zbiór zawierający tylko element wspólny dla wszystkich trzech zbiorów. Następnie znajdujemy różnicę między wieloma zbiorami, otrzymując zbiór zawierający tylko elementy unikalne dla set1 po odjęciu elementów zbiorów set2 i set3.
Wyzwanie
ŁatwyWyobraź sobie, że zarządzasz ekskluzywnym klubem, którego członkowie są podzieleni na różne grupy na podstawie zainteresowań. Chcesz się dowiedzieć:
- Kim są członkowie, którzy mają wspólne zainteresowanie we wszystkich grupach?
- Kim są naprawdę wyjątkowi członkowie, którzy należą tylko do pierwszej grupy, a nie do żadnej innej?
Napisz program, który:
- Pobiera trzy zbiory:
group1,group2igroup3, reprezentujące członków trzech grup zainteresowań. - Znajduje i wypisuje część wspólną wszystkich trzech grup (członków wspólnych dla wszystkich grup).
- Znajduje i wypisuje różnicę zbioru
group1względem dwóch pozostałych grup (członków należących tylko do pierwszej grupy).
Sprawdź przypadki testowe, aby poznać końcowy format wyjściowy!
Spróbuj swoich sił
group1 = eval(input())
group2 = eval(input())
group3 = eval(input())
# Napisz swój kod poniżej
# Wyświetl wyniki
print("Members in all groups:", sorted(list(intersection_result)))
print("Unique members in group1:", sorted(list(difference_result)))Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Logika i przepływ programu
1Odkrywanie zmiennych
StałeWielokrotne przypisania zmiennychZamiana zmiennychZmienne zastępczeZaokrąglanie liczbKonwersja na listę4Aplikacja książki kontaktów
Wyświetl menuDodaj kontakt7Zbiory — część 2
Działania matematyczne — część 1Działania matematyczne — część 2Powtórka — poszukiwanie skarbówPodzbiory i nadzbioryIterowanie po zbiorachPowtórka — śledzenie turnieju10Podstawowe składanie list
SkładniaTworzenie prostych listDodawanie warunkówUżywanie agregacji danychPowtórka – dom listPowtórka – elementy wolności13System zarządzania zapasami
Przegląd projektuDodawanie produktu2Słowniki — część 1
Czym jest słownik?Tworzenie słownikaDostęp do wartościModyfikowanie słownikówPowtórzenie — menedżer przepisów5Zaawansowane podejmowanie decyzji
Operator warunkowySprawdzanie przynależnościSprawdzanie tożsamościBłędy wcięćPowtórka — filtr wakacyjny8Menedżer rekordów uczniów
Przegląd projektuDodawanie ucznia11Zaawansowane funkcje
Zwracanie wielu wartościFunkcje lambda — część 1Funkcje lambda — część 2Wyzwanie podsumowujące — sortowanie z lambdaFunkcje rekurencyjne — część 1Funkcje rekurencyjne — część 2Podsumowanie — suma elementów zagnieżdżonej listy14Funkcje wyższego rzędu
Funkcja mapFunkcja filterPodsumowanie – walidator adresów e-mailPodsumowanie – procesor liczb3Słowniki, część 2
Metody słownikówZagnieżdżone słownikiSprawdzanie kluczyIterowanie po słownikachPowtórzenie — licznik częstotliwości9Zaawansowana agregacja danych
Używanie sumyZnajdowanie minimum i maksimumEfektywne sortowanie danychPowtórka – sortowanie słowników12Podstawowa obsługa błędów
Czym jest obsługa błędów?Blok try i exceptObsługa wielu wyjątkówPodsumowanie – błędy w koszyku zakupowymPoćwicz samodzielnie: Kompilator Python online