ImportError: nenhum módulo chamado builtins


8

Estou portando meu aplicativo python do python 2 para o python 3. Como o python-3 fornece um utilitário 2to3que converte o código python-2 em python-3. import builtins dando erro como

ImportError: No module named builtins

Alguma idéia para corrigir esse problema?

Respostas:


10

Solucionou um erro semelhante em uma situação separada instalando o pacote future.

sudo pip install future

Não está claro se o erro ocorre ao executar o 2to3 ou ao tentar executar o código resultante. Se estiver executando o 2to3, é provável que esteja realmente usando python2(o padrão) e, portanto, se você não tiver instalado o future, builtinsestará faltando. Da mesma forma, se você estiver tentando executar o código resultante com python2o mesmo erro, poderá ocorrer.


2

A 2to3ferramenta gera código compatível apenas com o Python 3.

Você provavelmente está vendo isso porque está executando o código convertido no Python 2.

Se você deseja que seu código seja compatível com Python 2 e 3, faça isso:

try:
    import builtins
except ImportError:
    import __builtin__ as builtins
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.