La classificazione del Python

Il linguaggio Python presenta alcune delle caratteristiche dei linguaggi interpretati e alcune dei linguaggi compilati perché adotta una soluzione ibrida chiamata VIRTUAL MACHINE:

  • Le istruzioni python vengono convertite in un formato intermedio chiamato bytecode
  • Il codice bytecode viene convertito in un formato eseguibile per il computer

Anche se viene introdotto un ulteriore passo intermedio (cioè la creazione del bytecode che a sua volta deve essere convertito in codice eseguibile), il vantaggio è notevole:

  • per il Python esiste una sola macchina virtuale in grado di eseguire il codice prodotto: sarà compito della macchina virtuale tradurre in codice eseguibile tutte le istruzioni in bytecode
  • è possibile convertire facilmente lo stesso programma in modo che possa essere eseguito su sistemi operativi diversi (windows, linux o macOS): basta cambiare il blocco delle librerie (vedi schema) per ottenere uno specifico programma eseguibile
  • il bytecode prodotto viene riutilizzato per eseguire il programma più volte