HTML
Struttura e tag di base.
Struttura base
<!DOCTYPE html>
<html lang="it">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Titolo</title>
</head>
<body>
</body>
</html>
Tag fondamentali
Aggiungi qui i tuoi appunti.
CSS
Selettori e regole di stile.
Selettori
Aggiungi qui i tuoi appunti.
JavaScript
Concetti base del linguaggio.
Concetti base
Aggiungi qui i tuoi appunti.
Python — Basi
Concetti fondamentali e comandi essenziali per iniziare a programmare in Python.
Documentazione ufficiale
python.org — sito ufficiale di Python
docs.python.org — documentazione completa
PEP 8 — Style Guide for Python Code
Definizione di variabili (e tipo)
x = 10 # intero
nome = "Mauro" # stringa
pi = 3.14 # float
attivo = True # booleano
Tipi principali
int # numeri interi
float # numeri decimali
str # stringhe
bool # True / False
print("Ciao")
print(x)
print("Nome:", nome)
Input
nome = input("Come ti chiami? ")
eta = int(input("Età: "))
Operazioni
a + b # somma
a - b # sottrazione
a * b # moltiplicazione
a / b # divisione (float)
a // b # divisione intera
a % b # resto
a ** b # potenza
Condizioni
if x > 10:
print("Maggiore di 10")
elif x == 10:
print("Uguale a 10")
else:
print("Minore di 10")
Liste
numeri = [1, 2, 3]
numeri.append(4)
numeri[0] # primo elemento
len(numeri) # lunghezza
Loop
for n in numeri:
print(n)
i = 0
while i < 5:
print(i)
i += 1
Funzioni
def saluta(nome):
print("Ciao", nome)
saluta("Mauro")
Import
import math
print(math.sqrt(16))
Python — Sezioni avanzate
Strumenti fondamentali per lavorare con dati, file e strutture più complesse.
Stringhe
testo = "Ciao Mauro"
testo.lower() # minuscolo
testo.upper() # maiuscolo
testo.split() # lista di parole
" ".join(lista) # unisce elementi
len(testo) # lunghezza
Dizionari
d = {"nome": "Mauro", "eta": 30}
d["nome"] # accede a un valore
d["citta"] = "Milano" # aggiunge chiave
d.keys() # chiavi
d.values() # valori
d.items() # coppie chiave/valore
Tuple e Set
t = (1, 2, 3) # tuple (immutabili)
s = {1, 2, 3} # set (unici, no duplicati)
s.add(4)
s.remove(2)
Range
for i in range(5): # 0..4
print(i)
for i in range(1, 6): # 1..5
print(i)
for i in range(0, 10, 2): # passo 2
print(i)
Lettura e scrittura file
# leggere file
with open("file.txt", "r") as f:
contenuto = f.read()
# scrivere file
with open("file.txt", "w") as f:
f.write("Ciao Mauro")
Eccezioni
try:
x = 10 / 0
except ZeroDivisionError:
print("Errore: divisione per zero")
finally:
print("Finito")
Moduli utili
import math
math.sqrt(16)
import random
random.randint(1, 10)
import datetime
datetime.datetime.now()
Terminale macOS
Comandi fondamentali e utili per navigare, gestire file e lavorare (anche con Python).
Navigazione tra cartelle
pwd # mostra il percorso corrente
ls # elenca i file
ls -l # elenco dettagliato
ls -a # mostra anche file nascosti
cd nome # entra nella cartella "nome"
cd .. # torna alla cartella superiore
cd ~ # torna alla home (~ da tastiera ⌥ Option + 5)
cd /percorso # vai a un percorso preciso
cd - # torna alla cartella precedente
Gestione file e cartelle
mkdir nome # crea una cartella
touch file # crea un file vuoto
cp a b # copia file
mv a b # sposta o rinomina file
rm file # elimina file
rm -r cartella # elimina cartella (attenzione!)
Visualizzare contenuti
cat file # mostra il contenuto
head file # prime righe
tail file # ultime righe
tail -f file # segue un file in tempo reale
Ricerca
find . -name "nome" # cerca file nella cartella corrente
grep "testo" file # cerca testo dentro un file
grep -r "testo" cartella # cerca ricorsivamente
Processi e sistema
top # processi attivi
ps # lista processi
kill PID # termina processo
df -h # spazio su disco
du -sh * # dimensione cartelle
whoami # utente corrente
Esecuzione programmi
python3 file.py
python3 /percorso/completo/file.py
chmod +x script.sh # rende eseguibile uno script
./script.sh # esegue script nella cartella corrente
Utilità e trucchi
clear # pulisce lo schermo
open . # apre la cartella corrente nel Finder
open file # apre un file con l'app predefinita
history # cronologia comandi
which comando # percorso di un comando
Server Linux (Hetzner)
Comandi per lavorare sul server remoto via SSH: navigazione, ambienti virtuali Python, Docker.
Navigazione tra cartelle
pwd # mostra il percorso corrente
ls -l # elenca i file (dettagliato)
ls -la # elenca anche i file nascosti
cd /percorso/assoluto # vai a un percorso preciso (parte sempre da /)
cd nomecartella # entra in una cartella (percorso relativo, deve esistere qui dentro)
cd .. # torna alla cartella superiore
cd ~ # torna alla home (per root: /root)
cd - # torna alla cartella precedente
Nota: percorso assoluto (inizia con /) funziona sempre, da qualsiasi posizione. Percorso relativo (senza /) cerca dentro la cartella corrente.
Creare e gestire file/cartelle
mkdir nomecartella # crea una cartella
touch file.py # crea un file vuoto
cp origine destinazione # copia un file
mv origine destinazione # sposta o rinomina
rm file # elimina un file (NON reversibile)
rm -rf cartella # elimina cartella + contenuto (attenzione: NON reversibile)
Attenzione: rm -rf non chiede conferma e non ha un cestino. Controllare sempre due volte il percorso prima di lanciarlo.
Backup rapido con data (prima di modificare file importanti)
cp file.txt file-backup-$(date +%Y%m%d).txt
# $(date +%Y%m%d) genera la data di oggi (es. 20260704)
# così il nome del backup dice sempre quando è stato fatto
ls -la nomefile-backup-*
# mostra tutti i backup di un file, con data e dimensione
# utile per vedere quanti se ne sono accumulati nel tempo
Ambiente virtuale Python (venv)
python3 -m venv venv # crea un ambiente virtuale chiamato "venv"
source venv/bin/activate # attiva l'ambiente (il prompt mostra "(venv)")
deactivate # disattiva l'ambiente virtuale
Il venv isola le librerie di un progetto dal resto del sistema, evitando conflitti tra progetti diversi.
Installare librerie (pip)
pip install nomelibreria # installa una libreria
pip install libreria1 libreria2 # installa più librerie insieme
pip list # mostra le librerie installate nel venv attivo
Importante: attivare sempre il venv (source venv/bin/activate) prima di installare, altrimenti le librerie finiscono nel sistema globale.
Verificare se una libreria è già installata
pip show nomelibreria
# Mostra versione e dettagli se è installata nel venv attivo.
# Se dice "Package(s) not found", va installata con pip install.
Avviare una dashboard Streamlit
streamlit run nomefile.py --server.port 8501 --server.address 0.0.0.0
# --server.port -> porta su cui è raggiungibile (default 8501)
# --server.address 0.0.0.0 -> accetta connessioni da qualsiasi indirizzo,
# non solo da dentro il server stesso
# Poi si apre dal browser su http://IP-DEL-SERVER:8501
Fermare un processo "in ascolto" nel terminale
Ctrl+C
# Ferma programmi che restano attivi occupando il terminale
# (es. streamlit run, o qualsiasi server che "resta in ascolto").
# Il terminale torna al prompt normale, pronto per altri comandi.
Eseguire uno script Python
python nomefile.py # esegue lo script (con venv attivo)
python3 nomefile.py # equivalente, esplicito su Python 3
Controllare la sintassi di un file Python (.py) senza eseguire
python -m py_compile nomefile.py
# Controlla che il codice sia scritto correttamente (parentesi, indentazione,
# due punti) SENZA eseguirlo davvero.
# Nessun output = tutto corretto.
# Utile prima di lanciare script lunghi o dopo modifiche importanti.
Cercare file sul server
find / -iname "*.html" -not -path "/proc/*" 2>/dev/null
# find / -> cerca in tutto il filesystem
# -iname "*.html" -> cerca per nome, case-insensitive
# -not -path "/proc/*" -> esclude cartelle di sistema "rumorose"
# 2>/dev/null -> nasconde gli errori tipo "permesso negato"
Vedere risorse e servizi del server
df -h # spazio disco disponibile
free -h # memoria RAM disponibile
docker ps # container Docker attivi in questo momento
Editor da terminale (rapido)
nano nomefile # apre un file in edit semplice da terminale
# Ctrl+O per salvare, Ctrl+X per uscire
cat nomefile # mostra tutto il contenuto di un file
Altro
Appunti vari.