0Pricing
Python Academy · Lekcja

Rozumienie zbiorów i słowników

Proszę stosować wzorce rozumienia do zbiorów i słowników.

Rozumienie zbiorów i słowników to bezpłatna lekcja Python Academy na CoddyKit. To lekcja 2 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Python Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Python Academy zawiera 4 lekcji w sumie.

Wprowadzenie

Ta sama składnia list comprehension działa w przypadku zbiorów i słowników, tworząc odpowiednio unikatowe elementy oraz mapowania klucz-wartość.

Składnia set comprehension

{expression for item in iterable} używa nawiasów klamrowych bez dwukropka. Wynikiem jest zbiór — nieuporządkowany i zawierający unikatowe elementy.
unique_lens = {len(w) for w in ['apple','banana','fig']}
print(unique_lens)

Usuwanie duplikatów za pomocą set comprehension

Wszelkie zduplikowane wyniki wyrażeń są po cichu pomijane. {x%3 for x in range(9)} daje {0,1,2}.
mods = {x % 3 for x in range(9)}
print(mods)

Set comprehension z warunkiem

{x for x in range(20) if x%2==0 and x%3==0} daje liczby podzielne jednocześnie przez 2 i 3.
print({x for x in range(20) if x%2==0 and x%3==0})

Składnia dict comprehension

{key_expr: val_expr for item in iterable} używa pary key:value przed for. Tworzy słownik.
squares = {x: x**2 for x in range(5)}
print(squares)

Dict comprehension z warunkiem

{k: v for k, v in d.items() if v > 0} filtruje słownik, pozostawiając tylko wartości dodatnie.
d = {'a': 1, 'b': -2, 'c': 3}
pos = {k: v for k, v in d.items() if v > 0}
print(pos)

Odwracanie słownika

{v: k for k, v in d.items()} zamienia klucze i wartości miejscami. Wymaga, aby wszystkie wartości były unikatowe i haszowalne.
d = {'a': 1, 'b': 2, 'c': 3}
print({v: k for k, v in d.items()})

Grupowanie za pomocą dict comprehension

{letter: [w for w in words if w[0]==letter] for letter in 'abc'} grupuje słowa według pierwszej litery.
words = ['apple','ant','banana','cherry','cat']
grouped = {l: [w for w in words if w.startswith(l)] for l in 'abc'}
print(grouped)

Łączenie dwóch list w słownik

{k: v for k, v in zip(keys, vals)} jest czytelniejsze niż dict(zip(keys, vals)), gdy potrzebne jest przekształcenie danych.
keys = ['x', 'y', 'z']
vals = [1, 4, 9]
print({k: v**0.5 for k, v in zip(keys, vals)})

Zagnieżdżone dict comprehension

{i: {j: i*j for j in range(3)} for i in range(3)} tworzy tabliczkę mnożenia jako zagnieżdżone słowniki.
table = {i: {j: i*j for j in range(3)} for i in range(3)}
print(table)

Kiedy używać poszczególnych rodzajów

Set comprehension należy stosować, gdy potrzebne są unikatowe wartości. Dict comprehension — gdy potrzebne jest mapowanie klucz-wartość. List comprehension — gdy kolejność ma znaczenie.
words = ['hello', 'world', 'hello']
unique = {w for w in words}
lengths = {w: len(w) for w in unique}
print(lengths)

Szybkie sprawdzenie

Jaka jest kluczowa różnica składniowa między set comprehension a dict comprehension?

Podsumowanie

Set comprehension: {expr for x in it}. Dict comprehension: {k: v for x in it}. Obie obsługują filtrowanie za pomocą if. Dict comprehension wymaga unikatowych, haszowalnych kluczy.

Proszę kontynuować

Doskonale! Proszę przejść do następnej lekcji, aby pogłębić swoje umiejętności.

Często zadawane pytania

Czy lekcja „Rozumienie zbiorów i słowników” jest bezpłatna?

Tak — pełny tekst „Rozumienie zbiorów i słowników” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Python Academy, przejdź na CoddyKit PRO. Kurs Python Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „Rozumienie zbiorów i słowników”?

Proszę stosować wzorce rozumienia do zbiorów i słowników. Ćwiczysz Python Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Python Academy?

Nie wymagamy żadnego doświadczenia. Python Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 2 z 4.

Ile czasu zajmuje lekcja „Rozumienie zbiorów i słowników”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Python Academy?

Tak. Każda lekcja Python Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Rozumienie listowe
  2. Rozumienie zbiorów i słowników
  3. Wyrażenia generatorowe
  4. Słowo kluczowe yield
← Powrót do Python Academy