Bu dizin yapısını düşünün:
app/
__init__.py
sub1/
__init__.py
mod1.py
sub2/
__init__.py
mod2.py
Kod mod1
yazıyorum ve bir şey içe aktarmam gerekiyor mod2
. Bunu nasıl yapmalıyım?
Denedim from ..sub2 import mod2
ama bir "paket olmayan göreceli ithalat denedi " alıyorum.
Etrafta dolaştım ama sadece " sys.path
manipülasyon" kesmek buldum . Temiz bir yol yok mu?
Düzenleme: tümü benim __init__.py
şu anda boş
Edit2: Ben sub2 alt paketleri (arasında paylaşılır sınıfları içerdiğinden bu yapmaya çalışıyorum sub1
, subX
vs.).
Edit3: anlatıldığı gibi aradığım davranış aynıdır PEP 366 (teşekkürler John B)