Guida Completa alla Programmazione Python per Principianti
Introduzione
Python è uno dei linguaggi di programmazione più diffusi al mondo, noto per la sua semplicità e versatilità. Si presta bene sia ai principianti che agli esperti, ed è usato in ambiti come lo sviluppo web, l'analisi dei dati, la scienza, la robotica e l'intelligenza artificiale. In questa guida scoprirai come installare Python, scrivere i tuoi primi programmi e comprenderne i concetti fondamentali.
1. Installazione e Ambiente di Sviluppo
Perché serve installare Python?
Prima di poter scrivere ed eseguire programmi Python, bisogna installare l’interprete Python sul proprio computer. L’interprete traduce il codice che scrivi in istruzioni che il computer può capire.
Windows
- Vai su python.org e scarica l’ultima versione stabile.
- Durante l’installazione, spunta la casella "Add Python to PATH": così potrai eseguire Python da qualsiasi cartella nel terminale.
- Per verificare l’installazione, apri il Prompt dei comandi e digita:
python --version
Dovresti vedere la versione installata.
MacOS
Se hai Homebrew (gestore di pacchetti), puoi installare Python con:
brew install python
In alternativa, scarica il pacchetto dal sito ufficiale.
Linux (Debian/Ubuntu)
Sui sistemi Linux, puoi usare il terminale:
sudo apt update
sudo apt install python3 python3-pip
Con pip puoi installare librerie aggiuntive.
Scegliere l’editor giusto
Un editor è il programma dove scrivi il codice. I più consigliati per Python sono:
- Visual Studio Code: leggero e ricco di estensioni.
- PyCharm Community: molto potente per progetti di grandi dimensioni.
- Thonny: pensato per i principianti.
2. Primo Programma
Cosa significa "Hello World"?
Il primo programma che si scrive in ogni linguaggio è solitamente quello che stampa "Ciao, mondo!" a schermo. Serve a testare che tutto funzioni.
Crea un file chiamato primo_programma.py e inserisci:
print("Ciao, mondo!")
Salva il file e, tramite terminale, esegui:
python primo_programma.py
Se appare la frase, Python è installato e funzionante.
3. Fondamenti della Sintassi Python
Cosa sono le variabili?
Le variabili sono "contenitori" che servono per memorizzare dati. In Python non serve dichiarare il tipo di variabile: il linguaggio lo capisce da solo.
nome = "Alice" # stringa
eta = 25 # intero
altezza = 1.68 # decimale (float)
is_attivo = True # booleano
Come si scrivono i commenti?
I commenti servono a spiegare il codice e non vengono eseguiti.
# Questo è un commento su una riga
"""
Questo è un commento
su più righe
"""
Come si prende un input dall’utente?
L’input serve per far inserire dati all’utente tramite tastiera.
nome = input("Come ti chiami? ")
print("Ciao, " + nome)
La funzione input() riceve sempre una stringa.
4. Operatori
A cosa servono gli operatori?
Gli operatori permettono di eseguire calcoli, confronti e logiche sui dati.
Operatori matematici
somma = 5 + 3
differenza = 5 - 3
prodotto = 5 * 3
divisione = 5 / 3
modulo = 5 % 3 # resto della divisione
potenza = 2 ** 3 # 2 elevato alla 3
Operatori logici
a = True
b = False
print(a and b) # AND logico: False
print(a or b) # OR logico: True
print(not a) # Negazione: False
Operatori di confronto
x = 10
print(x == 10) # uguale
print(x != 5) # diverso
print(x > 5) # maggiore
print(x <= 10) # minore o uguale
5. Strutture di Controllo
Perché servono le strutture di controllo?
Servono per decidere cosa deve fare il programma in base a certe condizioni o per ripetere delle azioni.
Condizioni (if, elif, else)
eta = int(input("Quanti anni hai? "))
if eta >= 18:
print("Sei maggiorenne")
elif eta >= 14:
print("Sei un adolescente")
else:
print("Sei minorenne")
if controlla una condizione, elif (else if) altre alternative, else tutto il resto.
Cicli (for, while)
Il ciclo for serve per ripetere una serie di istruzioni un certo numero di volte.
for i in range(5): # Da 0 a 4
print(i)
Il ciclo while ripete le istruzioni finché la condizione è vera.
n = 0
while n < 5:
print(n)
n += 1
Break e Continue
break interrompe il ciclo, continue salta alla prossima iterazione.
for i in range(10):
if i == 5:
break # Termina il ciclo
if i % 2 == 0:
continue # Salta i numeri pari
print(i)
6. Strutture Dati Fondamentali
Cosa sono le strutture dati?
Le strutture dati sono modi diversi di organizzare le informazioni nel programma.
Liste
Le liste sono raccolte ordinate e modificabili di elementi.
frutti = ["mela", "banana", "fragola"]
print(frutti[0]) # mela
frutti.append("kiwi") # aggiunge un elemento
print(len(frutti)) # 4
Tuple
Le tuple sono raccolte ordinate, ma immutabili (non si possono modificare).
coordinate = (10, 20)
x, y = coordinate
Set
I set sono raccolte non ordinate e senza duplicati.
numeri = {1, 2, 3, 2, 1} # Valori duplicati vengono ignorati
numeri.add(4)
Dizionari
I dizionari sono raccolte di coppie chiave-valore.
studente = {"nome": "Alice", "eta": 25}
print(studente["nome"])
studente["corso"] = "Python"
7. Funzioni
Che cosa sono le funzioni?
Le funzioni servono per riutilizzare un blocco di codice e organizzare meglio il programma.
def saluta(nome):
print("Ciao, " + nome)
def somma(a, b):
return a + b
saluta("Alice")
print(somma(2, 3))
Argomenti di default e keyword arguments
Si possono impostare valori di default e specificare gli argomenti per nome.
def saluta(nome, messaggio="Buongiorno"):
print(messaggio, nome)
saluta("Bob")
saluta("Anna", messaggio="Ciao")
8. Gestione degli Errori (Exception)
Perché gestire gli errori?
Gli errori (eccezioni) sono eventi imprevisti che possono mandare in crash il programma. Imparare a gestirli è fondamentale per scrivere codice robusto.
try:
numero = int(input("Inserisci un numero: "))
risultato = 10 / numero
except ValueError:
print("Non hai inserito un numero valido.")
except ZeroDivisionError:
print("Non puoi dividere per zero.")
finally:
print("Operazione conclusa.")
try: prova ad eseguire il codice.except: gestisce l’errore se si verifica.finally: viene sempre eseguito (utile per chiudere file, connessioni, ecc).
9. Moduli e Pacchetti
Cosa sono i moduli?
Un modulo è semplicemente un file Python che contiene funzioni, classi o variabili che puoi riutilizzare.
import math
print(math.sqrt(25))
Come usare le librerie esterne?
Con pip puoi installare librerie realizzate da altri sviluppatori.
pip install requests
E poi usarle nel codice:
import requests
response = requests.get("https://www.python.org")
print(response.status_code)
10. Introduzione alla Programmazione Orientata agli Oggetti (OOP)
Cos’è la OOP?
La programmazione orientata agli oggetti permette di modellare il programma usando "oggetti", ciascuno con attributi e comportamenti.
class Cane:
def __init__(self, nome):
self.nome = nome
def abbaia(self):
print(self.nome + " dice: Bau!")
fido = Cane("Fido")
fido.abbaia()
class: definisce una classe.init: metodo speciale per inizializzare l’oggetto.self: rappresenta l’oggetto stesso.
11. Gestione di File
Come leggere e scrivere file?
Spesso serve salvare dati su file o leggerli da essi.
# Scrivere su file
with open("testo.txt", "w") as f:
f.write("Ciao, file!")
# Leggere da file
with open("testo.txt", "r") as f:
contenuto = f.read()
print(contenuto)
Con la parola chiave with il file viene chiuso automaticamente alla fine.
12. Esercizi Pratici
Perché fare esercizi?
La pratica è fondamentale per imparare a programmare! Prova a risolvere questi esercizi:
- Crea un programma che chiede il nome e l’età, poi stampa un messaggio personalizzato.
- Scrivi una funzione che verifica se un numero è pari o dispari.
- Crea una lista di numeri e stampa solo quelli maggiori di 5.
- Implementa un dizionario che tiene traccia dei voti di studenti e stampa la media.
- Scrivi una classe
Librocon attributi titolo e autore, e un metodo che stampa una descrizione.
13. Risorse Utili
Dove trovare aiuto e approfondimenti?
- Documentazione Ufficiale Python
- LearnPython.org
- W3Schools Python Tutorial
- Corso Python su YouTube (Italiano)
- Python per Data Science
14. Consigli Pratici
Come imparare meglio?
- Pratica ogni giorno: anche pochi minuti fanno la differenza!
- Prova a risolvere problemi reali, anche semplici.
- Leggi e studia codice scritto da altri.
- Non aver paura di sbagliare: gli errori aiutano a crescere.
- Usa ambienti virtuali (
venv) per lavorare su progetti diversi senza farli entrare in conflitto tra loro.
python -m venv mioambiente
source mioambiente/bin/activate # Linux/Mac
mioambiente\Scripts\activate # Windows
Conclusione
Python è uno strumento potente e versatile che ti permette di imparare la programmazione e risolvere tanti tipi di problemi. Sperimenta, sbaglia, cerca soluzioni online e, soprattutto, divertiti!
Buon viaggio nel mondo di Python 🚀