Memahami "Bad Magic Number" ImportError
"Bad magic number" ImportError berlaku dalam Python apabila fail pyc yang diimport mengandungi salah nombor ajaib, iaitu penanda yang menunjukkan jenis fail dalam sistem seperti UNIX.
Ralat ini boleh timbul kerana beberapa sebab:
Untuk menyelesaikan isu ini, ikut ini langkah:
Padam Fail Pyc: Padam semua fail .pyc yang dikaitkan dengan modul yang diimport. Ini memaksa jurubahasa untuk menyusun semula fail .py semasa import. Anda boleh menggunakan arahan berikut dalam terminal UNIX:
rm *.pyc
find . -name '*.pyc' -delete
Nilai Nombor Ajaib: Rujuk jadual berikut untuk nombor ajaib yang dikaitkan dengan pelbagai versi Python:
Python Version | Magic Number |
---|---|
1.5, 1.5.1, 1.5.2 | 20121 |
1.6 | 50428 |
2.0, 2.0.1 | 50823 |
2.1, 2.1.1, 2.1.2 | 60202 |
2.2 | 60717 |
2.3a0 (various builds) | 62011, 62021, 62041 |
2.4a0 | 62051 |
2.4a3 | 62061 |
2.5a0 (various builds) | 62071, 62081, 62091, 62092 |
2.5b3 (various builds) | 62101, 62111 |
2.5c1 | 62121 |
2.5c2 | 62131 |
2.6a0 | 62151 |
2.6a1 | 62161 |
2.7a0 | 62171 |
Memahami ralat nombor ajaib yang buruk dan puncanya akan membantu anda menyelesaikan isu ini dengan berkesan apabila ditemui.
Atas ialah kandungan terperinci Mengapa Saya Mendapat Ralat Import \'Nombor Ajaib Buruk\' dalam Python dan Bagaimana Saya Boleh Membetulkannya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!