006 Python3 – Gli operatori.

19 Dicembre, 2022 (17:04) | Linux | By: sargonsei

006 Python3 – Gli operatori.

1) Operatori Matematici

Gli operatori matematici, in Python3, sono: +   -   *   /   //   %   **   +=   sqrt()   @

L’operatore [+], quando utilizzato con numeri e variabili numeriche, si comporta da operatore matematico, e ne calcola la SOMMA del contenuto; quando utilizzato con stringhe e variabili alfanumeriche, si comporta come un operatore stringa e ne CONCATENA il contenuto. Seguono esempi di utilizzo.
>>> A=5.1; B=3; C=A+B; print("Somma ",A,"+",B,"=",C); A=str(A); B=str(B); C=A+B; print("Concatena ",A,"+",B,"=",C)
Somma 5.1 + 3 = 8.1
Concatena 5.1 + 3 = 5.13
>>>

L’operatore [-] esegue la SOTTRAZIONE fra numeri e/o fra variabili numeriche.
>>> A = "5.1"; B = 3; C = float(A) - B; C = A + " - "+ str(B) + " = " + str(C); print(C);C
5.1 - 3 = 2.0999999999999996
'5.1 - 3 = 2.0999999999999996'
>>>

L’operatore [*] quando utilizzato con numeri e variabili numeriche, si comporta da operatore matematico, ed esegue la MOLTIPLICAZIONE fra numeri e/o fra variabili numeriche; quando è preceduto da una stringa (o da una variabile alfanumerica) ed è seguito da un numero intero (o da una variabile numerica), si comporta come un operatore stringa e CONCATENA il contenuto della stringa con sè stesso, tante volte quanto indicato nel numero che segue l’operatore [*].
>>> A="5.1"; B=3; C=float(A)*B; print("Moltiplica ",A,"x",B,"=",C);A="5.1"; B=3; C=A*B; print("Concatena ",A,"x",B,"=",C)
Moltiplica 5.1 x 3 = 15.299999999999999
Concatena 5.1 x 3 = 5.15.15.1
>>>

L’operatore [/] calcola il QUOZIENTE di una DIVISIONE fra numeri e/o fra variabili numeriche.
>>> A = ["5.1", 3, 0]; A[2] = float(A[0]) / A[1]; A[2] = A[0] + " / " + str(A[1]) + " = " + str(A[2]); print(A[2]); A[2]
5.1 / 3 = 1.7
'5.1 / 3 = 1.7'
>>>

L’operatore [//] calcola il QUOTO di una DIVISIONE , quindi non tiene conto dei numeri dopo la virgola.
L’operatore [%] calcola il RESTO di una DIVISIONE.
>>> A = "5"; B = 3; C = int(A) // B; D = int(A) % B; C = A + " : "+ str(B) + " = " + str(C) + " resto: " + str(D); print(C);C
5 : 3 = 1 resto: 2
'5 : 3 = 1 resto: 2'
>>>

L’operatore [**] esegue la ELEVAZIONE A POTENZA fra numeri e/o fra variabili numeriche.
>>> a = "5.1"; b = 3; c = float(a) ** b; c = a + " elevato alla "+ str(b) + " = " + str(c); print(c);c
5.1 elevato alla 3 = 132.65099999999998
'5.1 elevato alla 3 = 132.65099999999998'
>>>

L’operatore [+=] è detto operatore incrementale, in quanto INCREMENTA la variabile che lo precede di un importo pari a quello del numero che segue. Per esempio: volendo incrementare di 1 il contenuto della variabile VAR, possiamo usare
sia il comando VAR = VAR + 1
sia il comando VAR += 1
>>> VAR = 1; VAR += 1; print(VAR) # Pone VAR = 1; Pone VAR = VAR + 1; Stampa il contenuto della variabile VAR
2
>>> INC = -3; VAR = 9; VAR += INC; print(VAR) # Pone INC=-3 e VAR=9; Pone VAR=VAR+INC; Stampa il contenuto di VAR
6
>>>

L’operatore [sqrt()] calcola la RADICE QUADRATA di un numero, previo l’importazione della funzione SQRT contenuta nel modulo MATH della “standard library”, quindi, per poterne farne uso, occorre prima impartire il comando
from math import sqrt # Importa, dal modulo MATH, la funzione SQRT.
Al pari di qualsiasi altra funzione, qualora debba essere utilizzata più volte all’interno di una SHELL ovvero all’interno di uno SCRIPT, è sufficiente importarla una sola volta prima del primo utilizzo.
>>> from math import sqrt # Importa, dal modulo MATH, la funzione SQRT
>>> sqrt(25) # Calcola la radice quadrata di 25
5.0
>>> X = 25; Y = sqrt(X); print("La radice quadrata di "+ str(X) + " è " + str(Y)) # Calcola la radice quadrata del contenuto della variabile X
La radice quadrata di 25 è 5.0
>>>

L’operatore [@] esegue la MOLTIPLICAZIONE DI MATRICI.

2) Operatori di Comparazione e Booleani
Gli operatori di comparazione permettono di confrontare fra loro il contenuto di due variabili. In Python3, sono: < > == != <= >=
Gli operatori Booleani sono: and or not
Significato:
X < Y # Se la variabile X contiene un valore numerico minore del valore numerico contenuto nella variabile Y, il risultato vale ‘True’, altrimenti il risultato vale ‘Folse’. X > Y # Se la variabile X contiene un valore numerico maggiore del valore numerico contenuto nella variabile Y, il risultato vale ‘True’, altrimenti il risultato vale ‘Folse’.

X == Y # Se le variabili X ed Y hanno il medesimo contenuto, il risultato vale ‘True’, altrimenti il risultato vale ‘Folse’.

X != Y # Se le variabili X ed Y hanno un contenuto diverso, il risultato vale ‘True’, altrimenti il risultato vale ‘Folse’.

X <= Y # Se la variabile X contiene un valore numerico minore o uguale al valore numerico contenuto nella variabile Y, il risultato vale ‘True’, altrimenti il risultato vale ‘Folse’. X >= Y # Se la variabile X contiene un valore numerico maggiore o uguale al valore numerico contenuto nella variabile Y, il risultato vale ‘True’, altrimenti il risultato vale ‘Folse’.

(X < Y) and (Y == 5) # Se il risultato di ogni singolo confronto vale ‘True’, il risultato complessivo vale ‘True’, altrimenti vale ‘Folse’.

(X < Y) or (Y == 5) # Se il risultato di almeno un confronto vale ‘True’, il risultato complessivo vale ‘True’, altrimenti vale ‘Folse’.

not(X < Y) # Se il risultato del confronto vale ‘True’, il risultato complessivo vale ‘Folse’, altrimenti vale ‘True’.

Esempio di utilizzo:
>>> X = 1; Y = 2; A = X < Y; B = str(A); C = len(B); B, C ('True', 4) >>> X = 1; Y = 2; A = X > Y; B = str(A); C = len(B); B, C
('False', 5)
>>> X = 1; Y = 2; A = X == Y; B = str(A); C = len(B); B, C
('False', 5)
>>> X = 1; Y = 2; A = X != Y; B = str(A); C = len(B); B, C
('True', 4)
>>> X = 1; Y = 2; A = X <= Y; B = str(A); C = len(B); B, C ('True', 4) >>> X = 1; Y = 2; A = X >= Y; B = str(A); C = len(B); B, C
('False', 5)
>>> X = 1; Y = 2; A = ((X < Y) and (Y == 5)); B = str(A); C = len(B); B, C ('False', 5) >>> X = 1; Y = 2; A = ((X < Y) or (Y == 5)); B = str(A); C = len(B); B, C ('True', 4) >>> X = 1; Y = 2; A = not (X < Y); B = str(A); C = len(B); B, C ('False', 5) >>>