Apabila cuba mengimport modul daripada subpakej berbeza dalam struktur direktori, anda mungkin menghadapi "Percubaan import relatif dalam bukan -pakej" ralat. Isu ini berpunca daripada menjalankan modul sebagai modul utama, yang menganggap import relatif seolah-olah modul berada di peringkat teratas.
Untuk menyelesaikan isu ini, pastikan modul tidak dilaksanakan sebagai modul utama. Dalam Python 2.6 dan lebih baru, anda boleh menggunakan atribut pakej untuk menentukan kedudukan modul dalam hierarki pakej dan menyelesaikan import relatif dengan sewajarnya. Rujuk PEP 366 untuk mendapatkan maklumat lanjut tentang perubahan ini.
Atribut pakej menyediakan penyelesaian yang lebih bersih daripada penggodaman manipulasi sys.path. Ia membolehkan anda mengimport modul berbanding modul utama, serupa dengan tingkah laku yang diterangkan dalam PEP 366.
Atas ialah kandungan terperinci Bagaimanakah Saya Melakukan Import Relatif dalam Python dan Elakkan Ralat 'Percubaan import relatif dalam bukan pakej'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!