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?

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.


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
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.