useful_thing
Tek bir dosyada bulunan kullanışlı bir python işlevi veya sınıfım (veya her ne olursa olsun) olduğunu varsayalım . Kaynak ağacı düzenlemenin esasen iki yolu vardır. İlk yol tek bir modül kullanıyor:
- setup.py
- README.rst
- ...etc...
- foo.py
burada useful_thing
tanımlanmıştır foo.py
. İkinci strateji bir paket yapmaktır:
- setup.py
- README.rst
- ...etc...
- foo
|-module.py
|-__init__.py
burada useful_thing
tanımlanmıştır module.py
. Paket halinde __init__.py
bu gibi görünüyor
from foo.module import useful_thing
Böylece her iki durumda da yapabilirsiniz from foo import useful_thing
.
Soru: Hangi yoldan tercih edilir ve neden?
EDIT: Gnat kullanıcısı bu sorunun kötü bir şekilde oluşturulduğunu söylediğinden, resmi python paketleme eğitiminin yukarıda açıklanan yöntemlerden hangisinin tercih edildiği konusunda yorum yapmadığını ekleyeceğim. Ben açıkça am değil ben lehte / aleyhte bir tartışma oluşturan bir topluluk tercih edilen yöntem, olup olmadığı ile ilgilenen olduğum için artıları ve eksileri benim kişisel listesini veren :)