Apabila memanipulasi fail daripada pelbagai folder, adalah sukar untuk mengimport fungsi daripada satu fail ke yang lain. Ini ditemui dalam pelbagai struktur direktori, selalunya melibatkan folder bersarang dan berbilang fail.
Pertimbangkan struktur direktori di bawah:
application ├── app │ └── folder │ └── file.py └── app2 └── some_folder └── some_file.py
Dalam senario ini, bagaimana seseorang boleh mengimport fungsi (cth., func_name) ditakrifkan dalam file.py dari dalam some_file.py? Walaupun kaedah intuitif dari application.app.folder.file import func_name mungkin kelihatan munasabah, ia selalunya menghasilkan ralat.
Secara lalai, Python hanya memeriksa direktori tempat skrip titik masuk (yang sedang dilaksanakan) tinggal dan sys.path, yang termasuk laluan ke pemasangan pakej. Jika fail yang diperlukan berada di luar lokasi ini, import gagal.
Walau bagaimanapun, adalah mungkin untuk melanjutkan laluan carian Python secara dinamik:
# some_file.py import sys # appending search path sys.path.insert(1, '/path/to/application/app/folder') # importing file and function import file func_name()
Dengan memasukkan direktori yang mengandungi file.py ke dalam laluan carian, Python kini boleh berjaya mengimportnya. Pendekatan ini membolehkan pengendalian fail yang fleksibel merentas direktori yang berbeza, menjadikannya penyelesaian yang berharga apabila bekerja dengan struktur fail yang diasingkan.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengimport Fungsi dari Direktori Berasingan dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!