1

これが可能かどうかはわかりませんが、何か提案があれば知りたいです。

次のようなファイル foo.py があるとします

import doesnotexist

bar = "Hello, World!"

を実行したいのですがfrom foo import bar、この新しいファイルのスコープにインポートが存在しないため、これは失敗します。

これを行う 1 つの方法は、barという名前の新しいファイルを入れbar.pyfoo.py、それをインポートすることですが、可能であればそれをスキップしたいと考えています。

何か案は?

4

1 に答える 1

1

モジュールの一部だけをインポートする方法はありません。Python は、要求された部分をプルする前にモジュール全体をロードします。

コメントで述べたように、モジュール内のインポート エラーをキャプチャして無視することができます。インポートされなかったモジュールを使用しようとすると、コードはエラーを生成します。

try:
    import doesnotexist
except ImportError:
    pass

bar = "Hello, World!"
于 2012-11-08T17:48:39.767 に答える