循環インポートなしのPythonタイプヒント

| | |

私は巨大なクラスを2つに分割しようとしています。基本的には、「メイン」クラスと、次のような追加機能を備えたミックスインに分割しようとしています。

main.py ファイル:

  import mymixin.py class Main(object、MyMixin):def func1(self、xxx):...  

mymixin.py ファイル:

  class MyMixin(object):def func2(self:Main、xxx):#<---タイプヒントに注意してください... 

これで問題なく動作しますが、 MyMixin.func2のタイプヒントはもちろん動作しません。 main.py をインポートできません。これは、循環インポートを取得し、ヒントがないと、エディター(PyCharm)が selfが何であるかを判断できないためです。< / p>

私はPython3.4を使用しており、ソリューションが利用できる場合は3.5に移行します。

クラスを2つのファイルに分割し、すべての「接続」を維持する方法はありますか? "そのため、IDEはオートコンプリートと自動補完を提供します。タイプを知っていることから来る他のすべてのグッズ?