Résoudre l’erreur Python ImportError: cannot import name urandom


Vous utilisez virtualenv, et soudainement après activation, impossible de lancer la moindre instruction Python sans que ce dernier ne s’exclame ImportError: cannot import name urandom.

Je ne saurais pas vous dire pourquoi c’est arrivé, mais voici un moyen de le réparer:

virtualenv /chemin/absolu/vers/le/dossier/de/l/environnement/virtuel.

Par exemple, si vous utilisez virtualenv wrapper:

virtualenv /home/sam/.virtualenvs

Ca va resetter l’environnement virtuel, et tout rentrera dans l’ordre. Attention cependant, si vous avez un interpretteur different, je ne sais pas si il faut le préciser avec --python ou pas.

4 thoughts on “Résoudre l’erreur Python ImportError: cannot import name urandom

    • Sam Post author

      Par contre je suppose que tu veux dire --setuptools car distribute est le comportement par défaut dans les derniers virtualenvs.

  • Brutasse

    Ça vient de la dernière mise à jour de Python qui ajoute la “hash randomization”. Ça touche à os.urandom, d’où l’erreur d’import. Recréer le virtualenv est effectivement la solution, de toute façon ils sont jetables :).

Comments are closed.

Des questions Python sans rapport avec l'article ? Posez-les sur IndexError.