Daha
Dosyaları farklı klasörden içe aktarma
Aşağıdaki klasör yapısına sahibim.
application/app/folder/file.py
'da bulunan başka bir Python dosyasında file.py'den bazı fonksiyonları içe aktarmak istiyorum.
application/app2/some_folder/some_file.py
Denedim.
from application.app.folder.file import func_name
ve diğer bazı çeşitli denemeler yaptım ama şimdiye kadar düzgün bir şekilde içe aktarmayı başaramadım. Bunu nasıl yapabilirim?
1168
3
Varsayılan olarak, yapamazsınız. Bir dosyayı içe aktarırken, Python yalnızca geçerli dizini, giriş noktası betiğinin çalıştığı dizini ve paket yükleme dizini gibi konumları içeren
sys.path
i arar (aslında bundan biraz daha karmaşıktır, ancak bu çoğu durumu kapsar).Ancak, Python yoluna çalışma zamanında ekleme yapabilirsiniz:
Yanlış bir şey yok:
Sadece
klasör
ün ayrıca bir__init__.py
içerdiğinden emin olun, bu bir paket olarak dahil edilmesini sağlar. Diğer cevapların nedenPYTHONPATH
hakkında konuştuğundan emin değilim.Bence geçici bir yol, belgelerde açıklandığı gibi ortam değişkeni
PYTHONPATH
kullanmak olacaktır: Python2, Python3