
Questo articolo descrive come controllare, ottenere e stampare la versione di Python installata ed eseguita su Windows, Mac e Linux.
- Controlla la versione di Python sulla riga di comando:
--version, -V, -VV
- Controlla la versione di Python nello script:
sys, platform
- Stringa di informazioni varie:
sys.version
- Tupla di numeri di versione:
sys.version_info
- Stringa del numero di versione:
platform.python_version()
- Tupla di stringhe del numero di versione:
platform.python_version_tuple()
- Stringa di informazioni varie:
Se vuoi controllare la versione del pacchetto/libreria, del sistema operativo, ecc., invece della versione di Python stesso, consulta i seguenti articoli.
Controlla la versione di Python sulla riga di comando:--version, -V, -VV
Esegui il comando python o python3 con l’opzione –version o -V sul prompt dei comandi (cmd) su Windows o sul terminale su Mac e Linux.
$ python --version
Python 2.7.15
$ python -V
Python 2.7.15
$ python3 --version
Python 3.7.0
$ python3 -V
Python 3.7.0
Come nell’esempio sopra, in alcuni ambienti, la serie Python2.x è assegnata al comando python e la serie Python3.x è assegnata al comando python3.
L’opzione -VV è stata aggiunta da Python 3.6. Vengono emesse informazioni più dettagliate di -V.
$ python3 -VV
Python 3.7.0 (default, Jun 29 2018, 20:13:13)
[Clang 9.1.0 (clang-902.0.39.2)]
Controlla la versione di Python nello script:sys, platform
È possibile utilizzare il modulo sys della libreria standard o il modulo della piattaforma per ottenere la versione di Python efficace in esecuzione.
Lo stesso script può essere utilizzato su Windows, Mac e Linux, incluso Ubuntu.
È utile per verificare quale versione di Python è in esecuzione in un ambiente in cui sono installate più versioni di Python. Anche se pensavi che Python3 fosse in esecuzione, c’è stato un caso in cui Python2 era in esecuzione, quindi se qualcosa va storto, controllalo una volta.
Può essere utilizzato anche quando si desidera cambiare le operazioni a seconda che si tratti di Python2 o Python3.
Stringa di informazioni varie:sys.version
sys.version è una stringa che indica varie informazioni, incluso il numero di versione.
sys.version
Una stringa contenente il numero di versione dell’interprete Python più informazioni aggiuntive sul numero di build e sul compilatore utilizzatore.
sys.version — Parametri e funzioni specifiche del sistema — Documentazione Python 3.7.4
import sys
print(sys.version)
# 3.7.0 (default, Jun 29 2018, 20:13:13)
# [Clang 9.1.0 (clang-902.0.39.2)]
print(type(sys.version))
# <class 'str'>
Tupla di numeri di versione:sys.version_info
sys.version_info è una tupla (denominata tupla) che indica il numero di versione.
sys.version_info
Una tupla contenente i cinque componenti del numero di versione: major, minor, micro, releaselevel e serial.
sys — Parametri e funzioni specifiche del sistema — Documentazione Python 3.7.4
print(sys.version_info)
# sys.version_info(major=3, minor=7, micro=0, releaselevel="final", serial=0)
print(type(sys.version_info))
# <class 'sys.version_info'>
releaselevel è str e gli altri elementi sono int.
È possibile ottenere ciascun valore specificando un indice.
print(sys.version_info[0])
# 3
Dalla versione 2.7 per Python2 e dalla versione 3.1 per Python3, puoi ottenere elementi per nome (principale, minore, micro, livello di rilascio, seriale).
Ad esempio, se desideri ottenere una versione principale:
print(sys.version_info.major)
# 3
Se vuoi eseguire se Python2 o Python3 è in esecuzione puoi controllare la versione principale con questo sys.version_info.major. 2 significa Python2 e 3 significa Python3.
Puoi cambiare il processo tra Python2 o Python3.
if sys.version_info.major == 3:
print('Python3')
else:
print('Python2')
# Python3
Utilizzare sys.version_info.minor per cambiare le operazioni con una versione secondaria.
Come accennato in precedenza, l’accesso agli elementi tramite nomi è supportato dalla versione 2.7 e dalla versione 3.1, quindi se esiste la possibilità che venga eseguito in una versione precedente, utilizzare sys.version_info[0] o sys.version_info[1].
Stringa del numero di versione:platform.python_version()
platform.python_version() contiene una stringa ‘major.minor.patchlevel’.
platform.python_version()
Restituisce la versione Python come stringa ‘major.minor.patchlevel’.
piattaforma — Accesso ai dati identificativi della piattaforma sottostante — Documentazione Python 3.7.4
import platform
print(platform.python_version())
# 3.7.0
print(type(platform.python_version()))
# <class 'str'>
È quando utile si desidera ottenere il numero di versione come una semplice stringa.
Tupla di stringhe del numero di versione:platform.python_version_tuple()
platform.python_version_tuple() restituisce una tupla (maggiore, minore, livello di patch). Il tipo di ogni elemento è str, non int.
platform.python_version_tuple()
Restituisce la versione Python come tupla (principale, minore, patchlevel) di stringhe.
piattaforma — Accesso ai dati identificativi della piattaforma sottostante — Documentazione Python 3.7.4
print(platform.python_version_tuple())
# ('3', '7', '0')
print(type(platform.python_version_tuple()))
# <class 'tuple'>
Poiché è solo una tupla, a differenza di sys.version_info, non è possibile accedervi per nome come major o minor.