Академический Документы
Профессиональный Документы
Культура Документы
2014
E-learn.ro
13.07.2009
Rating
(7 voturi)
20 min
Instalarea Python
Ce este python?
Python este un limbaj de programare interpretat. Pentru cei care nu stiu, un limbaj de programare este ceea
ce scrii pentru a-i spune unui calculator ce are de facut. Oricum, computerul nu citeste limbajul in mod direct exista sute de limbaje de programare si nu ar putea sa le inteleaga pe toate. Deci, cand cineva scrie un
program, il va scrie in limbajul selectat si apoi il va compila - aceasta inseamna transformarea intr-o multime de
0 si de 1, pe care computerul le poate intelege rapid si usor. Diversele programele pe care le poti cumpara
pentru calculatorul tau sunt deja compilate pentru Windows - daca incerci sa deschizi un astfel de program cu
Notepad sau Wordpad, vei vedea doar o multime de caractere ciudate.
Un program care este compilat pentru Windows nu va functiona pe un alt sistem de operare. Diferenta dintre
Python si astfel de programe este ca acest limbaj nu este niciodata compilat in totalitate - la rulare, fiecare
instructiune este transformata in serii de 0 si 1 pe care computerul tau le poate intelege. In plus, totul este
facut pe loc - codul este executat pe masura ce rulezi programul. Daca ai iesi din program si ai reveni in alta zi,
bitii ar fi din nou compilati. Ti se pare a fi pierdere de timp? Poate, dar asta inseamna ca un program Python
poate rula pe diferite sisteme de operare, fara a necesita ajustari. Ai putea trimite programul unui prieten,
care utilizeaza un alt tip de computer. Sau ai putea posta programul pe Internet, de unde sa fie descarcat de
persoane lucrand pe calculatoare diferite. Acesta este miracolul unui limbaj de programare interpretat - este
un limbaj pe care orice sistem il poate INTELEGE.
3.12.2014
E-learn.ro
Si este usor (cel putin pentru moment). Python face sa fie usor de rulat linii singulare de cod - programe monoliniare. Sa incercam!
Deschidem IDLE
Mergi in meniul de start, gaseste Python si ruleaza programul denumit 'IDLE' (Vine de la Integrated
Development Environment - Mediu Integrat de Dezvoltare).
Acum te afli in mediul IDLE. Acesta este locul in care iti vei petrece majoritatea timpului. Aici poti deschide o
noua fereastra pentru a scrie un program sau poti pierde vremea cu linii singulare de cod, ceea ce vom si face.
Tasteaza urmatoarele si apasa enter:
>>> print "Hello World!"
Ce s-a intamplat? Tocmai ai creat un program care afiseaza cuvintele 'Hello, World'. Mediul IDLE in care te afli
compileaza imediat orice ai tastat. Este extrem de util pentru testare, de exemplu la definirea variabilelor, sau
pentru a verifica daca o anumita linie de cod functioneaza.
Matematica in Python
Cu Python poti efectua anumite operatii matematice, cum ar fi:
- Adunare
>>> 1 + 1
2
>>> 20+80
100
>>> 18294+449566
467860
-Scadere
>>> 6-5
1
- Inmultire
>>> 2*5
10
- Ridicare la putere
>>> 5**2
25
- Impartire
>>> 21/3
7
>>> 23/3
7
>>> 23.0/3.0
7.6666
- Restul impartirii
http://www.e-learn.ro/printare-tutorial/python/introducere-in-python-partea-i/149/1/367.htm
2/9
3.12.2014
E-learn.ro
>>> 23%3
2
>>> 49%10
9
In plus, poti afisa sume si variabile printr-un singur apel al functiei print, utilizand virgula pentru a separa
diferitele sectiuni:
>>> print "un kilobyte este 2^10 bytes, sau", 2**10, "bytes"
un kilobyte este 2^10 bytes, sau 1024 bytes
In tabelul de mai jos poti vedea toti operatorii Python prezentati mai sus.
Operator
Nume
Exemplu
Rezultat
Adunare
4+5
Scadere
8-5
Inmultire
4*5
20
Impartire
19/3
Restul impartirii
19%3
**
Ridicare la putere
2**4
16
Iti amintesti de ordinea operatiilor din matematica? Se aplica si in python. Iata, ca sa iti amintesti:
1. paranteze()
2. ridicare la putere **
3. inmultire *, impartire , si restul impartirii %
4. adunare + si scadere -
Ordinea operatiilor
Iata cateva exemple pe care le-ai putea incerca:
>>> 1 + 2 * 3
7
>>> (1 + 2) * 3
9
In primul exemplu, computerul calculeaza mai intai 2 * 3, apoi adauga 1. Aceasta, deoarece inmultirea este
efectuata inaintea adunarii.
In cel de-al doilea exemplu, computerul calculeaza mai intai 1 + 2, apoi inmulteste cu 3. Aceasta, din cauza
parantezelor care incadreaza adunarea.
Mai aminteste-ti si ca in matematica se calculeaza de la stanga la dreapta, exceptand cazul in care exista
paranteze. Paratezele interioare sunt calculate primele. Priveste urmatoarele exemple:
>>> 4 - 40 - 3
-39
>>> 4 - (40 - 3)
-33
In primul exemplu, se calculeaza intai 4 -40, apoi - 3.
In cel de-al doilea exemplu, se calculeaza mai intai 40 - 3 si apoi se scade din 4.
http://www.e-learn.ro/printare-tutorial/python/introducere-in-python-partea-i/149/1/367.htm
3/9
3.12.2014
E-learn.ro
Comentarii
Ultimul lucru pe care trebuie sa-l cunosti pentru a putea trece la programe cu mai multe linii de cod sunt
comentariile. Tasteaza urmatoarele (si da, rezultatul executiei este afisat):
>>> #Iata un comentariu
>>>
Un comentariu este o portiune de cod care nu este rulata. In python, creezi un comentariu punand caracterul
# inainte. Acesta va ascunde tot ce se afla dupa el in acea linie si nimic inainte. Deci ai putea tasta
urmatoarele:
>>> print "mancarea e foarte buna" #primul comentariu
mancarea e foarte buna
>>># print "mancarea e foarte buna"
(nu se intampla nimic deoarece codul se afla dupa #)
>>> print "mancarea e foarte buna" primul comentariu
(vei primi un mesaj de eroare deoarece nu ai folosit # pentru comentariu
Comentariile sunt importante pentru a adauga informatiile necesare altui programator pentru a intelege codul,
dar nu influenteaza cu nimic computerul. In plus, poti utiliza comentariile pentru a deactiva anumite portiuni de
cod, urmand sa le reactivezi mai tarziu.
Variabile si scripturi
Introducere
Deci, putem executa programe monoliniare. Si? Vrei sa trimiti programele altor oameni, pentru a le putea
utiliza, fara sa stie cum sa le scrie.
Editare in Notepad
Scrierea programelor din python intr-un fisier, este FOARTE usoara. Programele Python sunt simple documente
text - le poti deschide in notepad pentru a le observa. Deci, deschide notepad si tasteaza urmatoarele:
#Un program simplu.
print "Mary had a little lamb,"
print "it's fleece was white as snow;"
print "and everywhere that Mary went",
print "her lamb was sure to go."
Pastreaza totul la fel, inclusiv pozitionarea virgulelor. Salveaza fisierul ca fiind 'mary.py' - si asigura-te ca
notepad nu adauga extensia .txt. Dezactiveaza 'Hide known file extensions' in Windows Explorer, daca iti va fi
mai usor.
4/9
3.12.2014
E-learn.ro
Variabile
Acum sa incepem introducerea variabilelor. Variabilele stocheaza o valoare care poate fi analizata sau
schimbata ulterior. Pentru a crea un program care utilizeaza variabile, deschide IDLE, apoi acceseaza
File>New Window - apare o noua fereastra in care este usor sa editezi programe. Tasteaza urmatoarele
(sau doar copy si paste - insa citeste cu multa atentie si compara codul cu rezultatul oferit de catre program):
#utilizarea variabilelor
print "Acest program este un test pentru variabile"
v=1
print "Valoarea lui v este acum", v
v=v+1
print "v este incrementat cu 1, luand valoarea", v
v = 51
print "v poate retine orice valoare numerica"
print "de exemplu, v este acum", v
print "v inmultit cu 5 este", v*5
print "dar valoare lui v ramane", v
print "pentru a retine aceasta valoare in, trebuie sa scrii v = v * 5"
v=v*5
print "iata, v este acum", v, "si nu", v / 5
Siruri de caractere
Dupa cum poti observa, variabilele stocheaza valori pe care le poti schimba oricand si le utiliza mai tarziu. Poti
insa atasa nu numai numere, ci si text. O variabila care suporta text se numeste string. Incearca acest
program:
#variabile de tip string si concatenarea lor
word1 = "Buna"
word2 = "dimineata"
word3 = "si tie!"
print word1, word2
sentence = word1 + " " + word2 + " " +word3
print sentence
Rezultatul va fi:
Buna dimineata
Buna dimineata si tie!
Dupa cum poti vedea, variabilele de mai sus retin text. Denumirile variabilelor pot contine mai mult decat o
litera - aici avem word1, word2, and word3. Dupa cum mai poti observa, sirurile de caractere pot fi unite
(concatenate) pentru a crea cuvinte sau propozitii mai lungi. Oricum, concatenarea nu adauga spatii intre
cuvinte - de aceea trebuie sa adaugi tu spatiile punand " " intre elemente.
http://www.e-learn.ro/printare-tutorial/python/introducere-in-python-partea-i/149/1/367.htm
5/9
3.12.2014
E-learn.ro
cuvinte - de aceea trebuie sa adaugi tu spatiile punand " " intre elemente.
Bucla 'while'
Urmatoarele sunt exemple de bucle de tip 'while':
a=0
while a < 10:
a=a+1
print a
Cum functioneaza acest program? Iata "traducerea" sa in romana:
'a' este 0
Cat timp 'a' este mai mic decat 10, executa urmatoarele:
Mareste valoarea 'a' cu 1.
Afiseaza valoarea 'a'.
Ce face? Sa vedem ce ar 'gandi' computerul cand este in bucla 'while':
#UITA-TE REPEDE PE URMATORUL COD
#(Arata lung, dar este foarte simplu)
Este'a' mai mic decat 10? DA (este 0)
Mareste 'a' cu o unitate (este 1)
Afiseaza valoarea lui 'a' (1)
Este'a' mai mic decat 10? DA (este 1)
Mareste 'a' cu o unitate (este 2)
Afiseaza valoarea lui 'a' (2)
Este'a' mai mic decat 10? DA (este 2)
Mareste 'a' cu o unitate (este 3)
Afiseaza valoarea lui 'a' (3)
Este'a' mai mic decat 10? DA (este 3)
Mareste 'a' cu o unitate (este 4)
Afiseaza valoarea lui 'a' (4)
Este'a' mai mic decat 10? DA (este 4)
Mareste 'a' cu o unitate (este 5)
Afiseaza valoarea lui 'a' (5)
Este'a' mai mic decat 10? DA (este 5)
Mareste 'a' cu o unitate (este 6)
Afiseaza valoarea lui 'a' (6)
Este'a' mai mic decat 10? DA (este 6)
Mareste 'a' cu o unitate (este 7)
Afiseaza valoarea lui 'a' (7)
Este'a' mai mic decat 10? DA (este 7)
Mareste 'a' cu o unitate (este 8)
Afiseaza valoarea lui 'a' (8)
http://www.e-learn.ro/printare-tutorial/python/introducere-in-python-partea-i/149/1/367.htm
6/9
3.12.2014
E-learn.ro
Expresii Booleene
Ce scrii in zona marcata {conditie pentru care bucla continua}? Raspunsul este o expresie booleana.
Poftim? Un concept uitat pentru non-matematicienii de aici. Nu conteaza, o expresie booleana semnifica doar o
intrebare la care se poate raspunde cu TRUE (adevarat) sau FALSE (fals). De exemplu, daca vrei sa spui ca
varsta ta este aceeasi cu a persoanei de langa tine, ai scrie:
Varsta mea == varsta persoanei de langa mine
Si afirmatia ar fi TRUE. Daca ai fi mai tanar decat respectiva persoana, ai spune:
Varsta mea < varsta persoanei de langa mine
Si afirmatia ar fi TRUE. Daca tu ai fi spus urmatoarele si persoana de langa tine ar fi mai tanara decat tine:
Varsta mea < varsta persoanei de langa mine
Afirmatia ar fi FALSE - adevarul este exact contrariul. Iata cum gandeste o bucla - daca expresia este true,
continua. Daca este false, nu mai continua. Tinand cont de aceasta, sa privim operatorii (simboluri care
reprezinta o actiune) care sunt implicati in expresii booleene:
Operatori booleeni
<
mai mic
mai mare
7/9
3.12.2014
E-learn.ro
!=
nu este egal cu
Instructiuni conditionale
OK! Am acoperit (sper) buclele 'while'. Acum sa analizam ceva diferit - instructiunile conditionale.
Instructiunile conditionale reprezinta sectiuni de cod care sunt rulate daca sunt indeplinite anumite conditii.
Sunt similare buclei 'while' pe care tocmai ai scris-o, care ruleaza doar cand x nu este egal cu 0, cu diferenta ca
instructiunile conditionale sunt rulate doar o singura data. Cea mai intalnita instructiune de acest tip (in orice
limbaj de programare) este 'if'. Iata cum actioneaza:
if {conditii ce trebuiesc indeplinite }:
{executa asta}
{si asta}
{si asta}
{acest cod este executat oricum }
{pentru ca nu este indentat }
Iata si un exemplu:
#EXEMPLUL 1
y=1
if y == 1:
print "y este egal 1, doar verificam"
#EXEMPLUL 2
print "Vom afisa numerele pare pana la 20"
n=1
while n <= 20:
if n % 2 == 0:
print n
n=n+1
print "am terminat."
Exemplul 2 este putin mai complicat. Bucla while incrementeaza valoarea lui n de la 1 la 20, in timp ce
instructiunea if verifica daca n este par. Aminteste-ti ca operatorul % calculeaza restul impartirii. In acest caz,
daca este indeplinita conditia n % 2 = 0, inseamna ca n este par, deci valoarea lui va fi afisata.
8/9
3.12.2014
E-learn.ro
z=4
if z > 70:
print "Ceva rau s-a intamplat "
elif z < 7:
print "Asta e normal "
Instructiunea 'if' impreuna cu 'else' si 'elif' urmeaza acest tipar:
if {conditie 1}:
{executa acest cod}
elif {conditie 2}:
{executa acest cod}
elif {conditie 3}:
{executa acest cod}
else:
{executa acest cod}
'Ceea ce trebuie sa retii este ca poti avea oricate declaratii elif, dar o singura instructiune else, care trebuie
pusa la sfarsit.
Un alt lucru foarte important este ca trebuie sa inchei cu : (doua puncte) fiecare linie ce contine if, elif, else sau
while.
Indentarea codului
Indentarea codului este o practica intalnita in mai toate limbajele de programare, dar in Python este o
necesitate. Aceasta inseamna ca daca o bucla 'while' contine 5 linii de cod, trebuie sa pui un anumit numar de
spatii la inceputul fiecarei dintre cele cinci linii. Iata un exemplu:
a = 10
while a > 0:
print a
if a > 5:
print "a este mare!"
elif a % 2 != 0:
print "a este impar"
print "si mai mic sau egal decat 5"
else:
print "acest numar nu este mai mare decat 5"
print "si nu este impar"
a=a-1
print "am decrementat a cu o unitate"
print "daca este mai mare ca 0, repetam bucla"
print "se pare ca a nu este mai mare ca 0"
print "bucla s-a terminat!"
Observa cele trei nivele de indentare:
Fiecare linie din primul nivel incepe fara spatii. Este codul principal si va fi executat mereu.
Fiecare linie din cel de-al doilea nivel incepe cu patru spatii. Cand exista un 'if' sau o bucla la primul nivel,
tot ce se afla la al doilea nivel va fi considerat un singur bloc de cod, pana cand incepe o noua linie din
primul nivel.
Fiecare linie din cel de-al treilea nivel incepe cu 8 spatii. s.a.m.d
In afara de while, mai exista un tip de bucla denumita for, despre care vei putea citi in urmatoarele tutoriale.
Copyright 2008-2010 E-LEARN.ro. Toate drepturile rezervate. Conceput si realizat de Neokinetics Software.
http://www.e-learn.ro/printare-tutorial/python/introducere-in-python-partea-i/149/1/367.htm
9/9