0% au considerat acest document util (0 voturi)
130 vizualizări

Python Course

Încărcat de

clara lorena
Drepturi de autor
© © All Rights Reserved
Respectăm cu strictețe drepturile privind conținutul. Dacă suspectați că acesta este conținutul dumneavoastră, reclamați-l aici.
Formate disponibile
Descărcați ca DOCX, PDF, TXT sau citiți online pe Scribd
0% au considerat acest document util (0 voturi)
130 vizualizări

Python Course

Încărcat de

clara lorena
Drepturi de autor
© © All Rights Reserved
Respectăm cu strictețe drepturile privind conținutul. Dacă suspectați că acesta este conținutul dumneavoastră, reclamați-l aici.
Formate disponibile
Descărcați ca DOCX, PDF, TXT sau citiți online pe Scribd
Sunteți pe pagina 1/ 24

Python Course

Programare in Python: Ghidul complet pentru incepatori - TeachBit.ro

Downloads:

Download Python | Python.org

Documentation for Visual Studio Code

+ extensia de python Microsoft

PAROLE

Calculator

Student – student

Sala transformers

Wi Fi Transformers

stepit_novo

Cladirea NOVO

Curs 1: 24.10.2023

Compilator
Interpretator

Bazele proramarii OOP

Structuri de date

Desugn pattern C – structurare cod

INREGISTRARI

Sudentstepitacademy, nu pe MYSTAT

TEAMS rosulorena

Files – recordings – download

70% prezenta / teme/ nota 7 la examen

MY Stat – teme si diamante

DESIGN PATTERNS – cum se potrivesc obiectele – ca un adaptor

Structuri de date – liste, grafuri, coada, stiva

Cum stocam – legaturi intre ele – modelare

Functia (apropiat de macro) – notiuni de baza

Algoritm – pasi – ce sa faca cu acele date

Procesare de date- programare

Calculatorul intelege codul binar

Compilat (traducere in 0 si 1. Nu interpreteaza (mai apare un om care stie ambele limbi – un


interpretator).

Python este un interpretator care interpreteaza in co binar.

Rust / C sunt limbaje de system – compilat/ transformat in 0 si 1 – fara middle man -interpretator (cum
este pyton)

C+ = limbaje de system, PROCESUL

Date- Python (sa lucrezi cu finalitatea)

Visual studio code este un IDE

Python download version 3.12.0

Python.org – open source

Code.visualstudio.com

Java si C sharp – closed source- cand incepi sa faci bani din codul scris in aceste programe, platesti
developerii
Unde scrii textul Python (editare) – Visual Studio Code- Microsoft

Command Prompt – interpretator (sa vorbeasca cu el)

Visual Studio – este pentru C Sharp

Visual Studio Code este pentru Python, se foloseste si pentru C

PiCharm – nu este gratit si este foarte complex

(Get Brains) – Web Storm si CLion – sunt cu plata

Visual Studio Code – Scrii in HTMP/CSS – ruleaza si in browser

C+ Compilator

Scrii in Binar – nu mai este nevoie de nimic

Vscode.dev – Visual Studio Code -ONLINE BROWSER

Linia de comanda – DOS (Ecran negru)

Command Prompt – CMP – Comenzi (DIR - ca sa vezi ce e in folder =>=>=> >>> Merge Python

Python 3 – il cauti cu py

% - restul impartirii

Variabile a+b (a=7/ b=8)

Fisier – Fisier VS Code -> Interpreteaza fisierul in PYTHON – interpreteaza linie cu linie

Nu se intoarce daca nu spui si nu ruleaza ce ai schimbat ulterior. Trebuie sa rerulezi.

STEPITADMIN

STEPITADMIN19771217

a=1

b=2

a+b enter 3

nu poti modifica linia - daca a luat comanda, nu mai reviine la ea daca o modifici – o iei de la inceput

Se excuta linear (pe rand) – sincron – nu lucreaza in paralel

asincronicitate – in alte limbaje si in module avansate de python

All commands Ctrl+shift+P

Open file Ctrl+O

Open folder Ctrl+K Ctrl+O

Open recent Ctrl+R


Version - Source Control

Debug

Extensions – Functionalitati (C/Python) – costumizare

Software testing – extensie

Lucrezi cu foldere – ca fisiere

File – Open folder – Yes (Rulam) – stanga – L1

Instalare Extensie – extensia PYTHON de la Microsoft

Apare Testing (iconita)

Intel sense (Pylance)

Ceva.py – fisierul are extensia .py – Format

In text – sa nu sublinieze cu rosu

CMD – la interpretator – Python

Arata unde sunt – cum ajungi pe desktop

CD - Desktop – te trimite la locatie

DIR – iti spune ce e in el

Important !!! – sa nu fii direct in interpretator <<<, ci in Windows

Cd desktop, locatie

Dir ce ai pe desktop

(sau ls) – pe linux/IOS

Dir – ce este in folder

Cd – vrei sa intri in folder

Gasesti folderul urmator si iI directionezi cu cd

C://Users… Path….python novo 4 (l1)

Visual sStudio Code -> iconita (Start) Click dreapta – Run as administrator (Poti crea folder)

Ceva.py cu bulina nu e salvat

Cu x este salvat (dreapta sus unde este selectat)

File -> Comand+S

Sua file -> Autosave bifat

Dir -3bies
3 – cate caractere sunt in acel file

File – autosave (bifare)

Py spatiu ceva.py

./ => nu mai arata eroare in CMP

Trebuie sa scrii si extensia.

Py spatiu ceva.py

Butonul de Run and Debug (Ctrl+Shift+D) arata faptul ca ai instalat extensia.

>>> vorbesti direct cu interpretatorul EXIT () – ca sa iesi sau sa iesi direct si sa redeschizi CMD

py (in CMD) – vorbesti direct cu interpretatorul

Afisare in consola CMD PRINT ()

Sageata sus Enter – preluare ultimele comezi

VS Code … terminal – New Terminal

Py cartof.py – gaseste

Sau ceva.py – gaseste

Din format POWERSHELL -> in format CMD

X ascunde

Cosul de gunoi – sterge sau inchide acel terminal

In fereastra de terminal + cu sageata jos - CMD (fereastra)

Powershell -> schimbi in CMD (selecteaza default profile)

Triunghiul RUN Buton – Dreapta sus – Ruleaza comanda

( se gaseste fereastra terminal inchisa cu x)

Date = variatia unui obiect in timp

True/False

4 tipuri de date / informatii primitive

1.Valoare – ce vrei sa ii ceri – intuieste

Numar (5->10) – cu spatou (cu rosu) – 2 numere

Virgula – nu este OK (punctul este OK)

Boolean – valori booleane


Litera mare ! False sau Mca (print)

Textile pot fi numere

“” ‘’ = TEXT

***TEXT***

Valoare – cifra, cuvant “”

Cuvant cheie (in limbaj) – gen Def

Def – Defined – Nu poti scrie acel cuvand fara “” pentru ca ia o comanda – parte din limbaj (structura)

Lucruri definite – PRINT (galben) = Functie /Variabnile/Clase/Decoratori)

Functie = reteta

Variabilele- cutie (date puse undeva cu eticheta)

Memorie permanenta / temporara

Nu folosim SPATII pentru variabile si nici caractere specilale

CamelCase – tip de scris cu capitalizez letters SpatiiMari

SnakeCase – despartite cu _ (linie jos) spatii_mari

Sunt case sensitive – trebuie scris numai intr-un case – nu poti sa incepi cu camel si sa continuni cu snake

Numar_copii=7

Print(numar _copii+5)

NU TINE CONT DE SPATII

Liniile separa comenzile

In python

In alte limbaje folosim ;

Anulare bucata cod – rulare pe bucati – nu poti

Comenzile liniare – se ancomewnteaza cu # in fata liniei

Nu va mai lua in seama ce e scris (comentarii pentru colegii care citesc codul)

(Jupiter) Notebooks – rulezi bucati de cod pentru analiza de date (ca in xls)

Faci mai multe fisiere ca sa ai codul pe bucati

Afisare **** => print (“****”)


Cursul 2 26.10.2023

latura = 5

aria = latura **2

print(f"Calculez aria...Aria unui patrat cu latura de {latura}cm este {aria}cm")

SIMPLIST:

a=5

b = a **2

print("Calculez aria...")

print("Aria unui patrat cu latura de", a, "cm este", b, "cm")

Curs 3 31.10.2023

Made.py

Operatori

Modulo

Plus minus

Imaprtite intreaga si modulo

Operatorul and intre 2 true= true

Logici si matematici

Binari

Flow contrrolers- cuvinte cheie – modul in care s eparcurge codul

Aplicatie pos

781.99

De plata nr – 45.98

Plata esuata sau plata reusita

Print plata esuata


Prinst plata reusita

Blocuri conditionale- dcaa bucata de cod e executata

Blocuri repetitive – de cate ori este repetata aceea bucata de cod

Functii clase

2 categ de operatori- variabile si bloc controolere = turing complete cand pot isa dezvolti orice cu el

S apoti s ate inorci in cod – turing complete- pot isa faci orice cu el

If- blocul conditional ce ne permite sa rezolvam prolema aceatsa

Run and Debugging- scriere incorecta

Escape daca ruleaza gresit

Sageata de rulare in dreapta- sageata de langa – run py file si debug py file – se incarca o interfata si
ruleaza aplicatia cu dezinsectie – break points – puncta in care drim s aoprim executia

Bara din stanga numerelor- cerculete rosi – cerculetul ramane aprins – click pe 2 – locul unde vrem sa
oprim executia codului – numai cand rulam in debug mod- ramane ultima rulare care ati facut -o cu
gandacel

Rularea simpla executa rapid – cea cu debuger ruleaza ai greu

Interfata de debugging – stanga fereastra – panou de control pe centrul ecranului se poate muta in
stanga

Primul buton – continua, mergi mai departe dupa punctul breack

Al doilea – step over – treci la linia urmatoare – iti permite sa execute linie cu linie

Al treilea – si al patrulea – te lasa sa intri in codul functiei

Penultimul – restart/resetare- acnd schimbi ceva in cod – reia aplicatia

Ultimul – stop

Numele de variabile nu pot contine spatii

Erorile sunt de 2 tipurei – de sintaxa – nu ruleaza apare eroarea iti spune cam ce ai putea sa schimbi

Erori de logica – codul e scris bine, dar ceva e in neregula

// - nu e eroare de sintaxa pt ca merge codul – dar da erori de calcul / logica

Debugging -pui break point – debuggerul te ajuta s arulezi pas cu aps , nu gaseste el eroarea.

Stanga valorile variabilelor

Tu observe ce e in neregula
Te ajuta s avezi I cod cu ce valori lu crezi

Stepover

Cota – urmaresti variabilele

Ruleaza linie cu linie - eroare de respectare reguli programare

Sintaxa e corecta dar da 0 din cauza //la 19/100 19% si gresesti scriind 19//100

Si erori de scriere efectiva a codului

0 division error – nu poti imparti la 0 – nu sunt bune valorile, nu sintaxa

Adunare string cu un numar- nu se pot aduna

Watch – pui expresii pe care le poti calcula – monitorizare – s epun numai in bara de debugging – in
stanga – ruleaza pana la bulna rosie – ce e in watch, se parat sunt variabilele – nu fac parte din cod, ci
din aplicatia in care lucram (vs code)

Cand dai debug – watch este o expresie care se va calcula in permanenta (dinamic) -si daca iti calculeaza
mereu tva-ul nu poti sa gresesti calculele ulterioare care folosesc mereu TVA-ul, adaugare de valori
calculate pe care le pot monitoriza

Nu se fac atribuiri- vrei sa vezi anumite lucruri – sa vede, de ex care este cel mai inalt din clasa – functia
max

Sa observ ce se intampla pe parcurs- monitorizam valorile varibilelor pas cu pas

Incepe de la inceput pana unde pui break pointul, nu rulezi bucati de cod, se opreste und epui
breakpoint-ul si o iei de la inceput apoi.

Stepover, pot sa omit anumitre linii

If for while – flow controlers – ce anume cauta ca sa ruleze

Stop – ca sa scrii din nou in cod, ramane break pointul, ca s ail scoti treb sa il apesi din nou.

IF – plata esuata si plata reusita

Blcocul opriunea – daca executa aceea linie sau nu

If nu avvem paranteze – valoare logica sau o operatie care intoarce o valoare logica (true/false)

Scris cu aliniat dam un tab – etse necesar

In late limbaje se scrie cu {}


liniile care se scriu fara aliniat – conditie adevarata

Linia aceea se va intampla oricum

Tab e dupa if

Mai pui un if sau un else ca sa ia si linia cealalta


Altfel nu iti ia if si pe adoua linie

Conteaza aliniatele

Intr-un if poti avea mai multe linii

Ca o lista : si scrierea cu aliniat

If int un if mai pui un tab

Ca sa se opreste – se opreste la prima ;linie care nu e scrisa cu aliniat

Aliniat – cu TAB

: este un soi de than

Spatial : si tab sunt obligatoriu pt toate liniile din if

Trebuie scrisa variabila cum a fost scrisa initial

Liniile goale nu le baga in seama

If – doar linia corespondenta daca este pe aceeasi conditie TRUE

If else sau else/if daca bani in connd<decat de plata print plata esuata

Else – permite sa execut ceva daca aceatsa conditie este falsa – daca asta e falsa fa asta

Else:print plata reusita

Opusul lui < este > sau egal

Else inseamna in cazula sta mai mare sua egal (cu ce este echivalenta condittia else)

Else/if

Ai grija ca ai suma aceea in cont

If bani in cont = = de plata

Print sold zero

If bani in cont > de plata

Print plata reusita

If bani in cont < de plata


print plata esuata

Merge si cu else if

Elese este pt if ul de deasupra lui, nu pt toate de deasupra lui, doar primul if de de asupra lui- if else este
la iful precedent, nu avem else fara if

If in else si if in if – pot s afie


Else verifica daca e mai mare sau mai mic

In cazurile din else ajungem doar daca nu a fost egal

Daca e = o face doar pe aceea – afiseaza la limuta si nu maia re treaba cu elseul- ruleaza 3 intrebari doar
daca nu e egal - proces de optimizare

Bucata d ecod s eintampla doar daca nu s-au intamplat celelalte bucati de cod

Else/it – prescurtat in elif= altfel daca – este in else cu o conditie

Elsul de la final imi ia toate conditiile

If if if – si doar un else – nu sunt toate necesare

Nu pot avea un else singur, sua un elif singur – la ce facem else sau elif

Le facem dair daca celel precedente nu au fost adevarare

El ifu.l intra doar daca ce e inakinte este fals sau adevarat

In orice alt caz

Ai nevoie de optimizare

Acoperi toate posibilitatile

While este ca un if

A=9

B=15

Daca a<b print a si print ceva

Etse un if

9 si ceva

Print conditia e adevarata sis e intampla celelalte 2 linii

While fucntioneaza ca un if care la final lui are o linie imaginara care spune mergi la linia 4 – executa o
comanda daca este indeplinita o conditie (cat tinep , nu este pana cand)

Ruleaza in permanenta ceva 9 si trebuie sa inchis ze to cu cosuletul

Ruleaza cu debugerul – debug python file – linia 2-merge la linia 4

Li nia 5 – conditia e adevarata


de la linia 5 e linear la linia 6

La llinia 7 e un comentariu (ii spune du te la linia 4 cu while

Si pune din nou intrebarea se duce mai departe si adunge din nou in bucla

Cat timp while executam aceste 2 linii atat timp cat a este maim mic decat b
Nu este pana cand (nu negam) pana cand nu este acelasi lucru cu cat timp (daca conditia este
adevarata)

For (etse decat un while)- o specializare

Dar folosim while

Print 1

Print 2

print 3

conditie logica (ceva ce e true sau false)

a=1 cat timp a</decat 100

a=a+1 sau a+=1 in python

a++ =a+1 in C++

print a

cand inversam – 101 – incepem cu 1- la inceput vedewm 2

simulam un for folosind un while cand adaugi 1+1

for (de la pana la, inclusiv capete)

tema – suma secventiata +1+2+3

pare (combina cu if)

primele 50 de numere pare (nu mai mici de 50)

while patratel

Cursul 4 – 02.11.2023

“*”*5 5 stelute

While

Variabila numar sau I de la index sau numar


I este un contor in c++ I este o avriabila care creste cu 1

I=i+1 cand rulezi – sa nu ruleze in continuu

Incrementez – creste

Reguli in programare- treb uie sa fie general functional


Daca schimbi o variabila, treb sa se calcxuleze correct de fiecare data cand schimbi variabila

Nu vrrem sa avem magic values – calculatorul face alcule, nu noi

Nu treb s-o gandim noi - capcana – in loc d eimpare, vrei divizibile cu 7 si 9

Variabila cout de cate ori a intrat in acel numar (divizibil cu 2 de exemplu)

Scoatre I fsi nr creste cu 2

While (primele 50 din oricate sunt (nu limiteaza nr de comenzi)

For (interval)– de la pana la

Numerele prime se impart cu 1 si cu ele insele


0123

Numar = numar+1

Trebuie vazut daca l am gasit sau nu

Verificare daca e divizibil

Liste (primii 50 elevi care au media peste 7)

While = cat timp (nu este pana cand)

Suma primelo 10-50 numere

Suma primelor 5 numere

Magic values = calculate de noi

Algoritmica – operatie inchegata transf intr o serie repetata – automatisme- spargerea mai multor psi
inchegati – in mai multe actiuni secventiale = repetabile (for si while) while repeat o linie de mai multe
ori

Ranularizarea tuturor pasilor

Suma = 0

Uneste secvential prin while

Suma = suma+1

Suma = suma + 2

Care e nr initial

<= cu cat

# pe mai mlte linii

# CTRL/ (dupa ce le selectezi pe toate pe care vrei sa le comentezi)

Print sub if e gresit daca e pus cu tab


Cu backspace e ok

While – cand nu stim de cate ori vrem sa parcurgem

For – este pentru cerintele cand stim de cate ori vrem sa parcurgem
faci ceva pt fiecsare lucru din multimea/colectie respectiva

Booleana(adev/fals) string operatori matematici int/float (jumatati)

Colectiile (cos de mere – cosul +mere= lista)- structiuri de date tip colectie

For (variabila care va foi pe rand pentru fiecare ceva din colectie)

For ceva in

E ceva iterabil = structura de date care contine mai multe chestii (colectie) – imi permite sa le pot lua pe
rand pe fiecare. Caac unei coelctii e a lua fkiecare lucru din e a ca sa faci ceva cu ele – colectie iterabila –
cosul cu mere

Colectii neiterabile – o galeata cu apa

For face ceva pt fiecare lucru de undeva (colectie)

Structure iterabile = range (clasa / functie) – ranngeulk transformat intr o lista

Detaliaza acel interval (sac cu numere in ordine) – rangeul creaza sacul/colectia

Dupa for sau while mereu pui:

Repeat de 7 ori = 0 1 2 3 4 5 6 – rangeul creaza o lista – inclusive 0

Forul permite sa parcurg ceva pt fiecare structura iterata

For Nume variabila in iterabil:

Ce facem: print etc

Iterabil: lista, range

For in java si c – functioneaza doar cu numere

Design patterns- ce este iterabil, clasa sala si luam fiecare loc sa vedem daca e ocupat

Range ul ne l,miteaza la numerele locurilor, nu cu locul in sine

2 numere scrise in range inseamna d ela pana la … capatul dintreapta nu e inclus 1-51 (51 nu e inclus)

() intotdeauna

Sau scriem 51 ca 50+1

Treb sa secificam daca vrem sa parcurgem cum – sa scriem din cat in cat numaram

Range (De la, pana la, din cat in cat numaram) FORMULA

Nu am nici un numar de la 51 la 2 – nu afiseaza nimic


Pasul negativ – 1 -2 -3 (parcurgand invers – de la 51 la 2 tre sa ii dai cu -1afiseaza pana la 3 pr ca vii de la
51- pana la 2 – ultimul va fi 3

Capatul din dreapta- nu conteaza directia d epar curgere

Pana unde

Pasul si inversare capete (pas negative sau pozitiv - a fie correct a sa te indrepti catre el) – este o eroare
logica – nu exista numere in range ul respectiv

For ul da ria numerele

Range ul face plus 1

For ul nu are nevoie sa aiba o anumita valoare

Numere de tip float nu functioneaza in range

Num pi - exista pentru nr float

Define (pt functii) sau import (pt numere)

For ii parcurgi pe toti

While - face atat timp cat gaseste, apoi pa

Podusului numerelor - inmultite - produs (formula de calcul)= 1 (nu la 0 ca nu s eimparte)

Agregare - medie, suma - sa fim atenti la valoarea initiala

Nu incepeti de la 0, daca e inclus - iti da 0 (nu s epoate inmulti/imparti cu 0)

Merge doar la suma

For are 3 segmente in alte limbaje

Acces cisco - pe mailul institutional

Acces la platforma cisco - materiale eductionale

Cisco

Teams

Office 365 - link in mail - step it

Vreau sa trec la alt numar indifferent daca nr e par sau impar, indifferent - nu il punem in if ca sa ramana
blocat in el.

4%7 incape o data si restul este 3

5%5 0

Daca negam e sau punem or(sau) - while (e problematic - cat timp nu imi este foame = este o negatiesa il
gandesti ac pana cand- gtresesti. Treb s ail gandestu ca si cat timp)
Cat timp nu se impart amandoua

S anu le negi pe toate

Not nu e ca o functie 9daca se impart amandoua cat timp nu se impart amandoua - not e pt sat timp n
nu se intampla acel lucru - e cat timp nu e divizibil)

Negat de a si b nu e negat de a si negat de b

Problema de individualitate

Neaga cu un not in fata - nu le nega individual - logica

While

Cat timp nu se imparte la 5 si la 7 - corect

E diferit de nu se imparte la 5 si nu se imparte la 7 (se neaga amandoua)

Curs 5 07.11.2023

Cati divizori diviziili cu 3 are n

Liste

Daca nu vrem sa lucram cu toti divizorii lucram cu liste - ii stocam in liste pe divizori

Doar daca nr e ar ajungem acolo - de aceea dam print sub for indifferent de cate if uri ai dupa

Cu for trecem prin toate nr posibile si apoi printeaza ce a gasit

Problema Se considera n suma si ….

3. counter while gasite <10

Fara for prt ca nu ai interval

Index cu for ne oprim in while cand gasite = 10

4.care este gramada de numere posibile mai mici ca n

For 0-n

Sau cu while si definiti 2 varianbile

Contor 1

Nr gasite 0 contot mai mic decat n si gasite <3 atunci if gasite divizibile cu 3 …

For n interval 0-n

Impartite rest 0
Elimini contotul care trece peste el

2. includem si divizorii propria inclusive 1 si 12

3. calculati - in ideea de a gasi numerele

Data typuri

Imput este inversul lui print

Ceea ce citim cu imput este u sctring - treb s apui integer c

Data type casting

Ca sa nu afiseze 7+5 ca 75 ci ca 12

A=5

B=7

Imput 7+5 - iese 75

Int si daca; pui () este functie

Terminal=consola

Liste de true si false uri - convertesti in numere 1 si 2 si faci suma acelor numere

True = 1

False = 0

Imputuri - cand le rulezi - nu le poti rula una peste cealalata - tre s adai pe cosul de gunoi ac sa le inchizi

Orice tip de date bool float str sau int

Iei textul 3 si il transformi in numar

Int 3.14 nu exista - da eroare - in int

Sau daca vreau sa convertesc salut in numar prin int

Prin int daca e nr intreg sau alte tipuri de date in numere

Floatul iti permite sa faci un true cu .0

Str de nr 3.14 +str 2 = 3.14 2 (le concvertesti in sttringuri si se vor concatena)

Generare csvuri - scrii text si se transforma in numere

Str il afiseaza ca text

Float il afiseaza pe 3.14 ca numarnu pot aduna numere cus tringuri si te folosesti de o virgula

Le faci numere ca sa poti face operatii si transformi numerele in texte ca sa le poti introduce i text

Numarul treb convertit in str si invers


Lista de texte cate pot fi alipite cu ,

Ctrl+/
Daca nu dai pe cosul de gunoi va da ca imput in noua aplicatie pe ce a fost in vechea aplicatie
Imputul intoarce deja un strig - un textnu poti aeva string de string
Ca sa pui 14 in textul are 14 ani trebuie sa il transformi in text
Ceea ce scriu la tasattura e un text - deci e un str
3 din codul asci
Este simbolul 3 - ca si text (alt alfaber -indian arabic)
3 numeric este conceptul de 3
Introdu cerea de la tastatura sau testam o aplicatie - testam logica - acolo folosim imput
De la tastatura scrii in consola, nu in interfata
In loc d evariabila = 5 scriem 5 de la tastaura prin imput
{} sunt ca niste .....
este ca un template
Stringuri formatate = template
Format este o functie
Templateul se completeaza prin functie
paramentrii unor functii se separa prin ,
f string „”
f”” ce este {} treb s afie exact numele variabilei - lipeste ambele etape - scrii textul curisv si pui
valorile ca atare - template si apoi formatezi (sari epste pasul asta - inserezi valori in text direct
formatat
formatare si imputuri

exista conceptul de nimic in programare - null in late limbaje in python s enumeste None (este o avloare)
nu e un tip de date, nu e ceva stocat inca - nu avem cu ce sa il comparam

zero are valoare - ca un sul de hartie

primul om care intra in sala e cel mai inalt - il compari cu nimic

maxim>x
nu putem sa comparam none cu x

curs 6 09.11.2023

nr la puterea 0 = 1

orice nr x 0 = 0

break - fucntionez=aza cu while si for - cu bucle

se opreste aceea bucla cand da de break = opreste prima bucla repetitiva

for while for - o opreste doar pe cea mai apropiata

nu opreste un if

poti sa -lk scrii

if se intampla doar o data

duminica 20.18

while true cat timp adevarat e adevarat = true e adevarat tot timpul

continue

la pachet cu brake

sare peste iteratia curenta

se intoarce la a pune intrebarea din while sau for se intoarce la linia de sus si pune intrebarea din nou

tot ce scrie dupa continue nu mai ruleaza, ci se intoatrce pe linia precedenta

structuri de date complexe

functii

palindrom numere prime fibornaci

functii in functii

functiile sunt cutii cu fabrici- pui ceva si calculeaza

definitia unei functii nu presupune executarea unui cood - inveti pe cineva sa fa ca clatite, dar nu el si
face
dupa functie

pui aduna (numele pe care l-ai data

definirea - declararea fdunctiei= ce inseamna sa adune

linia 4= apelarea functiei - sa faca functia = sa faca clatite

return urmat de o operatie sau o valoare = returneaza valoarea pe care am scris-o

apelul functiei in sine ia valoarea pe care am scris-o

afisare vs returnare

nu tot ce e int ro varia bila se si afiseaza

a returna nu inseamna a afisa

aduna de 9 1 si marina inseama 10 si calculeaza 10 calculeaza si returneaza o valoare

aceasta expresie va fi 8 9arata rezultatul calculului)

apelul in sine capata valoarea calculata

intorci valoare - pe ecran nu afisezi valorile (in aplicatiile reale) - imi da numele studentului (il gasesc pe
baza valorii calculate)

nu afisam in consola tot / se vede de multe ori nimic


print afiseaza

return = intoareti o valoare / ca si cand calculezi intorcandu te la aceea inie care a apelat

functia calculeaza si apoi o afiseaza

apelul functiei in sine devine aceea valoare, nu este stocata decat daca se defineste valoarea x

ea nu se afla nicaieri

in memoria calculatorului se gaseste acel calcul- functia - black box - nu stii cum face - ci ce face- care e
rezulatatul - te rog s afaci maioneza= nu e stocata, e un apel, cerrerea va insemna maioneza - nu o
stochezi, decizi aici x= cu, valoarea returnata e conceptuala (maioneza

nu o pui intr un bol (cand e stocata)

apelul= cerere

are ca rezultat (return ) functiei = este ceea ce a returnatreturneaza 10 dar nu faci nimic cu el - nu il
stochezi, nu il afiezi = potisa il stochezi separat in y

pot sa afisez rezultatul direct

functia face si print

nu poti sa pui mai multe returnuri intr un program


se pot returna si stringuri

fix expresia in sine e rezulattul cererii in sine si vien ac o valoare = return

pot sa nu am rezulat

apelul functiei nu are rezultat

orice functie are un rezulatt

dar poate sa nu iti dea nimic inapoi

fucntia daca nu returneaza ceva - rezulattul e nimic

apelul in sine capata valoarea returnata

orice expresie are o valoare - de accea null none nimic treb sa fie ca o valoare

print la print afiseaza none

print-ul este o functie

care ii spune calculatorului s aarati ceva in consola

rezultat e o afisare - capata o valoare

return este ulltimul lcru care se executa intr o fucntie

etste similar cu breakuri pt ca tot ce e dupa ele nu se mai executa nimic

este ultima linie a functiei

stack e ca o gramada de farfurii pui mai multe fucntii deasupra

executia codului e data mai departe 0- se face legatira cau acceea fucntie- intorc legatura la locul unde
erai cand m ai apelat pe mine

cand se termina functia - return - intoarce codul (retine unde a ramas)- recursivitate

buclele- e ultima line si atunci acnd este inr lo bucla

colectii = liste

calculeaza si intoarce/returneaza un nr ridictr la o anumita putere

nu pot sa las blcouri goale

gen functii for if

treb sa scriu ceva

print ceva

for ceva
functie ceva

return nu necesita paranteze - e pur si simplu o valoare

curs 7 14.11.2023

def - definim o functie

cel mai apropiat definit

treb sa avem grija cand enuim variabila aprametru si ce se printeaza sa nu fie la fel

a de la tastatura si a variabila trebuie definite cu nume diferite

trebuie sa stiu cat este a

sa nu me numim a pe amandoua

a nu exista decat in interiorul functiei

numele pe care il dai l,ui a este de exemplu numar

print nr+7 (nu a+7)

sa nu coincida ca nume

return true return false

este ca un soi de else pentru ca daca nu s ein deplineste prima varianta , se trece la alta - adica else nu isi
mai are rostul

exercitiul fizz buzz

definiti o functie care primeste un numar N si afiseaza jocul fizz buzz pana la acel numar

reguluile fizz buzz :

daca numarul curent este divizibil cu 3 se afiseaza fizz

daca numarul curent este divizibil cu 5 este buzz

daca numarul curent este divizibil cu 3 si cu 5 se afiseaza fizz buzz

incepe cineva, urmatoarea persoana ia urmatorul numar

fizz - 3

urmatorul pt care se aplica este 5

fizz 6

fizz 9
fizz 12

cele divizibile cu 3

fizz buzz 15

for fizz buzz parametrul range

backslash end e spatiu liber caracterul default

nu mai ruleaza nimic

dupa print va pun cl cracter

by efault pune rand liber

acel backslash pune o virgula -‚

backslash end inseamna by default rand liber

e la fel ca se - care separa ce pui intel ele

end este ce pui la finalul lor

backslash end e ca un soi de enter

numere prime si cifrele unui numar

numere prime - presupune ceva si vedem daca este adevarat, presupunem adevarul si incerci sa
presupui ca nu e adevaratt= reducere la absurd in matematica - cu max - presupun ca prim ul elev e cel
mai mare dar ii amsuram si pe cieilalti

ce este nr prim = divizibil cu el insusi si pe 1

inmultirea a2 nr prime - are ca divizor doar pe cele 2 nr inmultite 1 si pe el isusi - se foloseste in


securiatte

doar eu stiu care sunt cifrele componente - factorii primi- greu de calcuat - numere de 20 de cifre - nu e
o formula, poti doar sa le cauti - asa functioneaza banca

computerele quatice pot rezolva aceasta problema in cateva secunde

computerul quantic gaseste perechea d enumere 9electroni entangled) iei toate numerele de la 1 la 3
trimioane - pt un nr prim de 20 de cifre

cum scriem algoritmic in python

2 divixzori - sa ne asiguram ca sunt doar acei 2 divizori - caci toate numerele se divid cu ele si cu 1, dar
cele prime se divid doar cu 2 numere 1 si ele isele

caut divizorii lui nr, nu caut numerele prime

incepem d ela 2 caci toate sunt divixzibile cu 1 si de aia incep la 2


0 divizori intre 1-2

nu putem s aplecam de la 0 pt ca nu s epoate divide cu 0

sa gasim 0 divizori

bublesort- presupunem ca lista e nesortata

si incercam sa o sortam

la liste

numar palindrom

in oglinda

functia palindrom care priemste un numar si iti returneaza true sau false

pass e o functie goala ca sa nu dea eroare si pui ecva dupa cand te hotarasti

fucntia returneaza true szi afisam noi apoi cu print ce vrem

cifrele unui numar - ceva mode 10- %10 voi vedea cu virgula - obtin ultima cifra

gandire algoritmica

S-ar putea să vă placă și