Además, una forma rápida de ver qué binarios de Python están instalados es:ls /usr/bin | grep python
Tejas Kale
1
@TejasKale Es mejor ejecutarlo ls /usr/bin/python*(o ls /usr/bin/*python*si realmente desea archivos con pythoncualquier parte del nombre). De esa manera, lsaún formatea su salida para un terminal (y obtienes múltiples columnas y, con el lsalias predeterminado en Ubuntu, la coloración).
Eliah Kagan
Respuestas:
86
Puede usar python -V(et al.) Para mostrarle la versión de Python a la que se pythonresuelve el comando. Si eso es todo lo que necesita, ya está. Pero para ver cada versión de Python en su sistema se necesita un poco más.
En Ubuntu podemos verificar la resolución con readlink -f $(which python). En casos predeterminados en 14.04 esto simplemente apuntará a /usr/bin/python2.7.
Podemos encadenar esto para mostrar la versión de esa versión de Python:
Pero esto todavía solo nos dice cuál es nuestra pythonresolución actual . Si estuviéramos en un Virtualenv (un sistema común de gestión de pila de Python) pythonpodría resolver a una versión diferente:
El hecho es que podría haber cientos de versiones diferentes de Python secretadas alrededor de su sistema, ya sea en rutas que se agregan contextualmente o que viven bajo diferentes nombres binarios (como python3).
Si suponemos que un binario de Python siempre se llamará python<something>y será un archivo binario, simplemente podemos buscar en todo el sistema archivos que coincidan con esos criterios:
Recibo lo siguiente, y no estoy seguro de lo que significa: readlink: extra operand '/usr/bin/python2.7'Try 'readlink --help' for more information.
hello_there_andy
Supuse python -vque devolvería la versión y ejecuté esto como root. imprimió una larga lista de cosas, pero en la parte superior decía installing zipimport hooky ahora parece que estoy en un programa del que no tengo idea cómo salir, y mucho menos ¿desinstalarlo? ¿Puedes ayudarme aquí?
PrimitiveNom
2
@Anthony La marca -Vde la versión distingue entre mayúsculas y minúsculas. python -vponerlo en una consola Python con mensajes detallados activados. Control + D para salir. O escriba exit()y presione regresar.
Oli
@hello_there_andy Supongo que cometiste un error al copiar el comando.
wjandrea
63
Escriba siguiente en el terminal ( Ctrl+ Alt+ T):
python -V
o
python --version
Puede encontrar una lista de opciones / parámetros para muchos comandos en el terminal escribiendo el comando seguido de --help
Ejemplo:
python --help
Manual / páginas de manual también disponibles para la mayoría de tales CLI que puede ser visualizada por man <command>(Ej: man python)
De man python:
COMMAND LINE OPTIONS
-V ,--version
Prints the Python version number of the executable and exits.
También está python3instalado en muchas máquinas, por lo que puede hacer:
Vale la pena señalar, como @Florian Diesch a continuación alude a que probablemente tenga múltiples versiones de "python". La llamada predeterminada "python" apunta a una instalación de python 2.7, aunque ubuntu 14.04 también viene con python 3.0.
Cuando ejecuta pythonen la terminal, producirá una salida como esta:
Python2.7.6(default,Mar222014,22:59:56)[GCC 4.8.2] on linux2
Type"help","copyright","credits"or"license"for more information.>>>
Ver la primera línea - Python 2.7.6.
También corre python3. Tengo 3.4.1
Python3.4.1(default,Jul312014,12:46:17)[GCC 4.8.2] on linux
Type"help","copyright","credits"or"license"for more information.>>>
Sin embargo, esto no los mostrará a todos. Si tiene 2 o más versiones de Python 3.Xx, solo verá la última.
Por defecto en 14.04, tiene 2.7.6 y 3.4.0. Como puede ver, he actualizado a 3.4.1. Sé que todavía tengo 3.4.0 porque cuando voy a /usr/binver python3.4, y si corro /usr/bin/python3.4en la línea de comando, obtengo 3.4.0, y ejecutar /usr/local/bin/python3.4me da 3.4.1
"Si tiene 2 o más versiones de Python 3.Xx, solo verá la última". ¿No mostrará en su lugar el que contenga su directorio contenedor primero en la PATHvariable de entorno? ¿Por qué ejecutar python3siempre ejecuta la versión (sub) más alta de python3 que está instalada? O, en la práctica, ¿no mostrará a qué versión /usr/bin/python3apunta el enlace simbólico, que no necesita ser la última?
Eliah Kagan
@Eliah No tengo idea, pero algunos programas lo toman desde allí y otros desde el /usr/bin...
No, un usuario dijo que inactivo se ejecutó con 3.4.0 y la línea de comando con 3.4.1 ...
Tim
5
También puede verificar la versión de Python desde el propio código utilizando el platformmódulo de la biblioteca estándar. Hay dos funciones: platform.python_version()(devuelve cadena) y platform.python_version_tuple()(devuelve tupla). Guión:
Supuse python -vque devolvería la versión y ejecuté esto como root. imprimió una larga lista de cosas, pero en la parte superior decía installing zipimport hooky ahora parece que estoy en un programa del que no tengo idea cómo salir, y mucho menos ¿desinstalarlo? ¿Puedes ayudarme aquí?
ls /usr/bin | grep python
ls /usr/bin/python*
(ols /usr/bin/*python*
si realmente desea archivos conpython
cualquier parte del nombre). De esa manera,ls
aún formatea su salida para un terminal (y obtienes múltiples columnas y, con ells
alias predeterminado en Ubuntu, la coloración).Respuestas:
Puede usar
python -V
(et al.) Para mostrarle la versión de Python a la que sepython
resuelve el comando. Si eso es todo lo que necesita, ya está. Pero para ver cada versión de Python en su sistema se necesita un poco más.En Ubuntu podemos verificar la resolución con
readlink -f $(which python)
. En casos predeterminados en 14.04 esto simplemente apuntará a/usr/bin/python2.7
.Podemos encadenar esto para mostrar la versión de esa versión de Python:
Pero esto todavía solo nos dice cuál es nuestra
python
resolución actual . Si estuviéramos en un Virtualenv (un sistema común de gestión de pila de Python)python
podría resolver a una versión diferente:Esta es la salida real.
El hecho es que podría haber cientos de versiones diferentes de Python secretadas alrededor de su sistema, ya sea en rutas que se agregan contextualmente o que viven bajo diferentes nombres binarios (como
python3
).Si suponemos que un binario de Python siempre se llamará
python<something>
y será un archivo binario, simplemente podemos buscar en todo el sistema archivos que coincidan con esos criterios:Obviamente, es un comando bastante horrible, pero nuevamente es un resultado real y parece haber hecho un trabajo bastante completo.
fuente
readlink: extra operand '/usr/bin/python2.7'
Try 'readlink --help' for more information.
python -v
que devolvería la versión y ejecuté esto como root. imprimió una larga lista de cosas, pero en la parte superior decíainstalling zipimport hook
y ahora parece que estoy en un programa del que no tengo idea cómo salir, y mucho menos ¿desinstalarlo? ¿Puedes ayudarme aquí?-V
de la versión distingue entre mayúsculas y minúsculas.python -v
ponerlo en una consola Python con mensajes detallados activados. Control + D para salir. O escribaexit()
y presione regresar.Escriba siguiente en el terminal ( Ctrl+ Alt+ T):
o
Puede encontrar una lista de opciones / parámetros para muchos comandos en el terminal escribiendo el comando seguido de --help
Ejemplo:
Manual / páginas de manual también disponibles para la mayoría de tales CLI que puede ser visualizada por
man <command>
(Ej:man python
)De
man python
:También está
python3
instalado en muchas máquinas, por lo que puede hacer:para averiguar qué python 3.x está ejecutando.
fuente
y
muestra la versión de Python 2.x,
la versión instalada de Python 3.x
fuente
Cuando ejecuta
python
en la terminal, producirá una salida como esta:Ver la primera línea -
Python 2.7.6
.También corre
python3
. Tengo 3.4.1Sin embargo, esto no los mostrará a todos. Si tiene 2 o más versiones de Python 3.Xx, solo verá la última.
Por defecto en 14.04, tiene 2.7.6 y 3.4.0. Como puede ver, he actualizado a 3.4.1. Sé que todavía tengo 3.4.0 porque cuando voy a
/usr/bin
verpython3.4
, y si corro/usr/bin/python3.4
en la línea de comando, obtengo 3.4.0, y ejecutar/usr/local/bin/python3.4
me da 3.4.1Mis pronombres son El / El
fuente
PATH
variable de entorno? ¿Por qué ejecutarpython3
siempre ejecuta la versión (sub) más alta de python3 que está instalada? O, en la práctica, ¿no mostrará a qué versión/usr/bin/python3
apunta el enlace simbólico, que no necesita ser la última?/usr/bin
...env
líneas hashbang para encontrar el interpretado que pueda ser el sistema -preferido en común en los scripts de Python ). No estoy seguro de si eso es lo que quieres decir con diferencias entre algunos programas y otros.También puede verificar la versión de Python desde el propio código utilizando el
platform
módulo de la biblioteca estándar. Hay dos funciones:platform.python_version()
(devuelve cadena) yplatform.python_version_tuple()
(devuelve tupla). Guión:Corriendo:
fuente
sys.version
osys.version_info
.Si desea ver todas las versiones de Python disponibles como comandos, ejecute
compgen -c python
. P.ej:Si desea obtener la versión de cada uno de los anteriores, aquí hay una línea:
Actualizar:
python*-config
Me di cuenta de que los
python*-config
programas no admiten la--version
bandera. Por ejemplo:Para que pueda filtrarlos
grep -v
, por ejemplo:fuente
Abra fácilmente la terminal y haga lo siguiente:
Escribir
para verificar su versión 2.x En mi caso, aparecerá:
Para el 3.x, escriba:
En mi caso, parece:
Para ambos casos, para salir de Python Shell, escriba:
fuente
En terminal de shell
$ which -a python
enumera todos suspython
.$ which -a python2.7
enumera todos suspython2.7
.$ /usr/bin/python -V
da información sobre la versión de/usr/bin/python
.comprobar en el script de Python
Aquí hay una ilustración en ipython shell:
fuente
python -v
que devolvería la versión y ejecuté esto como root. imprimió una larga lista de cosas, pero en la parte superior decíainstalling zipimport hook
y ahora parece que estoy en un programa del que no tengo idea cómo salir, y mucho menos ¿desinstalarlo? ¿Puedes ayudarme aquí?