Javaでは、IoC / DIは非常に一般的な手法であり、Webアプリケーション、ほぼすべての利用可能なフレームワーク、Java EEで広く使用されています。その一方で、大きなPython Webアプリケーションもたくさんありますが、Zope(コードで言うと恐ろしいはずですが)の他に、IoCはPythonの世界ではあまり一般的ではないようです。(私が間違っていると思われる場合は、いくつか例を挙げてください)。
もちろん、Pythonで使用できる一般的なJava IoCフレームワークのクローンがいくつかあります(たとえば、springpython)。しかし、どれも実際に使われているようには見えません。少なくとも、私はそのようなものを使用するDjangoまたはsqlalchemy + <insert your favorite wsgi toolkit here>
ベースのWebアプリケーションに踏み込んだことはありません。
私の意見では、IoCには妥当な利点があり、たとえばdjango-default-user-modelを簡単に置き換えることができますが、PythonでのインターフェースクラスとIoCの広範な使用は、「pythonic」ではなく、少し奇妙に見えます。しかし、誰かがより良い説明をしているかもしれません。なぜIoCはPythonで広く使用されていないのでしょうか。