Sunteți pe pagina 1din 7

AC Iași Matematici Discrete

TUTORIAL PYTHON

Python este un limbaj de programare care poate fi utilizat ca suport în aplicații ale matematicii
discrete. Acest limbaj este potrivit pentru acest scop datorită sintaxei, semanticii sale intuitive și
asemănării apropiate cu notația matematică. În cele ce urmează vor fi prezentate câteva noțiuni
elementare în utilizarea scripturilor și a familiarizării cu sintaxa specifică limbajului Python.
Lansarea în execuție a mediului virtual Python se face folosind comanda din Terminal
source /opt/python36-venv-student/bin/activate
La terminarea lucrului se dă:
deactivate

1. Creare și execuție script (program Python)


Scripturile specifice Python sunt identificate prin fișiere cu extensia .py. Pentru crearea
acestor fișiere vom folosi editorul vim.
În linia de comandă, din aplicația Terminal se tastează:
vim nume_fisier.py
Pentru a lansa în execuție un script se va folosi următoarea comandă în Terminal:
python3 nume_fisier.py

2. Funcția de afișare print


Funcția print este flexibilă în utilizare și are mai multe forme generale.
Varianta 1:
a =3
b=4
print("a=",a," b=",b)

Afișează:
a= 3 b= 4

Varianta 2:
a =3
b=4
print("a=%d b=%d" % (a,b))

Afișează:
a=3 b=4

În această utilizare funcția print recunoaște trei obiecte cheie: "sir_caractere" % (argumente).
Caracterul % se comportă ca un delimitator între șirul de caractere situat în stânga acestuia
(ce reprezintă formatul textului), iar argumentele care se doresc afișate sunt specificate în partea
dreaptă între paranteze rotunde, separate prin virgulă.

1
AC Iași Matematici Discrete
Sunt posibile și alte variante de folosire a funcției print dar acestea două sunt cele mai uzuale.
Vom folosi preponderent varianta 2 deoarece ne permite o afișare mai flexibilă a datelor sub formă
tabelară prin introducerea spațiilor albe.
Exemplu:
a =3
b=4
print("a=%d %10s b=%d" % (a,'',b))

Afișează:
a=3 b=4

În acest exemplu am introdus încă un format: %10s, prin care specificăm că afișăm 10
caractere albe și imediat după acestea se va afișa șirul de caractere '' (șir de caractere gol),
menționat în mulțimea argumentelor.
De asemenea funcția print adaugă implicit și un rând nou în afișare(\n) la fiecare apel:
print("Limbajul")
print("Python")

Afișează:
Limbajul
Python

Pentru a specifica un alt terminator de rând la afișare vom folosi atributul end:
print("Limbajul ", end=' ')
print("Python")

Afișează:
Limbajul Python

Lista uzuală a tipurilor de date recunoscute de formatul funcției print este prezentată în
tabelul de mai jos:
Identificator Descriere
d Număr zecimal întreg cu semn.
o Număr octal fără semn.
x Număr hexazecimal fără semn, afișat cu litere mici.
X Număr hexazecimal fără semn, afișat cu litere mari.
e Format exponențial în virgulă mobilă.
f Format zecimal în virgulă mobilă.
c Caracter simplu.
s Șir de caractere.

3. Liniile de comentariu
Liniile de comentariu sunt adesea utilizate printre liniile de cod cu scopul de a crește lizibilitatea
fără ca acestea să aibă un impact funcțional. Comentariile se pot introduce pe o singură linie cu
caracterul # sau pe mai multe linii cu caracterul ' (apostrof) înserat de trei ori la rând.
Exemple:

2
AC Iași Matematici Discrete

# Initializare variabila
a=3

a = 3 # Initializare variabila

'''
Urmatoarea sectiune de cod
este o secventa de testare
'''
a=3

4. Variabile și operatori
În limbajul Python o variabilă nu trebuie declarată, ci cel mult inițializată înainte de a fi utilizată.
Ex:
a=3

Ca și în limbajul C, operatorii pot fi grupați în mai multe categorii, după cum urmează:
Tip Operator Descriere Exemplu
+ adunarea a doi operanzi print(3+5) #afiseaza 8
print('a'+'b'+'c') #afiseaza abc

- diferența dintre doi operanzi a=7


sau transformarea unui număr b=4
pozitiv în negativ print(a-b) #afiseaza 3
print(-a) #afiseaza -7

* Multiplicarea a doi operanzi a=5


sau repetarea unui șir de un b=4
Operatori anumit număr de ori sir='ana'
aritmetici print(a*b) #afiseaza 20
print(3*sir) #afiseaza
anaanaana

/ împărțirea a doi operanzi a=5


având ca rezultat un număr b=2
real print(a/b) #afiseaza 2.5
// împărțirea a doi operanzi a=5
având ca rezultat un număr b=2
întreg print(a//b) #afiseaza 2
** ridicarea unui număr la o a=2
anumită putere putere=3
print(a**putere) #afiseaza 8
% restul împărțirii dintre doi a=8
operanzi întregi b=3

3
AC Iași Matematici Discrete

print(a%b) #afiseaza 2
< mai mic a=2
b=3
print(a<b) #afiseaza True
<= mai mic sau egal a=2
Operatori b=3
relaționali print(a<b) #afiseaza True
> mai mare a=2
b=3
print(a>b) #afiseaza False
>= mai mare sau egal a=9
b=3
print(a>b) #afiseaza True
== egal a=3
Opertori de b=3
egalitate print(a==b) #afiseaza True
!= diferit a=3
b=3
print(a!=b) #afiseaza False
Operatori logici not negația logică p=1
print(not(p)) #afiseaza False
print('%d'%(not(p))) #afiseaza 0
and ȘI logic p=1
q=0
print(p and q) #afiseaza 0
print('%d'%(p and q)) #afiseaza
0
or SAU logic p=1
q=0
print(p or q) #afiseaza 1
print('%d'%(p or q)) #afiseaza 1

5. Structuri de control
a. Instrucțiunea decizională
Următorul exemplu ilustrează folosirea instrucțiunii decizionale if în limbajul Python:

4
AC Iași Matematici Discrete

# Detectia maximului dintre trei numere


a=5
b=3
c=7
if a > b:
maxim = a
else:
maxim = b

if c > maxim:
maxim = c

print("Numarul maxim este ", maxim)

De remarcat este faptul că delimitarea secțiunilor de cod de pe ramurile decizionale se face


prin simpla indentare a secțiunii respective. Un exemplu ce reflectă acest lucru este ilustrat mai jos:

a=2
if a == 2:
print("Instructiune 1")
print("Instructiune 2")
if a == 3:
print("Instructiune 3")
print("Instructiune 4")
print("Sfarsit.")

Afișează:
Instructiune 1
Instructiune 2
Sfarsit.

b. Instrucțiuni repetitive
Exemplu pentru afișarea elementelor unui vector cu instrucțiunea for:
Varianta 1
vector = [2, 4, 6, 10]
for x in vector:
print(x)

Afișează:
2
4
6
10

Varianta 2
for x in range(4,7):
print(x)

5
AC Iași Matematici Discrete
Afișează:
4
5
6

Exemplu pentru afișarea elementelor unui vector cu instrucțiunea while:


vector = [2, 4, 6, 10]
lungime = len(vector)
i=0
while i < lungime:
print(vector[i])
i=i+1

Afișează:
2
4
6
10

Observație: Funcția len este folosită pentru a determina dimensiunea vectorului (câte
elemente conține acesta). De asemenea i=i+1 poate fi scris și ca i+=1. În schimb în Python nu avem
operatorul de incrementare, respectiv decrementare.

6. Funcții
Sintaxa generală de definire a unei funcții în Python este următoarea:
def nume_functie( parametri ):
#"Descriere functie"
<instructiuni corp functie>
return valoare_returnata

Tipul parametrilor nu trebuie specificat. O funcție poate să nu returneze nimic dacă


instrucțiunea "return" nu este specificată.

Exemplu 1. Suma a două numere:


def suma( a, b ):
#"Suma a doua numere"
rez = a + b
return rez

x=2
y=3
s = suma(x, y)
print("Suma este: ", s)

Exemplu 2. Citirea unui șir de numere întregi:

6
AC Iași Matematici Discrete

def citireVector(v,n):
for i in range(0,n):
print('v[%d]=' % i, end=' ')
x=int(input())
v.append(x)

def main():
v=[]
n=int(input('Introduceti nr. de elemente:'))
citireVector(v,n)
print('Vectorul citit este:')
print(v) #afisare vector

main()

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