Prezentare susținută de către Irina Archip și Viorica Marina (Societe Generale Global Solution Centre) în cadrul webinarului Predau Viitor "Introducere în Python" din 13 mai 2021.
Înregistrarea webinarului este disponibilă aici: https://www.youtube.com/watch?v=-aLT8BWKLfQ pe canalul nostru de YouTube.
Programul Predau Viitor este creat și implementat de Asociația Techsoup, cu sprijinul strategic al Romanian-American Foundation și în parteneriat cu Societe Generale Global Solution Centre și Google. www.predauviitor.ro // www.asociatiatechsoup.ro
2. INTRODUCERE IN PYTHON│C1│ 13.05.2021│ 2
LET’S MEET PYTHON
CE ESTE PYTHON?
Limbaj de programare creat de programatorul olandez Guido van Rossum in 1989
Implementarea de referință a Python este scrisă în C și poartă numele de Cpython (administrată de fundația
Python Software Foundation)
DE CE PYTHON?
STIATI
CA…
?
Termenul „Python” referitor la un limbaj de
programare este mai popular decât
faimoasa vedetă „Kim Kardashian”. Puteți
verifica acest fapt comparându-le în Google
Trends.
Pentru copii, Python este un limbaj de programare excellent pentru a incepe programarea
Dar…este necesar ca profesorii de informatică să cunoască limbajul de programare pentru a-l putea
preda copiilor
Simplu, bine înțeles și sintaxa intuitivă a limbajului (mult mai usor de inteles si scris avand sintaxa mai
apropiata de logica umana)
Este de ajutor in automatizarea activitatilor repetitive
Instrument puternic de calcul cand este necesara rezolvarea de sarcini din: Finante, Econometrie, Data
Science si Machine Learning
3. INTRODUCERE IN PYTHON│C1│ 13.05.2021│ 3
DE CE PYTHON?
TOP COMPANII:
TOP LIMBAJE PROGRAMARE:
Python a devenit din ce in ce mai popular fiind cel mai
popular limbal de programare folosit in 2020
Companii de top folosesc Python in activitatea lor
4. INTRODUCERE IN PYTHON│C1│ 13.05.2021│ 4
DE CE PYTHON?
UTILIZARE IN EDUCATIE
Este ușor de învățat! Comenzile și sintaxa sunt simple
Limbajul este clar și logic, structurat și ilustrativ, astfel încât predarea să se poată concentra mai mult pe
dezvoltarea gândirea algoritmică decât la predarea regulilor limbajului de programare
Oferă abilități reale pentru viitor – faciliteaza invatarea altor limbaje
Nu necesita mult timp pentru procesarea calculelor numerice complexe
Modalitate facila de debugging
Este gratis si acopera mai multe domenii/industrii (general purpose)
FREE √ NOT FREE ×
5. INTRODUCERE IN PYTHON│C1│ 13.05.2021│ 5
AVANTAJE SI DEZAVANTAJE
04
Text to go here go here go here go
here go here go here go here
Text to go here go here go
here go here go here go here
go here
Limitări de viteza
codul Python este executat linie cu linie
Slab în dispozitive mobile și
browsere
Design restriction => Variabilele – nu
sunt declararte si valorile lor se pot
schimba in timp
Acces redus la base de date -
Comparativ cu tehnologiile mai
utilizate pe scară largă, precum
JDBC (Java DataBase Connectivity)
și ODBC (Open DataBase
Connectivity)
01
02
03
Text to go here go here go
here go here go here go here
go here
Text to go here go here go here go here go
here go here go here
Mai putina codificare
Biblioteci extinse
Accesibil - Limbaj open-source
(gratuit) cu o comunitate stiintifica
vasta si activa cu acces la codul
sursa software
Cross-Platform (disponibil pentru toate
sistemele de operare importante ca
Windwos, Mac si Linux)
Extensibil
Incorporabil
Productivitate îmbunătățită
Simplitatea limbajului și bibliotecile
extinse fac programatorii mai productivi
decât limbajele cum ar fi Java și C ++
Orientat pe obiecte
- clasele și obiectele ne permit să
modelăm lumea reală.
Portabil - Write Once Run Anywhere
(WORA)
Interpretat
Deoarece instrucțiunile sunt
executate una câte una, depanarea
este mai ușoară decât în limbile
compilate
Avantaje Dezavantaje
6. INTRODUCERE IN PYTHON│C1│ 13.05.2021│ 6
APLICABILITATE
Acces la baze de date
Dezvoltari software
Aplicatii numerice
Automatizare
Dezvoltari in Web si pentru
internet
Prototipuri
Inteligenta artificiala
si Machine Learning
Jocuri si grafice 3D
Afaceri
Educatie
Aplicabilitatea
Python
7. INTRODUCERE IN PYTHON│C1│ 13.05.2021│ 7
PROCESUL DE INVATARE
Invatare
Exersare
Dezvoltare
Pasul 1: Consolidați
elementele de bază
- înțelegeți termenii și
conceptele legate de
programare
- învățați sintaxa de bază,
variabilele și tipurile de date.
Pasul 2: Invatati
comenzile de luare a
deciziilor si de control
- Conditie: if then else
- Loops: implementare sarcini
repetitive
Pasul 3: Stăpâniți
programarea orientată pe
obiecte (Oop)
- utilizare de obiecte și clase
- utile pentru aplicatiile la scara larga
- sunt ușor de întreținut
Pasul 4: Exersați
programme
- Nu uitati sa exersati!
Pasul 5: Creați aplicații web
utilizând Frameworks
- framework-uri populare Django și
Flask
Pasul 6: Dobanditi
abilitati de Machine
Learning and Data
Science
- Lumea ML and DS depinde mult
de Python
Pasul 7: Lucrați la
proiecte Python
- construiți ceva din toate lucrurile
pe care le-ați învățat. - realizați un
proiect major integrând totul.
8. INTRODUCERE IN PYTHON│C1│ 13.05.2021│ 8
PYTHON AND JUPYTER
Aplicatia notebook Jupyter (aplicatie server-client care permite editarea codului
printr-un browser Web)
Jupyter este folosita in corporatii precum: Google, Microsoft si IBM
datorita designului sau
Este potrivita pentru demonstratii ale conceptelor de programare si de formare
pentru mariile corporatii
Permite utilizarea aceleasi structuri a tipului de fisier notebook ce se va conecta
kernelul de limba solicitat (PHP, Julia, R etc)
Fisierul poate fi stocat usor local sau pe server facilitand comunicare intre
echipe intr-o corporatie
Contine text, cod si output (rezultate, poze,
grafice si altele)
Link: www.anaconda.com
9. INTRODUCERE IN PYTHON│C1│ 13.05.2021│ 9
CADRUL SI BIBLIOTECI PYTHON
Data Science
1. TensorFlow (dezvoltare algoritmi pentru Machine Learning)
2. Scikit-learn (asociata cu NumPy and SciPy, considerata cea mai buna pentru lucrul cu data complexe)
3. Numpy (cea mai populara librarie pentru machine learning si calcule complexe)
4. Keras (retele neuronale, procesare seturi de date, vizualizari de grafice)
5. PyTorch (inteligenta artificiala, APIs pentru retele neuronale, accelerare GPU, calcul automat de distante)
6. LightGBM (machine learning pe algortim de arbore de decizie)
7. Eli5 (vizualizare si debugging pentru modelele de machine learning)
8. SciPy (module pentru optimizare, algebra liniara, integrare si statistica)
9. Theano (computing multidimensional arrays)
10. Pandas (data analysis prin grupare, concatenare, filtrare si analiza de serii de timp)
Web Development
1. Django (dezvoltare rapida de site-uri web cu securitate ridicata)
2. WebPy (librarie de web development usor de utilizat)
3. WebApp2 (un URI routing mult mai bun)
4. Pyramid (rapida, potrivita pentru real-world apps, are incorporate functionalitati pentru a simplifica
dezvoltarea)
5. TurboGears (arhitectura MVC similara cu Ruby)
10. INTRODUCERE IN PYTHON│C1│ 13.05.2021│ 10
CADRUL SI BIBLIOTECI PYTHON
Dezvolare jocuri
1. Pygame (scriere jocuri video)
2. PyKyra (SDL si Kira engine; MPEG video, direct image reading
3. Cocos2d (jocuri, aplicatii si programte interactive)
4. Panda3D (scriere jocuri 3D)
5. Pyglet (jocuri si aplicatii multimedia ce ruleaza pe Windows, Mac OS X si Linux sub licenta BSD)
Procesare imagini
1. Scikit-image (procesare imagini incluzand algoritmi pentru segmentare, transformari geometrice, culoare,
detectie)
2. OpenCV (analiza video si de imagine, editare foto, robotica visuala avansata, recunoastere faciala)
3. Mahotas (AI si procesare de imagini)
4. SimpleITK (analiza de imagini avansata pentru comunitatea stiintifica, segmentare)
5. Pillow (suport pentru deschiderea, manipularea si salvarea multor formare de fisiere de imagine)
11. INTRODUCERE IN PYTHON│C1│ 13.05.2021│ 11
PYTHON IN PRACTICA
Exemple de proiecte dezvoltate utilizand Python
1.Fake News Detection Python Project
2.Parkinson’s Disease Detection Python Project
3.Speech Emotion Recognition Python Project
4.Breast Cancer Classification Python Project
5.Age and Gender Detection Python Project
6.Chatbot Python Project
7.Driver Drowsiness Detection Python Project
8.Traffic Signs Recognition Python Project
9.Image Caption Generator Python Project
12. INTRODUCERE IN PYTHON│C1│ 13.05.2021│ 12
STUDIU INDIVIDUAL
Recomandari carti Python:
1.Automate the Boring Stuff with Python – Al Sweigart
2.Python for Dummies – John Shovic
3.Python for Kids – Sean Damon
4.Python Cookbook – David Beazley
5.Real Python (eBook)