Fundamente esențiale Python: acoperă elementele de bază pentru dezvoltarea de zi cu zi.
Hands‑on cu structuri de date, funcții, module și OOP.
Parcurgi error handling, testing, packaging și medii virtuale.
Dobândești experiență practică prin ~70% coding labs ghidate.
Cum te ajută: capeți încredere în Python pentru scripturi, aplicații și librării.
Cui i se adresează: conceput pentru începători sau pentru consolidarea bazelor.
Include material opțional despre librării standard și unelte third‑party utile.
Curriculum
Introducere în Python
- Instalare, REPL, primele linii de cod; rularea scripturilor
- Sintaxă esențială și mindset-ul „pythonic” (readability, EAFP vs LBYL)
- Tipuri de bază: numbers, bool, str vs bytes (noțiuni Unicode), lists/tuples/sets/dicts, slicing & comprehension basics
- Excepții și patternuri de tratare a erorilor
- I/O de bază: open/read/write cu context managers; paths cu pathlib
More I/O (fișiere & formate)
- CSV, JSON și XML simplu; overview rapid pentru PDF/text
- I/O binar, seeking și file locking (pe scurt)
- Lucrul cu date/timp (datetime) și fusuri orare (overview)
Programare funcțională practică
- Funcții ca valori; lambda, map/filter (când merită)
- Comprehensions și generator expressions
- Closures, partials și mini‑pipelines
- Iterators & generators: yield, yield from
OOP practic în Python
- Clase & obiecte; dunder methods; properties
- Compoziție și moștenire (single & multiple)
- Data classes pentru structuri de date simple
- Decoratori pentru funcții/metode; descriptori simpli
Subiecte diverse (unelte care contează)
- Expresii regulate (re) — patternuri practice
- Concurrency: intro la threading vs multiprocessing; când merită asyncio
- Noțiuni de networking: sockets și un mic client/server
Setup de mediu & workflow
- Bazele venv/virtualenv; pip și PyPI; requirements.txt vs pyproject.toml (brief)
- Package managers: pipx/conda (unde ajută)
- Editoare, linters & formatters: ruff/flake8, black; tips de debugging
Crearea de pachete & biblioteci externe
- Structura proiectului și modules/packages
- Instalarea unei biblioteci din PyPI; cum citim eficient documentația
- Intro la împachetarea unei biblioteci simple (wheel)
Soluții ad‑hoc la probleme propuse de cursanți
- Mini‑proiecte propuse de participanți; design și implementare ghidată
Module opționale
Opțional — Testing & typing
- Bazele pytest; fixtures simple și parametrizare
- Type hints 101; mypy ca verificare rapidă
Structura zilei de curs
- Part 1: 09:00–10:30
- Break: 10:30–10:45
- Part 2: 10:45–12:15
- Lunch break: 12:15–13:15
- Part 3: 13:15–15:15
- Break: 15:15–15:30
- Part 4: 15:30–17:30