This is an old revision of the document!
Laboratorul 01. Introducere
Setup Python
Python este un limbaj de programare de nivel înalt, interpretat și versatil, ideal pentru o gamă largă de aplicații, oferind atât simplitate, cât și eficiență în dezvoltarea software. Unul dintre principalele avantaje ale Python este comunitatea sa, care contribuie la o colecție extinsă de biblioteci și framework-uri. Aceste resurse facilitează dezvoltarea rapidă a aplicațiilor în diverse domenii, precum:
Dezvoltare web. Framework-uri precum Django și Flask permit crearea de aplicații web robuste și scalabile.
Data analytics și data science. Biblioteci precum NumPy, pandas și Matplotlib sunt esențiale pentru manipularea și vizualizarea datelor.
Inteligență artificială și învățare automată. Biblioteci precum TensorFlow și scikit-learn facilitează dezvoltarea de modele predictive și algoritmi de învățare automată.
Automatizare și scripting. Python este adesea utilizat pentru automatizarea sarcinilor repetitive.
Python poate fi descărcat și instalat de aici.
Odată instalat Python, pentru ușurință sugestia este să adăugați executabilul în path în variabile de mediu.
Mediu Virtual
În Python, venv este un modul integrat care permite crearea de medii virtuale — spații izolate în care se pot instala pachete Python fără a afecta setările globale ale sistemului. Acest lucru este util pentru gestionarea dependențelor în proiecte diferite și pentru evitarea conflictelor între versiuni de pachete.
Pentru a crea un mediu virtual pentru proiectul curent, într-un terminal se merge în folderul proiectului și se rulează comanda:
python3 -m venv virtual_environment_name
Pe urmă, acest mediu virtual trebuie activat:
source virtual_environment_name/bin/activate
virtual_environment_name\Scripts\activate
Pentru a dezactiva mediul virtual și a reveni la mediul global, se rulează comanda:
deactivate
Avantajele utilizării venv:
Izolare. Fiecare mediu virtual are propriul set de pachete, prevenind conflictele între proiecte
Gestionarea dependențelor. Permite instalarea versiunilor specifice ale pachetelor necesare pentru un proiect, fără a interfera cu alte proiecte
Portabilitate. Facilitează replicarea mediului de dezvoltare pe alte sisteme, asigurând consistența între diferite medii de lucru.
Biblioteci Utile
Tasks
Generați un grid de culori alese aleator.
Generați aleator o hartă 2D folosind simboluri (~ pentru apă, # pentru munți, . pentru câmpii). Folosiți probabilități pentru a asigna tipul de teren generat.
Bonus 1. Modificați primul task astfel încât gridul de culori să se regenereze la apăsarea unei taste.
Bonus 2. Modificați al doilea task astfel încât să salvați harta de simboluri ca o imagine PNG.