ImportError: Tidak ada modul bernama builtins

8

Saya porting aplikasi python saya dari python 2 ke python 3. Seperti python-3 menyediakan utilitas 2to3yang mengubah kode python-2 ke python-3. import builtins memberikan kesalahan sebagai

ImportError: No module named builtins

Adakah ide untuk memperbaiki masalah ini?

mrudula
sumber

Jawaban:

10

Memecahkan kesalahan serupa dalam situasi terpisah dengan menginstal paket future.

sudo pip install future

Tidak jelas apakah kesalahan Anda terjadi saat menjalankan 2to3 atau ketika mencoba menjalankan kode yang dihasilkan. Jika saat menjalankan 2to3 kemungkinan karena itu benar-benar menggunakan python2(default) dan dengan demikian jika Anda belum menginstalnya future, builtinsakan hilang. Demikian pula jika Anda mencoba menjalankan kode yang dihasilkan dengan python2kesalahan yang sama mungkin terjadi.

pengguna9794
sumber
2

The 2to3alat menghasilkan kode kompatibel dengan Python 3-saja.

Anda mungkin melihatnya karena Anda menjalankan kode yang dikonversi dengan Python 2.

Jika Anda ingin kode Anda kompatibel dengan Python 2 dan 3, Anda bisa melakukan ini sebagai gantinya:

try:
    import builtins
except ImportError:
    import __builtin__ as builtins
elias
sumber