GNU/Linux >> Tutoriales Linux >  >> Linux

Forzar a Python a usar una versión anterior del módulo (que la que tengo instalada ahora)

Si la solución de SingleNegationElimination no funciona, tenga en cuenta que no necesita reemplazar las 33 instancias de la importación; solo necesitas modificar sys.path en los puntos de entrada; p.ej. podría apuntar solo al __init__.py de su módulo archivos

Allí insertaría, p.

import sys
sys.path.insert(0, DIR)

Una mejor versión de la opción B. sería reemplazar

import twisted

por

import pkg_resources
pkg_resources.require("Twisted==8.2.0")
import twisted

que se encargará de que se importe la versión correcta de twisted, siempre que esté instalada, y generará una excepción de lo contrario. Esta es una solución más portátil.

Sin embargo, esto no funcionará (ni lo haría ninguna otra variación de la opción B), si el torcido se importa antes del pkg_resources.require recibe una llamada; twisted ya estará en sys.modules

Edición OP :Corrección menor de sintaxis, por pkg_resources documentos


Linux
  1. ¿Qué uso en Linux para hacer ejecutable un programa de Python?

  2. ¿Python tiene un argumento argc?

  3. falta el módulo python bz2

  4. ¿Cómo puedo usar un cuadro de diálogo de alerta con Python en Linux?

  5. Error de importación sin módulo llamado zlib (python instalado brew)

¿Qué versión de Linux estoy ejecutando?

Cómo comprobar la versión de Python

¿Cómo instalar de forma segura una versión anterior/nueva de Python?

Comprobar la versión de Wordpress en uso

Cómo usar conjuntos en Python

Cómo configurar o forzar trabajos cron para usar una versión de PHP