PEP 8 diyor ki:
- İçe aktarmalar her zaman, herhangi bir modül yorumundan ve belge dizgisinden hemen sonra ve modül globalleri ve sabitlerinden önce olmak üzere dosyanın en üstüne yerleştirilir.
Bazı durumlarda, PEP 8'i ihlal ediyorum. Bazen işlevlerin içindeki öğeleri içe aktarıyorum. Genel bir kural olarak, bunu yalnızca tek bir işlev içinde kullanılan bir içe aktarma varsa yaparım.
Herhangi bir görüş?
DÜZENLE (işlevleri içe aktarmayı düşünmemin nedeni iyi bir fikir olabilir):
Ana neden: Kodu daha net hale getirebilir.
- Bir işlevin koduna bakarken kendime şunu sorabilirim: "İşlev / sınıf xxx nedir?" (işlev içinde kullanılan xxx). Tüm içe aktarmalarım modülün üst kısmına gelirse, xxx'nin ne olduğunu belirlemek için oraya bakmam gerekir. Bu daha çok kullanırken bir sorundur
from m import xxx
.m.xxx
Fonksiyonu görmek muhtemelen bana daha fazlasını anlatıyor. Neyinm
olduğuna bağlı olarak : İyi bilinen bir üst düzey modül / paket (import m
) mi? Yoksa bir alt modül / paket (from a.b.c import m
) mi? - Bazı durumlarda, fazladan bilginin ("xxx nedir?") Xxx kullanılan yere yakın olması, işlevin anlaşılmasını kolaylaştırabilir.