Słowniki:
Rozgrzewka (najlepiej w ipythonie):
- Stwórz pusty słownik. Zapoznaj się z funkcjami, jakie są dla niego dostępne. Dodaj do niego następujące elementy: pod kluczem 1 wartość 3, pod kluczem 5 -> 2, a pod “a” -> 4. Usuń jeden z elementów używając metody del, a drugi używając metody pop. Przypisz na pozostały element wartość 10.
- Sprawdź, jak działają metody keys, values, items. Której z nich odpowiada zwykła iteracja pętlą for?
Zadania:
- Dla pliku the_emperors_new_clothes.txt stwórz słownik, w którym kluczami będą słowa, a wartościami pozycje (tzn. numery słów w tekście), na których one wystąpiły. Użyj funkcji
enumerate
. - Stwórz funkcję zwracającą dla zadanego napisu słownik, który pod indeksem odpowiadającym danemu słowu zawiera jego długość.
- Rozwiąż poprzednie zadanie używając funkcji
map
izip
. - (★) Używając klasy
defaultdict
(moduł collections) stwórz funkcję zwracającą dla danego słowa słownik, który pod indeksem odpowiadającym danej literze będzie zawierał liczbę jej wystąpień. - (★) Używając klasy OrderedDict (moduł collections) wypisz (w kolejności pierwszego wystąpienia w tekście) wszystkie słowa w danym napisie oraz liczbę ich wystąpień.
- (★) Używając klasy
Counter
(moduł collections) napisz funkcję, która znajdzie 5 najczęściej występujących słów w napisie wraz z liczbami ich wystąpień.
Zbiory:
Rozgrzewka (najlepiej w ipythonie):
- Stwórz zbiór liter z napisów “alabama” i “alaska”. Jak wygląda różnica pomiędzy jednym zbiorem a drugim (użyj operatora “-”)?
- Zobacz jakie inne funkcje na zbiorach są dostępne w pythonie.
Zadania:
- Stwórz zbiór słów z pliku the_emperors_new_clothes.txt (usuń znaki interpunkcyjne).
- Stwórz również zbiór słów z pliku the_bell.txt i wypisz słowa występujące w pierwszym, ale nie występujące w drugim.
- Znajdź słowa, które występują dokładnie w jednym z powyższych plików oraz słowa wspólne dla obu plików.
- Napisz funkcję
unique
, która dla danej listy zwróci listę zawierającą te same elementy, ale bez powtórzeń. - (★) Dla danego zbioru wygeneruj jego zbiór potęgowy (zbiór wszystkich podzbiorów tego zbioru). Wynik powinien być reprezentowany jako lista.