POLISH

Python na luzie v. 1.5

Book information

Publisher
jsystems
Year
2020
Language
polish
Format
PDF
Filesize
8 MB (8555143 bytes)
Pages
\205
Time added
2020-07-09 22:38:05

Description

Podstawy Pythona. Python to taki język programowania. "Python na luzie" v. 1.5 - Andrzej Klusiewicz - www.jsystems.pl 1/205 "Hello world" i pisanie na konsoli ............................................................................................................ 7 Zmienne i typy danych .............................................................................................................................. 9 Zmienne ................................................................................................................................................ 9 Typy danych .......................................................................................................................................... 9 Typ tekstowy ................................................................................................................................... 10 Typy liczbowe ................................................................................................................................. 10 Instrukcje warunkowe .............................................................................................................................. 11 Jeden warunek ...................................................................................................................................... 11 Else ...................................................................................................................................................... 12 Wiele warunków ................................................................................................................................. 12 Operatory logiczne w warunkach ....................................................................................................... 13 Pętle ......................................................................................................................................................... 14 Pętla while ........................................................................................................................................... 14 Pętla for ............................................................................................................................................... 14 Zagnieżdżanie pętli ............................................................................................................................. 15 Instrukcja BREAK .............................................................................................................................. 17 Instrukcja CONTINUE ....................................................................................................................... 17 Łańcuchy znaków ................................................................................................................................... 18 Funkcje wbudowane ........................................................................................................................... 18 upper................................................................................................................................................ 18 lower................................................................................................................................................ 18 title ...................................................................................................................................................... 19 replace ............................................................................................................................................. 19 len w kontekście ciągów tekstowych .............................................................................................. 19 count ................................................................................................................................................ 20 strip.................................................................................................................................................. 20 split i join - zamiana tekstu na listę i listy na tekst ......................................................................... 21 Łańcuchy funkcji................................................................................................................................. 22 Iterowanie po łańcuchach tekstowych ................................................................................................ 22 Mnożenie tekstu. Ale jak? ................................................................................................................... 23 Wygodne sprawdzanie czy tekst zawiera frazę ................................................................................... 23 Czy Python>Java? ............................................................................................................................... 24 Cięcia, cięcia - o cięciu łańcuchów tekstowych słów kilka ................................................................ 25 Listy ........................................................................................................................................................ 27 Tworzenie list ...................................................................................................................................... 27 Pobieranie wartości z list .................................................................................................................... 28 "Python na luzie" v. 1.5 - Andrzej Klusiewicz - www.jsystems.pl 2/205 Iterowanie po listach ........................................................................................................................... 30 Sprawdzanie czy element znajduje się na liście .................................................................................. 30 Modyfikowanie zawartości listy ......................................................................................................... 31 Dodawanie nowych wartości i wstawianie w miejsce istniejących ................................................ 31 Kasowanie elementów z listy .......................................................................................................... 32 Funkcje wbudowane w listy ................................................................................................................ 33 Sortowanie i odwracanie list ........................................................................................................... 33 Inne ciekawe funkcje i możliwości ................................................................................................. 36 Krotki ...................................................................................................................................................... 38 Deklaracja i uzupełnianie krotek danymi ............................................................................................ 38 Pobieranie wartości z krotek ............................................................................................................... 39 Słowniki .................................................................................................................................................. 40 Tworzenie słowników ......................................................................................................................... 40 Pobieranie wartości ze słowników ...................................................................................................... 41 Modyfikacja zawartości słowników.................................................................................................... 43 Zestawy ................................................................................................................................................... 44 Tworzenie zestawów i konwersje z innych typów złożonych ............................................................ 44 Modyfikowanie zawartości zestawów ................................................................................................ 46 Wyjątki .................................................................................................................................................... 47 Obsługa wyjątków............................................................................................................................... 47 Funkcje .................................................................................................................................................... 51 Deklarowanie funkcji .......................................................................................................................... 51 Parametry funkcji ................................................................................................................................ 51 Zwracanie wyników z funkcji ............................................................................................................. 53 Wyrażenia Lambda ............................................................................................................................. 54 Funkcja jako argument ........................................................................................................................ 55 Funkcja w funkcji................................................................................................................................ 56 Rekurencja .......................................................................................................................................... 56 Dokumentowanie funkcji .................................................................................................................... 57 Moduły .................................................................................................................................................... 58 Definiowanie modułów ....................................................................................................................... 58 Dokumentowanie modułów i sprawdzanie dostępnych funkcji ......................................................... 60 Korzystanie z plików tekstowych ........................................................................................................... 61 Czytanie z plików tekstowych ........................................................................................................... 61 read() ............................................................................................................................................... 62 readlines()........................................................................................................................................ 64 "Python na luzie" v. 1.5 - Andrzej Klusiewicz - www.jsystems.pl 3/205 readline() ......................................................................................................................................... 65 Funkcja seek() ..................................................................................................................................... 65 Sprawdzanie ilości linii w pliku .......................................................................................................... 66 Zapis w plikach tekstowych ................................................................................................................ 67 Tryby otwarcia pliku ....................................................................................................................... 67 Wprowadzanie danych do pliku ...................................................................................................... 67 Przetwarzanie JSON ............................................................................................................................... 69 Ładowanie danych JSON z pliku ........................................................................................................ 69 Tworzenie i zapisywanie danych JSON do pliku ............................................................................... 72 Przetwarzanie XML ................................................................................................................................ 74 Odczyt danych z pliku XML i sięganie do elementu po nazwie ......................................................... 75 Sięganie po podelementy .................................................................................................................... 78 Sięganie do elementu po pozycji ........................................................................................................ 79 Listy wartości w XML i odwoływanie się do "n-tego" wystąpienia tagu ........................................... 80 Atrybuty .............................................................................................................................................. 81 Użyteczne "sztuczki" .......................................................................................................................... 83 Odczytywanie XML jako zwykły tekst ........................................................................................... 83 Sprawdzanie nazwy elementu ......................................................................................................... 84 Modyfikowanie drzewa XML ............................................................................................................. 85 Modyfikowanie zawartości elementu ............................................................................................. 85 Dodawanie i modyfikowanie atrybutów elementu ......................................................................... 85 Tworzenie nowych elementów ........................................................................................................ 86 Usuwanie elementów ...................................................................................................................... 87 Zapis drzewa XML do pliku ............................................................................................................... 88 Dane zdalne - wykorzystanie usług sieciowych ..................................................................................... 89 Pobieranie danych za pomocą GET .................................................................................................... 89 Przesyłanie danych za pomocą POST ................................................................................................. 90 Wykorzystanie baz danych ...................................................................................................................... 91 Łączenie z serwerem bazy danych ...................................................................................................... 91 Łączenie z serwerem PostgreSQL .................................................................................................. 91 Łączenie z serwerem Oracle ........................................................................................................... 91 Pobieranie danych z użyciem SELECT .............................................................................................. 92 Wstawianie, zmiana i kasowanie danych, oraz operacje DDL ........................................................... 94 Moduł os i poruszanie się po systemie plików ....................................................................................... 95 Funkcja os.walk .................................................................................................................................. 95 Poruszanie się po systemie plików...................................................................................................... 97 "Python na luzie" v. 1.5 - Andrzej Klusiewicz - www.jsystems.pl 4/205 Zmiana i sprawdzenie aktualnego katalogu .................................................................................... 97 Listowanie zawartości katalogu ...................................................................................................... 97 Sprawdzenie czy katalog istnieje .................................................................................................... 97 Sprawdzanie czy mamy do czynienia z plikiem czy z katalogiem ................................................. 98 Sprawdzanie wielkości pliku .......................................................................................................... 98 Tworzenie i kasowanie katalogu ..................................................................................................... 98 Kasowanie pliku .............................................................................................................................. 99 Moduł subprocess i wywoływanie komend systemu operacyjnego ..................................................... 100 Funkcja call ....................................................................................................................................... 100 Funkcja Popen ................................................................................................................................... 101 Wyrażenia regularne ............................................................................................................................. 102 Podstawowe wyszukiwanie ............................................................................................................... 102 Typy znaków ..................................................................................................................................... 103 Kwantyfikatory ilościowe ................................................................................................................. 103 Wykorzystanie symboli i kwantyfikatorów do wyszukiwania elementów według wzorca .............. 104 Testy jednostkowe - framework py.test ................................................................................................. 106 Podstawowe testy .............................................................................................................................. 106 Uruchamianie wybranych testów ....................................................................................................... 110 Parametryzacja testów ........................................................................................................................ 114 Fikstury .............................................................................................................................................. 118 Problematyka ................................................................................................................................. 118 Funkcje setup_module i teardown_module .................................................................................. 120 Dekorator @pytest.fixture............................................................................................................. 121 Makiety (Mocks) ............................................................................................................................... 125 Dane testowe ..................................................................................................................................... 126 Sprawdzanie pokrycia kodu testami ................................................................................................. 127 Wizualizacja danych ............................................................................................................................. 129 Pierwszy wykres liniowy .................................................................................................................. 129 Nanoszenie dodatkowych serii .......................................................................................................... 130 Dodawanie legendy do wykresu ....................................................................................................... 131 Etykiety osi X i Y .............................................................................................................................. 132 Zmiana rodzaju i koloru linii ............................................................................................................ 133 Siatka na wykresie ............................................................................................................................ 135 Zapisywanie wykresu do pliku ......................................................................................................... 136 Wykresy słupkowe ............................................................................................................................ 137 Zmiana koloru słupków .................................................................................................................... 138 "Python na luzie" v. 1.5 - Andrzej Klusiewicz - www.jsystems.pl 5/205 Nakładanie serii słupkowych i liniowych na siebie .......................................................................... 140 Klasy w Pythonie .................................................................................................................................. 141 Deklaracja klasy i pola ...................................................................................................................... 141 Funkcje w klasie................................................................................................................................ 145 Funkcje prywatne .............................................................................................................................. 147 Flask ....................................................................................................................................................... 149 Tworzenie projektu i mapowanie pierwszego adresu ........................................................................ 149 Konfiguracja portu nasłuchu serwera i automatyczna implementacja zmian. .................................. 151 Kod i szablony kodu HTML ................................................................................................................. 152 Przekazywanie danych do widoku i jinja2 .......................................................................................... 155 Odczyt parametrów z paska .............................................................................................................. 160 Pobieranie i umieszczanie danych w sesji .......................................................................................... 166 Obsługa formularzy ............................................................................................................................ 167 Usługi sieciowe we Flask .................................................................................................................... 169 Usługi sieciowe zwracające dane ................................................................................................... 169 Usługi sieciowe przyjmujące dane ................................................................................................. 171 ORM – SQLAlchemy ........................................................................................................................... 174 Łączenie z bazą i pierwsza encja ...................................................................................................... 174 Dodawanie danych do tabeli ............................................................................................................. 177 Pobieranie i filtrowanie danych ........................................................................................................ 177 Sortowanie wyniku ........................................................................................................................... 178 Filtracja i sortowanie w jednym ........................................................................................................ 178 Zmiana istniejących w bazie danych ................................................................................................ 179 Kasowanie danych ............................................................................................................................ 180 Podglądanie generowanego SQLa .................................................................................................... 180 Parsowanie stron internetowych z użyciem Beautiful Soup 4.4 ............................................................ 181 Instalacja pakietu ............................................................................................................................... 181 Obiekt klasy BeautifulSoup ................................................................................................................ 181 Wyszukiwanie elementów i funkcja find ............................................................................................ 183 Wyszukiwanie pierwszego wystąpienia ......................................................................................... 183 Wyszukiwanie po id elementu ....................................................................................................... 184 Wyszukiwanie po klasie css ............................................................................................................ 185 Wyszukiwanie po atrybutach elementu ........................................................................................ 186 Zagnieżdżanie .................................................................................................................................... 187 Sięganie do sekcji strony .................................................................................................................... 188 Atrybuty elementów .......................................................................................................................... 188 name i string ...................................................................................................................................... 190 Operowanie na listach elementów i funkcja find_all ......................................................................... 191 Filtrowanie elementów z funkcją find_all ...................................................................................... 192 contents ............................................................................................................................................. 194 Moduł click – obsługa parametrów z linii poleceń ............................................................................... 199 Stosowanie parametrów .................................................................................................................... 199 Stosowanie wielu parametrów .......................................................................................................... 201 Automatyczne generowanie pomocy ................................................................................................ 202 Wprowadzanie haseł ......................................................................................................................... 203 Moduł ipaddress .................................................................................................................................... 204

Similar books