in Python non è necessario né definire le variabili prima di utilizzarle, né specificare il loro tipo
basta assegnare il valore

sintassi


nome variabili


scope delle variabili
accesso alla variabili


tipi già presenti
immutabili
Tipo di datoNomeDescrizioneEsempi
interointintero di dimensione arbitraria-42, 0, 1200 ,999999999999999999
realefloatnumero a virgola mobile3.14, 1.23e-10, 4.0E210
booleanoboolper valori veri o falsiTrue, False
complessocomplexnumeri complessi con parte reale e immaginaria3+4j, 5.0+4.1j, 3j
stringhestrusata per rappresentare testo'', 'stefano', "l'acqua"
bytesbytesusata per rappresentare bytesb'', b'\x00\x01\x02', b'Python'
insiemifrozensetun'insieme di oggetti unici{1, 2, 3}, {'World', 'Hello'}




mutabili
Tipo di datoNomeDescrizioneEsempi
listelistuna sequenza mutabile di oggetti[], [1, 2, 3], ['Hello', 'World']
tupletupleuna sequenza immutabile di oggetti(), (1, 2, 3), ('Python', 3)
insiemisetun'insieme di oggetti unici{1, 2, 3}, {'World', 'Hello'}
dizionaridictuna struttura che associa chiavi a valori{}, {'nome': 'Ezio', 'cognome': 'Melotti'}



tipi importabili
Tipo di datoNomeDescrizione
decimaledecimalnumeri virgola mobile accurato (supera limiti del float)
frazionalefractionslavorare con numeri razionali usando le frazioni
contenitorenamedtuple una tupla che consente l’accesso agli elementi per nome, invece che per posizione
contenitoreOrderedDictun dizionario che mantiene l’ordine di inserimento degli elementi
contenitoredefaultdictun dizionario che permette di specificare un valore di default
contenitoreCounterun dizionario che conta il numero di occorrenze di ogni elemento