GNU/Linux >> Tutoriels Linux >  >> Linux

Forcer python à utiliser une version plus ancienne du module (que ce que j'ai installé maintenant)

Si la solution de SingleNegationElimination ne fonctionne pas, sachez que vous n'avez pas besoin de remplacer les 33 instances de l'importation ; il suffit de modifier sys.path aux points d'entrée; par exemple. vous pouvez cibler uniquement le __init__.py de votre module des dossiers.

Là, vous insérez par ex.

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

Une meilleure version de l'option B. serait de remplacer

import twisted

par

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

qui s'arrangera pour que la version correcte de twisted soit importée, tant qu'elle est installée, et lève une exception dans le cas contraire. Il s'agit d'une solution plus portable.

Cela ne fonctionnera pas, cependant (ni aucune autre variante de l'option B), si twisted est importé avant le pkg_resources.require est appelé ; twisted sera déjà en sys.modules

Modifier OP :Correction de syntaxe mineure, selon pkg_resources documentation


Linux
  1. Comment installer en toute sécurité une version plus ancienne/plus récente de Python ? ?

  2. Utiliser une ancienne version de Libreoffice ?

  3. Vérifier la version de Wordpress utilisée

  4. Que dois-je utiliser sous Linux pour rendre un programme python exécutable

  5. Python a-t-il un argument argc ?

Quelle version de Linux est-ce que j'utilise ?

Comment vérifier la version de Python

Comment utiliser les ensembles en Python

Comment configurer ou forcer les tâches Cron à utiliser une version PHP

Erreur d'importation aucun module nommé zlib (brew python installé)

Qu'est-ce qu'un noyau teinté sous Linux ?