Consejos útiles

Java Dev Notes

Pin
Send
Share
Send
Send


¿Cómo verificar qué versión del intérprete de Python interpreta mi script?

Esta información está disponible en la línea sys.version en el módulo sys:

Para su posterior procesamiento:

Para que el script se ejecute con los requisitos mínimos para la versión del intérprete de Python, agréguelo a su código:

Compara versiones mayores y menores de información. Agregue micro (= 0, 1, etc.) e incluso el nivel de lanzamiento (= 'alfa', 'final', etc.) a la tupla como desee. Sin embargo, tenga en cuenta que casi siempre es mejor verificar una función específica y, si no, una solución alternativa (o salir de la crisis). Algunas veces las funciones desaparecen en las nuevas versiones, reemplazándolas por otras.

Desde la línea de comando (tenga en cuenta la "V" mayúscula):

Esto se describe en "man python".

Me gusta sys.hexversion para tales cosas.

Lo mejor de todo, probablemente algo como esto:

Además, siempre puede ajustar su importación con un simple intento, que debería detectar errores de sintaxis. Y, para el punto de @ Heikki, este código será compatible con versiones mucho más antiguas de python:

Pon algo como:

en la parte superior de tu guión.

Tenga en cuenta que dependiendo de qué más haya en su secuencia de comandos, las versiones anteriores de python que el objetivo ni siquiera pueden cargar la secuencia de comandos, por lo tanto, no serán lo suficientemente lejos como para informar este error. Como solución alternativa, puede ejecutar lo anterior en un script que importe un script con código más moderno.

Aquí hay una versión corta de la línea de comando que sale de inmediato (conveniente para scripts y ejecución automática):

O simplemente mayor, menor y micro:

Con seis módulos, puede hacer esto:

La manera más fácil

Simplemente ingrese python en su terminal y podrá ver la versión como se muestra a continuación.

Como dijo Set, el script principal puede verificar sys.version_info (pero tenga en cuenta que esto no apareció hasta 2.0, por lo que si desea admitir versiones anteriores, deberá verificar otra propiedad de la versión del módulo sys).

Pero aún debe tener cuidado de no utilizar ninguna función del lenguaje Python en el archivo que no esté disponible en versiones anteriores de Python. Por ejemplo, esto está permitido en Python 2.5 y versiones posteriores:

pero no funcionará en versiones anteriores de Python, porque solo puede tener OR, o, finalmente, una coincidencia con el intento. Por lo tanto, para compatibilidad con versiones anteriores de Python, debe escribir:

Blog Archive

  • ►2014 (4)
    • ► marzo (4)
  • ►2013 (4)
    • ► septiembre (4)
  • ►2012 (3)
    • ►Agosto (1)
    • ►febrero (1)
    • ►Enero (1)
  • ►2011 (32)
    • ►Noviembre (1)
    • ► octubre (2)
    • ► septiembre (1)
    • ►Agosto (7)
    • ►junio (1)
    • ►mayo (13)
    • ► abril (2)
    • ►Enero (5)
  • ►2010 (67)
    • ► diciembre (3)
    • ►Noviembre (4)
    • ► octubre (7)
    • ► septiembre (13)
    • ►Agosto (2)
    • ► julio (8)
    • ►junio (6)
    • ►mayo (5)
    • ► abril (9)
    • ► marzo (6)
    • ►febrero (4)
  • ▼2009 (54)
    • ► diciembre (1)
    • ▼ noviembre (11)
      • 10 habilidades que los desarrolladores necesitarán en el medio.
      • 10 cosas que todo desarrollador de Java debería tener
      • 10 cosas que todo desarrollador de Java debe hacer.
      • Cómo encontrar la versión de Python
      • Node.JS: marco de JavaScript para manejar la entrada.
      • Patrón Reactor
      • Motor JavaScript V8
      • Sun Java Application Store admite pagos cher.
      • Yahoo Traffic Server ahora es de código abierto
      • Google abre herramientas de desarrollo clave
      • Python, Django y Google App Engine
    • ► octubre (19)
    • ► septiembre (4)
    • ►Agosto (1)
    • ► julio (3)
    • ►junio (6)
    • ►mayo (6)
    • ► abril (3)

Forma manual

Para trabajar con varias versiones de python, puede instalar las versiones necesarias en el prefijo especificado. Por ejemplo, para no ser inteligente con los derechos, instalaremos 2 versiones adicionales de python (2.7.6 y 3.3.2) en el directorio de usuarios:
2.7.6

para 3.3.2 hacer las mismas operaciones:

Ahora puede crear un entorno virtual para usar estas versiones:

o mediante virtualenvwrapper:

En realidad, sobre la base de este método, se describe un artículo sobre la creación de alojamiento múltiple.
Además, si necesita usar una de estas versiones como python de forma predeterminada, debe agregar la ruta al intérprete de python a la variable de entorno.

En consecuencia, en lugar de bashrc, establece bash_profile, zshrc, kshrc, perfil dependiendo de su shell.

Y si es necesario, puede instalar pip preinstalando setuptools.

Fuh, bueno, todo parece ser. Y ahora sobre cómo hacerlo más fácil, uso el administrador de versiones de Python.

En general, si eres lo suficientemente flojo, entonces no puedes hacer todo lo que se describió anteriormente, sino usar la utilidad pyenv, que simplificará esta interacción con el entorno y las rutas.

Entonces, ¿cuál es la peculiaridad de esta utilidad? Esto es lo que ella puede decir de las palabras de la autora del proyecto:

  • Dejarte cambiar la versión global de Python por usuario.
  • Brindar apoyo para versiones de Python por proyecto.
  • Permitirte anular la versión de Python con una variable de entorno
  • Buscar comandos desde múltiples versiones de Python a la vez. Esto puede ser útil para probar en versiones de Python con tox.

Por defecto, todas las versiones de Python estarán disponibles en

/.pyenv/versions/. Puede cambiar las versiones de Python tanto en el contexto global como en el local (por ejemplo, para un proyecto específico).

La forma de instalar pyenv está bien descrita en las instrucciones. Además, el autor tiene un script que, junto con pyenv, también pone complementos adicionales, incluso para virtualenv. Es posible instalar el complemento para virtualenvwrapper también.

Antes de comenzar la instalación, asegúrese de tener instalado git:

Luego, instale de acuerdo con las instrucciones:

En el segundo caso, la instalación se realizará con complementos adicionales.
Luego, para que todo funcione, complementamos nuestro bashrc y recargamos el shell:

Para actualizar la utilidad o cambiar su versión, usamos git.

Para control de versiones pyenv debes ir al directorio con la utilidad:

Para ver las versiones disponibles:

para cambiar la versión

Entorno virtual

Todo, y luego como quieras. Si usa la 3ª rama de Python, puede usar la utilidad venv que funciona de forma inmediata para crear un entorno virtual. Sobre esto hay un artículo sobre Habr. Si está más acostumbrado a virtualenv o su envoltorio virtualenvwrapper, entonces hay dos opciones: poner el complemento en pyenv, o úselos para la versión de Python con la que está trabajando. En consecuencia, si selecciona la primera opción, los entornos que creó se agregarán a sus versiones de python y estarán disponibles mediante el comando:

Agregar un complemento es fácil, solo clónelo desde el repositorio pyenv-virtualenv o pyenv-virtualenvwrapper:

Puede encontrar un ejemplo de uso en la documentación de pyenv-virtualenv y pyenv-virtualenvwrapper.
Todo, y luego úsalo como quieras.

Ejemplo de uso


Además de todo, todo es bastante detallado y detallado en detalle por el autor del proyecto en sus repositorios en github.

Entorno virtual

Todo, y luego como quieras. Si usa la 3ª rama de Python, puede usar la utilidad venv que funciona de forma inmediata para crear un entorno virtual. Sobre esto hay un artículo sobre Habr. Si está más acostumbrado a virtualenv o su envoltorio virtualenvwrapper, entonces hay dos opciones: poner el complemento en pyenv, o úselos para la versión de Python con la que está trabajando. En consecuencia, si selecciona la primera opción, los entornos que creó se agregarán a sus versiones de python y estarán disponibles mediante el comando:

Agregar un complemento es fácil, solo clónelo desde el repositorio pyenv-virtualenv o pyenv-virtualenvwrapper:

Puede encontrar un ejemplo de uso en la documentación de pyenv-virtualenv y pyenv-virtualenvwrapper.
Todo, y luego úsalo como quieras.

Ejemplo de uso

Ahora, estando en el directorio del proyecto, puede ejecutar el script desde la versión deseada de python sin realizar ninguna acción. pyenv crea un archivo en el directorio versión .python que contiene información sobre qué versión de python con qué entorno usar para este proyecto.

Mira el video: Java Programming (Octubre 2021).

Pin
Send
Share
Send
Send