Podstawy programowania w Pythonie 3800-AIK-PProgP
Ogólne wprowadzenie do programowania oraz wstęp do programowania w Pythonie z naciskiem na praktyczne zastosowania.
Główne tematy:
- Wyrażenia, w tym zmienne i pojęcie stanu obliczeń.
- Instrukcje, w tym pętle i elementy wnioskowania o nich.
- Funkcje i parametry.
- Typy danych, w tym napisy, listy, krotki, słowniki i zbiory. Pojęcie referencji.
- Pliki.
- Rekurencja.
- Wstęp do analizy złożoności algorytmów.
- Podstawowe algorytmy, w tym przykłady wyszukiwania i sortowania.
Dla cyklu 2025Z - zob. opis cyklu
|
W cyklu 2025Z:
Przedmiot wprowadza do programowania w języku Python poprzez połączenie wykładów i ćwiczeń laboratoryjnych. Na początku student konfiguruje środowisko pracy (Python, venv/pip, Jupyter Notebook/VS Code), poznaje podstawy stylu kodowania (PEP 8), typy wbudowane i model obiektowy Pythona (liczby, napisy, listy, krotki, słowniki, zbiory), instrukcje sterujące (warunki, pętle, wyrażenia listowe), funkcje (parametry, zasięg nazw), moduły i pakiety oraz mechanizmy obsługi błędów (wyjątki). Następnie przechodzi do pracy z plikami i danymi. Student wykorzystuje NumPy i Pandas do prostych transformacji danych, agregacji i łączeń tabel oraz Matplotlib do tworzenia podstawowych wizualizacji, zwracając uwagę na czytelność i poprawność interpretacji. Równolegle akcentowane są dobre praktyki inżynierskie: organizacja projektu, podstawy testów jednostkowych i czytelne komunikaty błędów. Omawiane są także elementarne pojęcia z inżynierii oprogramowania i algorytmiki (złożoność w praktyce, wybór struktur danych) w zakresie takim, by student potrafił świadomie dobierać narzędzia do problemu. Zajęcia mają charakter praktyczny i stanowią fundament do dalszych kursów z zakresu analizy danych, uczenia maszynowego i przetwarzania języka naturalnego. |
Koordynatorzy przedmiotu
W cyklu 2026Z: | W cyklu 2025Z: |
Rodzaj przedmiotu
Efekty kształcenia
Nabyta wiedza:
Student rozumie pojęcia złożoności obliczeniowej, języków interpretowanych i kompilowanych, typów danych, wyrażeń i instrukcji. Zna podstawowe konstrukcje Pythona. Zna pojęcia iteracji i rekurencji. [K_W01]
Nabyte umiejętności:
Student potrafi pisać, uruchamiać i poprawiać proste programy w Pythonie. Umie korzystać z podstawowych typów danych. Potrafi pisać programy, które czytają pliki i zapisują do nich dane. [K_U01]
Nabyte kompetencje społeczne:
Umiejętność czytania dokumentacji języków programowania, znajdowania w literaturze i w Internecie brakujących informacji, precyzyjnego formułowania zapytań, umiejętność współpracy podczas zajęć przy tworzeniu programów, docenianie roli systematycznej pracy. Umiejętność precyzyjnego formułowania algorytmów w postaci programów. [K_K02, K_K04]
Dla cyklu 2025Z - zob. opis cyklu
Kryteria oceniania
Prace domowe, klasówka i egzamin.
Dopuszczalna liczba nieobecności podlegających usprawiedliwieniu : 2 w semestrze
Dla cyklu 2025Z - zob. opis cyklu
Literatura
- Introduction to Computation and Programming Using Python, 3rd ed., 2021, John Guttag;
- Python Crash Course, a hands-on, project-based introduction to programming, 3rd ed. Eric Matthes, 2023;
- Python for Everybody: Exploring Data in Python 3, 1st ed., 2016, Charles Severance;
- Python Programming: an introduction to Computer Science, 4th ed. John Zelle, 2024;
- Learning Python: Powerful Object-Oriented Programming, Mark Lutz, 5th ed., 2025.
Dla cyklu 2025Z - zob. opis cyklu
|
W cyklu 2025Z:
- Learning Python, Mark Lutz, 5th ed., 2013. |
Uwagi
|
W cyklu 2025Z:
EFEKTY UCZENIA SIĘ Nabyta wiedza: Nabyte umiejętności: Nabyte kompetencje społeczne: KRYTERIA OCENIANIA Dopuszczalna liczba nieobecności podlegających usprawiedliwieniu: 2 w semestrze |