Saltar al contenido

¿Cómo actualizar Python?

Solución:

ACTUALIZAR: 2018-07-06

¡Esta publicación ya tiene casi 5 años! Python-2.7 dejará de recibir actualizaciones oficiales de python.org en 2020. Además, se lanzó Python-3.7. Consulte Python-Future sobre cómo hacer que su código Python-2 sea compatible con Python-3. Para actualizar conda, la documentación ahora recomienda usar conda update --all en cada uno de sus entornos conda para actualizar todos los paquetes y el ejecutable de Python para esa versión. Además, dado que cambiaron su nombre a Anaconda, no sé si las claves de registro de Windows siguen siendo las mismas.

ACTUALIZAR: 2017-03-24

No ha habido actualizaciones de Python (x, y) desde junio de 2015, por lo que creo que es seguro asumir que se ha abandonado.

ACTUALIZAR: 2016-11-11

Como @cxw comenta a continuación, estas respuestas son para las mismas versiones de bits, y por versión de bits me refiero a 64 bits frente a 32 bits. Por ejemplo, estas respuestas se aplicarían a la actualización de Python-2.7.10 de 64 bits a Python-2.7.11 de 64 bits, es decir: los mismo versión de bits. Si bien es posible instalar dos versiones de bits diferentes de Python juntas, requeriría algo de piratería, así que guardaré ese ejercicio para el lector. Si no quiere piratear, le sugiero que si cambia de versión de bit, elimine primero la otra versión de bit.

ACTUALIZACIONES: 2016-05-16

  • Anaconda y MiniConda se pueden usar con una instalación de Python existente deshabilitando las opciones para modificar Windows PATH y Registro. Después de la extracción, cree un enlace simbólico para conda en tus bin o instale conda desde PyPI. Luego crea otro enlace simbólico llamado conda-activate para activate en la carpeta raíz de Anaconda / Miniconda. Ahora Anaconda / Miniconda es como Ruby RVM. Solo usa conda-activate root para habilitar Anaconda / Miniconda.
  • Python portátil ya no se desarrolla ni se mantiene.

TL; DR

  • Usando Anaconda o miniconda, luego simplemente ejecute conda update --all para mantener actualizado cada entorno de conda,
  • mismo importante versión de Python oficial (p.ej 2.7.5), solo instale sobre el antiguo (p.ej 2.7.4),
  • diferente importante versión de Python oficial (p.ej 3.3), instale uno al lado del otro con las rutas / asociaciones antiguas para que apunten al dominante (p.ej 2.7), acceso directo a otro (p.ej en BASH $ ln /c/Python33/python.exe python3).

La respuesta depende:

  1. Si OP tiene 2.7.xy desea instalar una versión más reciente de 2.7.x, entonces

    • si usa el instalador MSI del sitio web oficial de Python, simplemente instale sobre la versión anterior, el instalador emitirá una advertencia de que eliminará y reemplazará la versión anterior; buscar en “programas instalados” en el “panel de control” antes y después confirma que la versión anterior ha sido reemplazada por la nueva versión; las versiones más nuevas de 2.7.x son compatibles con versiones anteriores, por lo que esto es completamente seguro y, por lo tanto, en mi humilde opinión, nunca deberían ser necesarias varias versiones de 2.7.x.
    • si está compilando desde el código fuente, probablemente debería compilar en un directorio nuevo y limpio, y luego apuntar su ruta a la nueva compilación una vez que pase todas las pruebas y esté seguro de que se ha compilado con éxito, pero es posible que desee mantener el antiguo construir alrededor porque la construcción desde la fuente puede ocasionalmente tener problemas. Consulte mi guía para compilar Python x64 en Windows 7 con SDK 7.0.
    • si se instala desde una distribución como Python (x, y), consulte su sitio web. Python (x, y) ha sido abandonado. Creo que las actualizaciones se pueden manejar desde Python (x, y) con su administrador de paquetes, pero las actualizaciones también se incluyen en su sitio web. No pude encontrar una referencia específica, por lo que tal vez alguien más pueda hablar sobre esto. Similar a ActiveState y probablemente Enthought, Python (x, y) claramente establece que es incompatible con otras instalaciones de Python:

      Se recomienda desinstalar cualquier otra distribución de Python antes de instalar Python (x, y)

    • Enthought Canopy usa un MSI y se instalará en Program FilesEnthought o homeAppDataLocalEnthoughtCanopyApp para todos los usuarios o por usuario respectivamente. Las instalaciones más nuevas se actualizan mediante la herramienta de actualización incorporada. Consulte su documentación.
    • ActiveState también usa un MSI para que las instalaciones más nuevas se puedan instalar sobre las más antiguas. Vea sus notas de instalación.

      Otras instalaciones de Python 2.7 En Windows, ActivePython 2.7 no puede coexistir con otras instalaciones de Python 2.7 (por ejemplo, una compilación de Python 2.7 de python.org). Desinstale cualquier otra instalación de Python 2.7 antes de instalar ActivePython 2.7.

    • Sage recomienda que lo instale en una máquina virtual y proporciona un archivo de imagen de Oracle VirtualBox que se puede utilizar para este propósito. Las actualizaciones se manejan internamente emitiendo el sage -upgrade mando.
    • Anaconda se puede actualizar usando el conda mando:

      conda update --all
      

      Anaconda / Miniconda permite a los usuarios crear ambientes para administrar múltiples versiones de Python, incluidas Python-2.6, 2.7, 3.3, 3.4 y 3.5. Las instalaciones raíz de Anaconda / Miniconda se basan actualmente en Python-2.7 o Python-3.5.

      Es probable que Anaconda interrumpa cualquier otra instalación de Python. La instalación utiliza el instalador MSI.
      [UPDATE: 2016-05-16] Anaconda y Miniconda ahora usan .exe instaladores y proporcionar opciones para deshabilitar Windows PATH y alteraciones del registro.

      Por lo tanto, Anaconda / Miniconda se puede instalar sin interrumpir las instalaciones de Python existentes, dependiendo de cómo se instaló y las opciones que se seleccionaron durante la instalación. Si el .exe se utiliza el instalador y las opciones para modificar Windows PATH y el registro son no deshabilitado, luego cualquier instalación anterior de Python será deshabilitado, pero simplemente desinstalar la instalación de Anaconda / Miniconda debería restaurar la instalación original de Python, excepto tal vez el Registro de Windows PythonPythonCore teclas.

      Anaconda / Miniconda realiza las siguientes ediciones de registro independientemente de las opciones de instalación: HKCUSoftwarePythonContinuumAnalytics con las siguientes claves: Help, InstallPath, Modules y PythonPath – Python oficial también registra estas claves, pero bajo PythonPythonCore. También se registra información de desinstalación para Anaconda Miniconda. A menos que seleccione la opción “Registrarse con Windows” durante la instalación, no crea PythonCore, por lo que integraciones como Python Tools para Visual Studio no ven automáticamente Anaconda / Miniconda. Si la opción de registrar Anaconda / Miniconda es habilitado, entonces creo que sus claves de registro de Windows de Python existentes se modificarán y la desinstalación probablemente no las restaurará.

    • Las actualizaciones de WinPython, creo, se pueden manejar a través del Panel de control de WinPython.
    • PortablePython es ya no se está desarrollando. No tenía método de actualización. Posiblemente las actualizaciones se pueden descomprimir en un directorio nuevo y luego Applibsite-packages y AppScripts podría copiarse a la nueva instalación, pero si esto no funcionó, entonces podría haber sido necesario reinstalar todos los paquetes. Usar pip list para ver qué paquetes se instalaron y sus versiones. Algunos fueron instalados por PortablePython. Usar easy_install pip para instalar pip si no estaba instalado.
  2. Si OP tiene 2.7.xy quiere instalar una versión diferente, p.ej <= 2.6.xo> = 3.xx, entonces está bien instalar diferentes versiones una al lado de la otra. Debe elegir con qué versión de Python (si corresponde) asociarse *.py archivos y que desea en su ruta, aunque debería poder configurar shells con diferentes rutas si usa BASH. AFAIK 2.7.x es compatible con versiones anteriores 2.6.x, por lo que en mi humilde opinión no es necesario realizar instalaciones en paralelo, sin embargo, Python-3.xx no es compatible con versiones anteriores, por lo que mi recomendación sería poner Python-2.7 en su camino y tener Python-3 sea una versión opcional creando un acceso directo a su ejecutable llamado python3 (esta es una configuración común en Linux). La ruta de instalación predeterminada oficial de Python en Windows es

    • C: Python33 para 3.3.x (último 2013-07-29)
    • C: Python32 para 3.2.x
    • &C.
    • C: Python27 para 2.7.x (último 2013-07-29)
    • C: Python26 para 2.6.x
    • &C.
  3. Si OP no está actualizando Python, sino simplemente actualizando paquetes, es posible que deseen buscar en virtualenv para mantener separadas las diferentes versiones de paquetes específicos para sus proyectos de desarrollo. Pip también es una gran herramienta para actualizar paquetes. Si los paquetes utilizan instaladores binarios, normalmente desinstalo el paquete antiguo antes de instalar el nuevo.

Espero que esto aclare cualquier confusión.

La mejor solución es instalar las diferentes versiones de Python en múltiples rutas.

p.ej. C: Python27 para 2.7 y C: Python33 para 3.3.

Lea esto para obtener más información: Cómo ejecutar múltiples versiones de Python en Windows

  • Los instaladores oficiales de Python .msi están diseñados para reemplazar:

    • cualquier micro-lanzamiento anterior (en xyz, z es “micro”) porque se garantiza que son compatibles con versiones anteriores y compatibles con binarios
    • una instalación “instantánea” (construida a partir de la fuente) con cualquier versión micro
  • Un instalador de instantáneas está diseñado para reemplazar cualquier instantánea con una versión micro inferior.

(Ver código responsable para 2.x, para 3.x)

Cualquier otra versión no es necesariamente compatible y, por lo tanto, se instala junto con la existente. Si desea desinstalar la versión anterior, deberá hacerlo manualmente. Y también desinstale los módulos de terceros que tenía para ello:

  • Si instaló algún módulo de bdist_wininst paquetes (Windows .exes), desinstálelos antes de desinstalar la versión, o el desinstalador podría no funcionar correctamente si tiene lógica personalizada
  • módulos instalados con setuptools/pip que residen en Libsite-packages simplemente se puede eliminar después
  • los paquetes que instaló por usuario, si los hay, residen en %APPDATA%/Python/PythonXY/site-packages y también se puede eliminar
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *