Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimanakah Saya Boleh Mengimport Fungsi dari Direktori Berasingan dalam Python?

Bagaimanakah Saya Boleh Mengimport Fungsi dari Direktori Berasingan dalam Python?

Barbara Streisand
Lepaskan: 2024-12-30 11:55:08
asal
585 orang telah melayarinya

How Can I Import Functions from Separate Directories in Python?

Mengimport Fail daripada Direktori Berasingan

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
Salin selepas log masuk

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()
Salin selepas log masuk

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!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan