Introduzione
Python è uno dei linguaggi di programmazione più popolari grazie alla sua semplicità e versatilità. È ampiamente utilizzato in vari settori, tra cui lo sviluppo web, il machine learning, l'automazione, e molto altro. Se sei un principiante che vuole imparare Python in modo pratico, questo articolo ti guiderà attraverso 10 progetti Python facili da realizzare. Ogni progetto è pensato per farti acquisire nuove competenze e rafforzare quelle già apprese.
1. Calcolatrice Semplice
Una calcolatrice è uno dei progetti più semplici per iniziare con Python. Ti aiuterà a comprendere meglio l'uso delle funzioni e delle condizioni.
Come costruirla:
Crea una funzione per ogni operazione matematica (somma, sottrazione, moltiplicazione e divisione). Poi, costruisci un menu che permetta all'utente di scegliere l'operazione e inserire i numeri.
def add(a, b): return a + b def subtract(a, b): return a - b def multiply(a, b): return a * b def divide(a, b): return a / b while True: print("Seleziona l'operazione: 1.Add, 2.Subtract, 3.Multiply, 4.Divide") choice = input("Scegli (1/2/3/4): ") num1 = float(input("Inserisci il primo numero: ")) num2 = float(input("Inserisci il secondo numero: ")) if choice == '1': print(f"Risultato: {add(num1, num2)}") elif choice == '2': print(f"Risultato: {subtract(num1, num2)}") elif choice == '3': print(f"Risultato: {multiply(num1, num2)}") elif choice == '4': print(f"Risultato: {divide(num1, num2)}") else: print("Scelta non valida")
2. Convertitore di Temperatura
Questo progetto ti aiuterà a comprendere come gestire input e output in Python, oltre a esercitarti con le formule matematiche. L'obiettivo è convertire le temperature da Celsius a Fahrenheit e viceversa.
Come costruirlo:
def celsius_to_fahrenheit(c): return (c * 9/5) + 32 def fahrenheit_to_celsius(f): return (f - 32) * 5/9 temp = float(input("Inserisci la temperatura: ")) choice = input("Convertire da (C) Celsius o (F) Fahrenheit? ") if choice.lower() == 'c': print(f"{temp}°C è {celsius_to_fahrenheit(temp)}°F") elif choice.lower() == 'f': print(f"{temp}°F è {fahrenheit_to_celsius(temp)}°C") else: print("Scelta non valida")
3. Generatore di Password Sicure
Impara a generare password sicure in modo automatico con Python. Questo progetto utilizza la libreria random
per creare stringhe casuali di lettere, numeri e simboli.
Come costruirlo:
import random import string def generate_password(length): characters = string.ascii_letters + string.digits + string.punctuation password = ''.join(random.choice(characters) for i in range(length)) return password password_length = int(input("Lunghezza della password: ")) print(f"La tua password generata è: {generate_password(password_length)}")
4. Gioco "Indovina il Numero"
Un altro classico progetto per principianti. Il programma genera un numero casuale, e l'utente deve indovinare qual è. Il programma fornisce suggerimenti se il numero è troppo alto o troppo basso.
Come costruirlo:
import random numero = random.randint(1, 100) tentativi = 0 while True: guess = int(input("Indovina il numero (1-100): ")) tentativi += 1 if guess < numero: print("Troppo basso!") elif guess > numero: print("Troppo alto!") else: print(f"Complimenti! Hai indovinato in {tentativi} tentativi.") break
5. Contatore di Parole in un Testo
Costruisci un programma che conta il numero di parole in un testo inserito dall'utente. Questo progetto ti aiuta a lavorare con stringhe e liste.
Come costruirlo:
def count_words(text): words = text.split() return len(words) text = input("Inserisci un testo: ") print(f"Il numero di parole nel testo è: {count_words(text)}")
6. Calcolatore di IMC (Indice di Massa Corporea)
Questo progetto calcola l'Indice di Massa Corporea (IMC) di una persona in base al suo peso e alla sua altezza. Ti aiuterà a usare le operazioni aritmetiche e gestire input dell'utente.
Come costruirlo:
def calcola_imc(peso, altezza): return peso / (altezza ** 2) peso = float(input("Inserisci il tuo peso in kg: ")) altezza = float(input("Inserisci la tua altezza in metri: ")) imc = calcola_imc(peso, altezza) print(f"Il tuo IMC è: {imc:.2f}")
7. Lista della Spesa
Costruisci una semplice lista della spesa che permette all'utente di aggiungere e rimuovere elementi. Questo progetto ti aiuterà a comprendere meglio le liste e le operazioni su di esse.
Come costruirlo:
spesa = [] while True: scelta = input("Vuoi (A)ggiungere, (R)imuovere o (V)isualizzare la lista? (Esci con Q): ").lower() if scelta == 'a': item = input("Inserisci l'elemento da aggiungere: ") spesa.append(item) elif scelta == 'r': item = input("Inserisci l'elemento da rimuovere: ") if item in spesa: spesa.remove(item) else: print(f"{item} non è nella lista.") elif scelta == 'v': print("Lista della spesa:", spesa) elif scelta == 'q': break else: print("Scelta non valida.")
8. Simulatore di Lancio dei Dadi
Un progetto divertente che simula il lancio di due dadi. Puoi farlo usando il modulo random
e generando numeri casuali per simulare il risultato del lancio.
Come costruirlo:
import random def lancia_dadi(): dado1 = random.randint(1, 6) dado2 = random.randint(1, 6) return dado1, dado2 while True: input("Premi Invio per lanciare i dadi...") dado1, dado2 = lancia_dadi() print(f"Hai lanciato un {dado1} e un {dado2}") if input("Vuoi lanciare di nuovo? (S/N): ").lower() != 's': break
9. Cronometro
Costruisci un semplice cronometro utilizzando il modulo time
. Questo progetto ti aiuterà a capire come Python gestisce il tempo.
Come costruirlo:
import time def cronometro(): input("Premi Invio per iniziare...") start = time.time() input("Premi Invio per fermare...") end = time.time() print(f"Tempo trascorso: {end - start:.2f} secondi") cronometro()
10. Convertitore di Valuta
Costruisci un programma che converte un importo da una valuta all'altra. Puoi partire con tassi di cambio statici e, in futuro, connetterti a un'API per ottenere tassi aggiornati.
Come costruirlo:
def converti_valuta(importo, tasso): return importo * tasso euro_to_usd = 1.10 importo = float(input("Inserisci l'importo in Euro: ")) print(f"Convertito in USD: {converti_valuta(importo, euro_to_usd)}")
Conclusione
Questi 10 progetti Python sono un ottimo punto di partenza per imparare e praticare la programmazione. Ogni progetto ti aiuterà a migliorare le tue competenze, passando dai concetti base fino a implementazioni più complesse. Man mano che completi ciascun progetto, non dimenticare di sperimentare e personalizzare i tuoi programmi per renderli più adatti alle tue esigenze!