libri-javascript-python

In questa lezione svilupperemo una calcolatrice in Python utilizzando le classi. La nostra calcolatrice dovrà semplicemente prendere in input due numeri richiesti ed elaborarli attraverso le operazioni aritmetiche.

Calcolatrice in Python – implementazione

Innanzitutto creeremo una classe Calculator dove utilizzeremo il costruttore init con i due parametri a e b oltre al parametro self.

Poi definiamo dei metodi per le 4 operazioni aritmetiche. Stiamo attenti alla divisione in quanto non si può dividere un numero per 0.

Ecco dunque una possibile implementazione:


class Calculator:
    def __init__(self, a, b):
        self.a = a
        self.b = b

    def add(self):
        return self.a + self.b

    def sub(self):
        return self.a - self.b

    def mol(self):
        return self.a * self.b

    def div(self):
        if self.b == 0:
            print("Non puoi dividere per zero")
            return None
        
        return self.a / self.b

Salviamo il file con nome ‘Calculator.py’ per poterlo così importare ogni qualvolta ci serve.

Dopo definiamo un’istanza passando i valori a e b e richiamiamo alcuni metodi.

Ecco il codice di esempio:



from Calculator import *

calc = Calculator(10,5)

divisione = calc.div()
print(divisione)

addizione = calc.add()
print(addizione)

Facciamo una piccola variazione alla calcolatrice in Python appena creata. Piuttosto che passare gli attributi all’istanza, li chiederemo in input.

Inoltre potremmo anche chiedere all’utente di scegliere un’operatore aritmetico.

Modifichiamo allora la classe precedente inserendo i valori di default ad a e b.

Ecco una possibile implementazione:



class Calculator:
    def __init__(self):
        self.a = 0.0
        self.b = 0.0

    def add(self):
        return self.a + self.b

    def sub(self):
        return self.a - self.b

    def mol(self):
        return self.a * self.b

    def div(self):
        if self.b == 0:
            print("Non puoi dividere per zero")
            return None
        
        return self.a / self.b

Dopo chiediamo all’utente di inserire i numeri che possono essere anche con la virgola.

Poi chiediamo di inserire l’operatore per poi eseguire correttamente l’operazione.

Infine stampiamo il risultato:



from Calculator import *

calc = Calculator()
calc.a = float(input('Inserisci il primo numero: '))
calc.b = float(input('Inserisci il secondo numero: '))

op = input("""
Scegliere un'operazione: 
+ , - , * , /
""")

if op == '+':
    risultato = calc.add()
elif op == '-':
    risultato = calc.sub()
elif op == '*':
    risultato = calc.mol()
elif op == '/':
    risultato = calc.div()
else:
    risultato = "Il carattere inserito non è valido"
    
print(risultato)

Conclusione

In questa lezione abbiamo realizzato una semplice calcolatrice in Python utilizzando le classi, nelle prossime lezioni studieremo tanti altri esempi sulle classi in Python.

Alcuni link utili

Indice tutorial sul linguaggio Python

Operazioni con i file in Python

Introduzione ai dizionari in Python

Funzione lambda in Python

Utilizzare Plot di Matplotlib

Quali sono i metodi delle liste

Memorizzare dati di input in un file di testo

Che cos’è il machine learning

Machine Learning in Python