Szkolenie: Python średnio zaawansowany
Uczestnicy szkolenia Python średnio zaawansowany zapoznają się z biblioteką standardową Python, serializacją danych do różnych formatów i obsługą relacji. Szczególny nacisk kładziemy na praktyczne aspekty programowania oraz osadzenie technik wytwarzania oprogramowania w języku Python we współczesnych realiach. Szkolenie odpowiada potrzebom średnio zaawansowanych i zaawansowanych programistów i nie jest przeznaczone dla osób początkujących lub nieprogramujących!
- Trenerzy praktycy
- Kameralne grupy
Czas trwania szkolenia:5 dni (40h)
Kod kursu:PYTHON/MID
Python średnio zaawansowany
Cele szkolenia
Poszerzenie wiedzy dotyczącej programowania w języku Python
Zapoznanie się z alternatywnymi wersjami interpretera
Nauka refaktoringu i dobrych praktyk związanych z tworzeniem czystego kodu w języku Python
Dla kogo?
Programiści języka Python
Analitycy Danych, Data Scientist lub osoby zajmujące się Machine Learning
Zalety
Uczestnicy szkolenia Python średnio zaawansowany nauczą się korzystać z biblioteki standardowej Python
Uczestnicy zdobędą umiejętność refaktoryzacji i pracy z debuggerem
Praktyka przed teorią - wszystkie szkolenia technologiczne prowadzone są w formie warsztatowej. Konieczna teoria jest wyjaśniana na przykładzie praktycznych zadań
Konkretne umiejętności - w ramach każdego szkolenia rozwijamy praktyczne umiejętności związane z daną technologią i tematyką
Nauka z praktykami - wszyscy trenerzy na co dzień pracują w projektach, gwarantuje to dostęp do eksperckiej wiedzy i praktycznego know-how
Wymagania
Podstawowa umiejętność programowania i debugowania w języku Python
Dobra znajomość wybranego środowiska IDE (preferowany PyCharm)
Znajomość koncepcji programowania obiektowego
W cenie otrzymasz:
Materiały szkoleniowe
Certyfikat ukończenia szkolenia
W przypadku szkolenia w trybie stacjonarnym zapewnimy Ci również lunch oraz sprzęt niezbędny do nauki
Program szkolenia
Składnia
Podkreślenie
Wyrażenia z gwiazdką
Przypisanie z gwiazdką (rozpakowywanie)
Definiowanie API
Rozpakowywanie parametrów (args, *kwargs)
Rozpakowywanie argumentów (args, *kwargs)
Pattern Matching
Wprowadzenie do składni
Wzorce: literal, or, wildcard, capture, constant
Wzorce: sequence, mapping, class
Wzorce: Guard i subpattern
Locale
Encoding: ASCII, UTF-8, ISO-8859-2, CP1250
i18n, l10n
Problemy lokalizacji
Wyrażenia regularne
Składnia: literały, klasy, kotwice, negacje, kwantyfikatory, grupy, referencje wsteczne, flagi
Wyrażenia chciwe i leniwe
Wyszukiwanie wieloliniowe
Grupy nazwane, pozycyjne, niechwytające i komentarze
Korzystanie z wyrażeń regularnych w Python: findall, finditer, search, match, sub, split, compile
Daty i strefy czasowe
Tworzenie obiektów dat, standard ISO-8601, parsowanie i formatowanie - datetime
Przesunięcia czasu i dat - timedelta
Praca z timestamp - time, datetime
Obsługa stref czasowych - zoneinfo
Obsługa kalendarza - calendar
Idiomy języka Python
any, all, min, max, sorted, sum
vars, dir
Iteratory
reversed, range, enumerate, zip
map, filter
chain, permutations, product, cycle, itertools
Enum
Wstęp, IntEnum, StrEnum, Auto, Flag, Check
Pathlib
Ścieżki i pliki
Katalogi: tworzenie, modyfikacja, przeszukiwanie, kasowanie
Pliki: tworzenie, modyfikacja, wyszukiwanie, kasowanie
Moduły
Środowiska wirtualne - venv
Plik pyproject.toml
Zarządzanie zależnościami - pip, requirements.txt
Logowanie
Wykorzystanie i poziomy logowania
Warnings i oznaczanie jako przestarzałe (deprecation)
Podstawowa i plikowa konfiguracja
Formattery, handlery
Rotowanie logów i optymalizacja
Serializacja
Algorytmy i formaty serializacji
Algorytmy i sposoby deserializacji
Format Pickle
Serializacja i deserializacja obiektów, dat, relacji
Zapis do pliku, odczyt z pliku
Wersje protokołów i kompatybilność
Format TOML
Specyfika formatu i najczęstsze problemy
Odczyt danych
Format CSV
Specyfika formatu i najczęstsze problemy
Problemy lokalizacyjne: separatory, końce linii, encoding
Zapis i odczyt danych płaskich, moduł csv
Zapis i odczyt danych relacyjnych
Format JSON
Specyfika formatu i najczęstsze problemy
Zapis i odczyt prostych danych
Enkoder i dekoder dla dat i obiektów złożonych
Programowanie obiektowe
Str, repr, format obiektów
Problem mutowalnych parametów
Property
Relacje obiektów
Projekt praktyczny
Zastosowanie technologii ze szkolenia
Dobre praktyki
Wykorzystanie debuggera w IDE
Techniki refactoringu