Büyük sınıfımı ikiye ayırmaya çalışıyorum; temelde "ana" sınıfa ve bunun gibi ek işlevler içeren bir karışıma:
main.py
dosya:
import mymixin.py
class Main(object, MyMixin):
def func1(self, xxx):
...
mymixin.py
dosya:
class MyMixin(object):
def func2(self: Main, xxx): # <--- note the type hint
...
Şimdi, bu gayet iyi çalışsa da, tip ipucu MyMixin.func2
elbette işe yaramaz. İçe main.py
aktaramıyorum, çünkü döngüsel bir içe aktarma elde ederim ve ipucu olmadan editörüm (PyCharm) ne self
olduğunu söyleyemez .
Python 3.4 kullanıyorum, orada bir çözüm varsa 3.5'e geçmek istiyorum.
Sınıfımı iki dosyaya bölüp tüm "bağlantıları" tutmamın bir yolu var mı, böylece IDE'm hala otomatik tamamlama ve türleri bilerek ondan gelen diğer tüm güzellikleri sunmaya devam ediyor?
self
, çünkü her zaman mevcut sınıfın bir alt sınıfı olacaktır (ve herhangi bir tür kontrol sistemi bunu kendi başına çözebilmelidir). Isfunc2
çağrı çalışırkenfunc1
tanımlı değil,MyMixin
? Belki de olmalı (birabstractmethod
, belki olarak)?