Pythonアプリケーションのビルドプロセスでは、ビルドプロセスによって作成されるため、一部のインポートを無視する必要があります。それは私が簡単に解決できない、鶏と卵の質問です。インポート中にPythonモジュールを無視する方法はありますか?
class ImportBlocker(object):
def __init__(self, *args):
self.module_names = args
def find_module(self, fullname, path=None):
if fullname in self.module_names:
return self
return None
def load_module(self, name):
raise ImportError("%s is blocked and cannot be imported" % name)
import sys
sys.meta_path = [ImportBlocker('chickenlib')]
私はビルドプロセスの停止をエラーを発生させるので、しかし---私は戻って...静かにインポートを無視したい「なし: は、だから、私はこのようにこれを行うには、インポートフックを使用すると考えていました"うまくいきません。 これを行う方法はありますか? 「黙ってインポートを無視する」を参照して
ビルドプロセスのどのような本で、なぜビルドプロセスは、ビルドプロセスが作成されるまで存在しませんモジュールにこの(推移スプリアス?)依存性を持っていますそれら? – user2357112
むしろ、Pythonでインポートを無視しようとすると、依存関係の構造を整理する必要があるように思えます。 – user2357112
「インポートを静かに無視する」とはどういう意味ですか?あなたが目指している正確な効果は何ですか? –