Newsletter
Podaj swój adres e-mail, jeżeli chcesz otrzymywać informacje o nowościach i promocjach.
Twoje dane będą przetwarzane zgodnie z naszą polityką prywatności
Kurs Semestralny - szczegółowa lista tematów

Na kursie semestralnym poruszamy następujące kwestie w ramach omawianych tematów. Każde zajęcia zawierają przedstawienie teoretyczne zagadnień, proste ćwiczenia wykonywane podczas zajęć (samodzielnie lub razem z prowadzącymi), zakończone są zestawem zadań do samodzielnego rozwiązania pomiędzy zajęciami, które umożliwiają utrwalenie i rozszerzenie poznanego materiału. Niektóre tematy zawierają też dodatkowe elementy - warte opanowania, ale nieomawiane podczas samych zajęć.

Szczegółowy zakres kursu przeznaczony jest dla osób posiadających już pewną wiedzę na temat programowania, zarówno w Pythonie jak i w innych językach.

Jeśli nie rozumiesz, co tu jest napisane - nic nie szkodzi, zrozumiesz po kursie! :)

 

Część pierwsza - składnia języka Python:

1. Instalacja i przygotowanie środowiska, pierwszy skrypt Hello World, operacje na liczbach i napisach

  • wprowadzenie do środowiska Code With Mu, obsługa innych środowisk
  • plik skryptów .py, uruchamianie skryptów, pisanie kodu i odczytywanie wyników na konsoli
  • pierwszy program "Hello World" (instrukcja print)
  • proste programy z wyświetlaniem napisów i obliczeniami
  • liczby i napisy (stringi) - podobieństwa, różnice, możliwe operacje, przechodzenie pomiędzy typami (rzutowanie)
  • znaki specjalne w stringach
  • zapis stringów z apostrofami i cudzysłowami
  • programy wielolinijkowe, wyświetlanie wielu instrukcji w jednej linijce
  • komentarze w kodzie

2. Działania na zmiennych, typy liczbowe, typy logiczne, instrukcja warunkowa if-elif-else

  • pojęcie zmiennej i działania na zmiennych
  • pobieranie danych od użytkownika (input)
  • charakterystyka i nazewnictwo zmiennych
  • słowa kluczowe w Pythonie
  • dynamiczne typowanie zmiennych - typ int, string, float
  • wartości logiczne - True i False
  • operacje porównań logicznych (równość, porównanie, różność)
  • instrukcja wyboru if
  • instrukcje z alternatywą if-else
  • instrukcje z wieloma alternatywami if-elif-else
  • łączenie warunków logicznych (and i or)
  • jednolinijkowy if-else (operator trójargumentowy)

3. Grupowanie danych w Pythonie - kolekcje i operacje na nich (listy, krotki, słowniki, sety)

  • przykłady kolekcji i typy kolekcji w Pythonie
  • lista jako podstawowa kolekcja elementów
  • indeksowanie i własności list
  • operacje na listach (modyfikacja elementów, dołączanie, wklejanie, zdejmowanie elementów, odwracanie listy, łączenie list, mnożenie przez liczbę)
  • wycinki list (slice) - indeksowanie
  • krotki (tuple) - niemodyfikowalne listy, przykłady, charakterystyka
  • słowniki (dict) - struktury par klucz-wartość, przykłady, charakterystyka
  • operacje na słownikach - tworzenie, dodawanie elementów, usuwanie elementów, odczytanie kluczy lub wartości
  • zbiory (set) - struktury o unikalnych elementach, przykłady, charakterystyka
  • operacje na zbiorach - tworzenie, dodawanie elementów, usuwanie elementów, sprawdzanie czy element jest w zbiorze
  • napisy - operacje jak na listach
  • deklaracja kolekcji pustych
  • konwersja między typami (rzutowanie i jego konsekwencje)

4. Automatyzacja kodu - pętle for, while, pętle zagnieżdżone, generatory list

  • pętla jako sposób na uproszczenie kodu
  • pętla for - składnia, przykłady, kolejność wykonywania operacji
  • generator range() do pracy z zakresem liczb, użycie w pętli for
  • pętla while - składnia, przykłady, kolejność wykonywania operacji
  • pętla nieskończona
  • instrukcje break i continue
  • łączenie pętli z instrukcjami if-else, przerywanie pętli
  • pęfla for - iterowanie po kolekcjach
  • generator listy - list comprehension, przykłady
  • pętle zagnieżdżone ("pętla w pętli")
  • konstrukcje for-else oraz while-else

5. Grupowanie kodu - tworzenie i wywoływanie funkcji

  • funkcja jako sposób na grupowanie kodu, poznane dotychczas funkcje
  • funkcja jako "black box" - input, output, ciało funkcji, wywoływanie funkcji
  • składnia i przykłady funkcji
  • zwracanie wartości - instrukcja return
  • nazewnictwo w funkcjach - parametry, argumenty, zwracany typ, dobre praktyki w tworzeniu funkcji
  • parametry o domyślnych wartościach
  • wywoływanie z jawnymi parametrami
  • rekurencja - wywołanie funkcji przez samą siebie
  • zasięg zmiennych w funkcji (lokalne i globalne)
  • wyrażenia lambda - funkcje anonimowe
  • funkcje ze zmienną liczbą parametrów

6. Poszerzanie możliwości programów - importowanie wbudowanych modułów (m.in. math, random, time, datetime)

  • importowanie modułów, biblioteka standardowa Pythona
  • moduł random - losowanie liczb
  • moduł math - operacje matematyczne
  • moduł time - przerywanie programu, mierzenie czasu trwania programów, wyświetlanie godziny, czas unixowy
  • moduł datetime - praca z czasem i kalendarzem
  • moduł keyword - słowa kluczowe w Pythonie
  • różne sposoby importowania modułów (aliasy, from - import, import *)
  • dokumentacja języka Python - inne moduły warte poznania
  • funkcja dir()
  • tworzenie własnych modułów
  • pakiety jako zbiory modułów, __init__.py, __name__

7. Operacje na plikach i przetwarzanie tekstu, obsługa wyjątków

  • podstawowe operacje na plikach w Pythonie - funkcja open(), handler pliku, tryb otwarcia
  • różne sposoby odczytu plików - odczyt całego pliku, n linii, jednej linii, wszystkich linii
  • zamykanie pliku - funkcja close()
  • konstrukcja with-as do pracy z plikami
  • zapis do pliku - tryby write i append
  • wyjątki jako nieoczekiwane błędy programu, przykłady wyjątków
  • obsługa wyjątków - konstrukcja try-except
  • instrukcja finally
  • rzucanie wyjątków (raise)
  • podstawowe wyjątki do obsługi w programach - praca z dokumentacją
  • konstrukcja try-else

8. Podstawy programowania obiektowego w Pythonie

  • programowanie proceduralne i obiektowe - charakterystyka
  • charakterystyka obiektów, przykłady
  • nazewnictwo w programowaniu obiektowym (klasa, obiekt, stan, operacje, pola, metody)
  • projektowanie klas w języku Python, przykłady
  • tworzenie obiektów, ustawianie wartości pól i ich odczyt, wywołanie metod
  • konstruktor klasy - metoda __init__()
  • dziedziczenie klas, drzewo dziedziczenia, przykłady
  • agregacja, przykłady

Część druga - narzędzia Pythona do Data Science:

9. Środowisko Anaconda / Jupyter Notebook, instalowanie pakietów, tworzenie wykresów - biblioteka Matplotlib

  • praca z notatnikami Jupyter Notebook, uruchamianie kodu, podział na komórki, praca z komórkami, skróty klawiszowe
  • instalacja bibliotek zewnętrznych w Pythonie
  • generowanie danych do wykresów
  • proste wykresy w Matplotlib - plot, znaczniki danych (markery), kolory i kształty linii
  • wykres funkcji y= f(x), wiele danych na jednym wykresie
  • wykresy słupkowe (bar), wykresy kołowe (pie)
  • wiele wykresów na jednym oknie (subplot)
  • histogramy
  • symbole matematyczne

10. Pliki danych CSV i JSON, korzystanie z REST API - biblioteka Requests

  • pliki danych CSV/JSON jako "małe" bazy danych
  • format pliku CSV - header, separator, standardy
  • plik CSV w Pythonie - odczyt klasycznie, odczyt z modułem csv, zapis danych
  • format pliku JSON - zagnieżdżanie słowników i list, moduł pprint
  • plik JSON - odczyt danych, zapis danych, moduł json, odczyt i zapis danych surowych
  • biblioteka Requests
  • pobieranie danych z REST API, przetwarzanie i odczyt danych
  • przetwarzanie surowego tekstu z requests
  • pobieranie danych i wyświetlanie wykresu w Matplotlib

11. Obliczenia numeryczne, typ ndarray - biblioteka Numpy

  • biblioteka Numpy do obliczeń numerycznych
  • typ danych ndarray - charakterystyka, podobieństwa i różnice tablic ndarray z klasycznymi listami
  • predefiniowane tablice, podstawowe generatory (zeros, ones, linspace, arange, random)
  • tablice N-wymiarowe - kształt, rozmiar, indeksowanie w Numpy, wycinki tablic
  • operacje na elementach tablic
  • funkcje matematyczne i statystyczne w Numpy
  • generowanie danych z rozkładów statystycznych, histogram rozkładu
  • odczyt danych z pliku TXT, przetwarzanie danych, rysowanie wykresu
  • macierze w Numpy
  • maski tablicy, operacje logiczne na elementach, konstrukcja where
  • filtrowanie i "naprawa" danych z Numpy
  • biblioteka Scipy - rozszerzenie Numpy do prac naukowych

12. Pobieranie i obróbka danych, Data Series i Data Frame - biblioteka Pandas

  • biblioteka Pandas do pracy z danymi tabelarycznymi
  • struktury danych w Pandas: Data Series i Data Frame
  • Data Series - tworzenie serii z listy, tablicy Numpy, słownika, indeksowanie, podstawowe operacje
  • Data Frame - tworzenie tabeli z listy, tablicy wielowymiarowej, słownika, pojęcie indeksów i kolumn
  • różne sposoby odwołania do indeksów, kolumn i elementów w Data Frame, własności Data Frame
  • łączenie danych (concat)
  • edycja kolumn, dodawanie nowych kolumn, zmiana nazw, łączenie zawartości wielu kolumn
  • odczyt plików CSV i Excel w Pandas, szybkie charakterystyki
  • filtrowanie danych
  • grupowanie danych (groupby)
  • wartości unikalne i duplikaty
  • obsługa brakujących danych (NaN)
  • przetwarzanie danych - funkcja map() i wyrażenia lambda
  • zapis do plików CSV i Excel
  • odczyt i zapis danych z Rest API / JSON

13. Praca w parze ze sztuczną inteligencją - używanie ChatGPT do nauki i pisania programów!

  • generowanie kodu w ChatGPT, prompt engineering
  • sposoby na poprawianie odpowiedzi, zasady Clean Code, stosowanie PEP8
  • charakterystyka typowego kodu generowanego przez AI
  • walidacja i testowanie kodu z AI
  • dostosowanie kodu do modelu danych (przykład pliku CSV oraz web scrapping)
  • nauka programowania ze sztuczną inteligencją
  • przyszłościowy zawód - "promptista"
do góry
Sklep jest w trybie podglądu
Pokaż pełną wersję strony
Sklep internetowy Shoper.pl