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 pythonls /usr/bin/python*(ols /usr/bin/*python*si realmente desea archivos conpythoncualquier parte del nombre). De esa manera,lsaún formatea su salida para un terminal (y obtienes múltiples columnas y, con ellsalias predeterminado en Ubuntu, la coloración).Respuestas:
Puede usar
python -V(et al.) Para mostrarle la versión de Python a la que sepythonresuelve 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: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 -vque devolvería la versión y ejecuté esto como root. imprimió una larga lista de cosas, pero en la parte superior decíainstalling zipimport hooky ahora parece que estoy en un programa del que no tengo idea cómo salir, y mucho menos ¿desinstalarlo? ¿Puedes ayudarme aquí?-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 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á
python3instalado 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
pythonen 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/binverpython3.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.1Mis pronombres son El / El
fuente
PATHvariable de entorno? ¿Por qué ejecutarpython3siempre 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?/usr/bin...envlí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
platformmó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.versionosys.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*-configMe di cuenta de que los
python*-configprogramas no admiten la--versionbandera. 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 pythonenumera todos suspython.$ which -a python2.7enumera todos suspython2.7.$ /usr/bin/python -Vda 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 -vque devolvería la versión y ejecuté esto como root. imprimió una larga lista de cosas, pero en la parte superior decíainstalling zipimport hooky ahora parece que estoy en un programa del que no tengo idea cómo salir, y mucho menos ¿desinstalarlo? ¿Puedes ayudarme aquí?