1.7. Słownik Pythona¶
- język interpretowany
- język, który jest tłumaczony i wykonywany “w locie”, np. Python lub PHP. Tłumaczeniem i wykonywaniem programu zajmuje się specjalny program nazwany interpreterem języka.
- interpreter
program, który analizuje kod źródłowy, a następnie go wykonuje. Interpretery są podstawowym składnikiem języków wykorzystywanych do pisania skryptów wykonywanych po stronie klienta WWW (JavaScript) lub serwera (np. Python, PHP).
Interpreter Pythona jest interaktywny, tzn. można w nim wydawać polecenia i obserwować ich działanie, co pozwala wygodnie uczyć się i testować oprogramowanie. Uruchamiany jest w terminalu, zazwyczaj za pomocą polecenia
python.- formatowanie kodu
- Python wymaga formatowania kodu za pomocą wcięć, podstawowym wymogiem
jest stosowanie takich samych wcięć w obrębie pliku, np. 4 spacji
i ich wielokrotności. Wcięcia odpowiadają nawiasom w innych językach,
służą grupowaniu instrukcji i wydzielaniu bloków kodu.
Błędy wcięć zgłaszane są jako wyjątki
IndentationError. - zmienna
- nazwa określająca jakąś zapamiętywaną i wykorzystywaną w programie wartość
lub strukturę danych. Zmienna może przechowywać pojedyncze wartości
określonego typu, np.:
imie = "Anna", jak i rozbudowane struktury danych, np.:imiona = ('Ala', 'Ola', 'Ela'). W nazwach zmiennych nie używamy znaków narodowych, nie rozpoczynamy ich od cyfr. - typy danych
- Wszystkie dane w Pythonie są obiektami i jako takie przynależą do określonego typu, który determinuje możliwe na nich operacje. W pewnym uproszczeniu podstawowe typy danych to: string – napis (łańcuch znaków), podtyp sekwencji; integer – dodatnie i ujemne liczby całkowite; float – liczba zmiennoprzecinkowa (separatorem jest kropka); boolean – wartość logiczna True (prawda, 1) lub False (fałsz, 0), podtyp typu całkowitego.
- operatory
Arytmetyczne: +, -, *, /, //, %, ** (potęgowanie); znak + znak (konkatenacja napisów); znak * 10 (powielenie znaków); Przypisania: =, +=, -=, *=, /=, %=, **=, //=; Logiczne: and, or, not; Fałszem logicznym są: liczby zero (0, 0.0), False, None (null), puste kolekcje ([], (), {}, set()), puste napisy. Wszystko inne jest prawdą logiczną. Zawierania: in, not in; Porównania: ==, >, <, <>, <=, >= != (jest różne).
Operator * rozpakowuję listę paramterów przekazaną funkcji. Operator ** rozpakuje słownik.
- lista
- jedna z podstawowych struktur danych, indeksowana sekwencja takich samych
lub różnych elementów, które można zmieniać. Przypomina tabele z innych
języków programowania. Np.
imiona = ['Ala', 'Ola', 'Ela']. Deklaracja pustej listy:lista = []. - tupla
- podbnie jak lista, zawiera indeksowaną sekwencję takich samych lub
różnych elementów, ale nie można ich zmieniać. Często służy do
przechowywania lub przekazywania ustawień, stałych wartości itp.
Np.
imiona = ('Ala', 'Ola', 'Ela'). 1-elementową tuplę należy zapisywać z dodatkowym przecinkiem:tupla1 = (1,). - zbiór
- nieuporządkowany, nieindeksowany zestaw elementów tego samego lub
różnych typów, nie może zawierać duplikatów, obsługuje charakterystyczne
dla zbiorów operacje: sumę, iloczyn oraz różnicę.
Np.
imiona = set(['Ala', 'Ola', 'Ela']). Deklaracja pustego zbioru:zbior = set(). - słownik
- typ mapowania, zestaw par elementów w postaci “klucz: wartość”. Kluczami mogą być
liczby, ciągi znaków czy tuple. Wartości mogą być tego samego lub
różnych typów. Np.
osoby = {'Ala': 'Lipiec' , 'Ola': 'Maj', 'Ela': 'Styczeń'}. Dane ze słownika łatwo wydobyć:slownik['klucz'], lub zmienić:slownik['klucz'] = wartosc. Deklaracja pustego słownika:slownik = dict(). - instrukcja warunkowa
- podstawowa konstrukcja w programowaniu, wykorzystuje wyrażenie logiczne przyjmujące wartość True (prawda) lub False (fałsz) do wyboru odpowiedniego działania. Umożliwia rozgałezianie kodu. Np.:
if wiek < 18:
print "Treść zabroniona"
else:
print "Zapraszamy"
- pętla
- podstawowa konstrukcja w programowaniu, umożliwia powtarzanie fragmentów
kodu zadaną ilość razy (pętla
for) lub dopóki podane wyrażenie logiczne jest prawdziwe (pętlawhile). Należy zadbać, aby pętla była skończona za pomocą odpowiedniego warunku lub instrukcji przeywającej powtarzanie. Np.:
for i in range(11):
print i
- zmienna iteracyjna
- zmienna występująca w pętli, której wartość zmienia się, najczęściej jest zwiększana (inkremntacja) o 1, w każdym wykonaniu pętli. Może pełnić rolę “licznika” powtórzeń lub być elementem wyrażenia logicznego wyznaczającego koniec działania pętli.
- iteratory
- (ang. iterators) – obiekt reprezentujący sekwencję danych,
zwracający z niej po jednym elemencie na raz przy użyciu metody
next(); jeżeli nie ma następnego elementu, zwracany jest wyjątekStopIteration. Funkcjaiter()potrafi zwrócić iterator z podanego obiektu. - generatory wyrażeń
- (ang. generator expressions) – zwięzły w notacji sposób tworzenia
iteratorów według składni:
( wyrażenie for wyraz in sekwencja if warunek ) - wyrażenie listowe
- (ang. list comprehensions) – efektywny sposób tworzenia list na podstawie
elementów dowolnych sekwencji, na których wykonywane są te same operacje
i które opcjonalnie spełniają określone warunki. Składnia:
[ wyrażenie for wyraz in sekwencja if warunek ] - mapowanie funkcji
- w kontekście funkcji
map()oznacza zastosowanie danej funkcji do wszystkich dostarczonych wartości - wyrażenia lambda
- zwane czasem funkcjami lambda, mechanizm pozwalający zwięźle zapisywać proste funkcje w postaci pojedynczych wyrażeń
- filtrowanie danych
- selekcja danych na podstawie jakichś kryteriów
- wyjątki
- to komunikaty zgłaszane przez interpreter Pythona, pozwalające ustalić przyczyny błędnego działania kodu.
- funkcja
- blok często wykonywanego kodu wydzielony słowem kluczowym
def, opatrzony unikalną w danym zasięgu nazwą; może przyjmować dane i zwracać wartości za pomocą słowa kluczowegoreturn. - moduł
- plik zawierający wiele zazwyczaj często używanych w wielu programach
funkcji lub klas; zanim skorzystamy z zawartych w nim fragmentów kodu,
trzeba je lub cały moduł zaimportować za pomocą słowa kluczowego
import. - serializacja
- proces przekształcania obiektów w strumień znaków lub bajtów, który można zapisać w pliku (bazie) lub przekazać do innego programu.
Materiały Python 101
udostępniane przez
Centrum Edukacji Obywatelskiej na licencji
Creative Commons Uznanie autorstwa-Na tych samych warunkach 4.0 Międzynarodowa.
| Utworzony: | 2017-09-08 o 19:38 w Sphinx 1.4.5 |
|---|---|
| Autorzy: | Patrz plik “Autorzy” |