Yanıtlar:
Dürüst olmak gerekirse ihtiyaçlarınıza bağlıdır. Çoğu zaman bir işlev modülü aradığınız şey olacaktır.
Python sınıfları (imho) C # veya C ++ veya Java'daki sınıflar gibi düşünülmemelidir, bir dizi işlevi daha büyük bir üst öğeye gruplamak için mantıklı bir neden olmalıdır, veri yapıları bunun iyi bir örneği olacaktır, genel amaçlı gevşek toplanmış bir fonksiyonlar grubu yerine doğrudan sınıfa uygulanan uyumlu bir fonksiyonlar grubu.
Bir modül benzer sistemlerin genel hiyerarşik gruplaması içindir, genellikle tek bir modül altında tüm yardımcı fonksiyonlar, bir diğerinin altındaki tüm veriler, veri katmanım ve daha "üst" tip bir modül altındaki konektörler vardır. Bir modül sadece zihinsel bir gruplama olduğundan, içinde ne tür sistemlerin olduğu (sınıflar veya fonksiyonlar, dürüstçe muhtemelen ikisinin bir karışımı) ve modül altındaki sistemler arasındaki mantıksal bağlantılar hakkında daha azdır.
Temel soru, modülünüzün / sınıfınızın farklı örneklerine ihtiyacınız olup olmadığıdır . bir python modülü bir singleton gibidir - her zaman aynı nesneye başvurursunuz , örneğin örneklere ihtiyacınız varsa bir sınıfa ihtiyacınız vardır.
Ancak, örneklere ihtiyacınız yoksa "nesnenizi" başlangıç durumuna ayarlamanız gerekebilir. Bu düz bir modülle açıkça mümkün olsa da, başlatma sadece bazı değerleri ayarlamaktan daha karmaşıksa, bir sınıfın __init__okunabilirlik yönteminde kodu başlatma tavsiye ederim .