Je porte mon application python de python 2 à python 3. Comme python-3 fournit l'utilitaire 2to3
qui convertit le code python-2 en python-3. import builtins
donnant l'erreur en tant que
ImportError: No module named builtins
Une idée pour résoudre ce problème?
Résolution d'une erreur similaire dans une situation distincte en installant le package future
name__.
Sudo pip install future
Il n'est pas clair si votre erreur se produit lors de l'exécution de 2to3 ou lors de la tentative d'exécution du code résultant. Si c'est le cas lors de l'exécution de 2to3, c'est probablement parce qu'il utilise python2
(valeur par défaut) et donc si vous n'avez pas installé future
name__, builtins
sera manquant. De même, si vous essayez d'exécuter le code résultant avec python2
, la même erreur peut se produire.
L'outil 2to3
génère un code compatible avec Python 3 uniquement.
Vous le voyez probablement parce que vous utilisez le code converti dans Python 2.
Si vous voulez que votre code soit compatible avec Python 2 et 3, vous pouvez le faire à la place:
try:
import builtins
except ImportError:
import __builtin__ as builtins