モジュールがローカルにインポートされたときにUnboundLocalErrorが発生することがあるのはなぜですか?

カウリネーター

パッケージをfoo明確にインポートしてfoo再割り当てしなかったにもかかわらず、Pythonインタープリターが割り当て前にローカル変数が参照されていると文句を言う状況に困惑しました

次のコードについて考えてみます。

import foo.bar
def qux():
    if(foo.bar.fred()):
        import foo.baz
        print(foo.baz.waldo())
qux()

これにより、if(foo.bar.fred()):の行でUnboundLocalErrorが発生します。

この問題には、ほとんどのUnboundLocalError状況とは異なる特定の考慮事項があるようで、スタックオーバーフローまたは他のサイトに投稿されたこの特定の状況を見つけることができませんでした。

上記のコードで例外が発生するのはなぜですか?

カウリネーター

この例外は、暗黙の(非表示の)再割り当てが原因で発生することがわかりました。場合foo.baz関数のローカルスコープ内にインポートされ、それは再割り当てがfooグローバルなものとは対照的に、ローカル変数であること。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

MetPyサブモジュールをインポートするときにこのエラーが発生するのはなぜですか?

分類Dev

別のPythonファイルに関するエラーが発生せずにインポートできないのはなぜですか?(「部分的に初期化されたモジュールには属性がありません」)

分類Dev

tkinterモジュールがコマンドライン経由で実行されたときに属性エラーを発生させるのに、IDLE経由で実行されたときに発生しないのはなぜですか?

分類Dev

javascriptでインポートを行うときに、変数をプルすると未定義が返されることがあるのはなぜですか?

分類Dev

パス全体をインポートせずに、ネストされたモジュールの関数を使用できることがあるのはなぜですか?

分類Dev

パラメータによって送信されたポインタの値をCのローカルポインタに割り当てているときにエラーが発生するのはなぜですか

分類Dev

モジュールから関数をインポートすると、モジュール全体がインポートされるのはなぜですか?

分類Dev

モジュールをインポートすると循環インポートエラーが発生するのはなぜですか

分類Dev

pipのフリーズと再インストールがモジュールがインストールされていることを示しているのに、venv Pythonインタープリターが「__という名前のモジュールがありません」と言うのはなぜですか?

分類Dev

非同期の問題が発生することなく、Bootstrapモーダルウィンドウが完全にロードされたときにDataTable jQueryプラグインをロードするにはどうすればよいですか?

分類Dev

遅延ロードされたモジュールがcommonModuleをインポートする必要があるのはなぜですか?Angular 2

分類Dev

コンストラクタから例外がスローされたときにメモリリークが発生するのはなぜですか?

分類Dev

スケジュールされたシャットダウンが発生するのをVbscriptに待機させることはできますか?

分類Dev

Tensorflow Servingモジュールのインポートエラーが発生するのはなぜですか?

分類Dev

dkmsステータス「警告!ビルドされたモジュールとインストールされたモジュールの違い」が発生するのはなぜですか?

分類Dev

モジュールが実際に存在しているのに、モジュールがインポートされないのはなぜですか?

分類Dev

Webpackを介したノードモジュールのインポート中にエラーが発生しました。「このファイルタイプを処理するには、適切なローダーが必要な場合があります」

分類Dev

リフレッシュが発生したときにルータが別のルートにリダイレクトするのはなぜですか。

分類Dev

インポートされたモジュールのグローバルにモジュールを注入することは可能ですか?

分類Dev

ローカルにインストールされたモジュールのバージョンがpipで使用されているものであることを確認する方法は?

分類Dev

pickle化されたファイルから読み取るときにパンダがモジュールをインポートしようとするのはなぜですか?

分類Dev

サードパーティのカーネルモジュールをインストールするとき、またはカーネルのアップグレード後に「必要なキーが利用できません」と表示されるのはなぜですか?

分類Dev

モジュールがすでにインポートされているのに、モジュールを明示的にインポートする必要があるのはなぜですか?

分類Dev

openAIからユニバースモジュールをインポートしているときに「無効な構文」エラーが発生するのはなぜですか

分類Dev

同じディレクトリにモジュールをインポートするときにModuleNotFoundが見つかるのはなぜですか?

分類Dev

PyHiveパッケージからハイブをインポートした後に「ImportError:builtinsという名前のモジュールがありません」と表示されるのはなぜですか?

分類Dev

PythonでインポートするときにMatplotlibがモジュールとして認識されない

分類Dev

モジュールではなくクラスをインポートするときにpythonのmonkeypatchが機能しないのはなぜですか?

分類Dev

Jestがインポートされたモジュールではなくアプリ全体を実行しようとするのはなぜですか?

Related 関連記事

  1. 1

    MetPyサブモジュールをインポートするときにこのエラーが発生するのはなぜですか?

  2. 2

    別のPythonファイルに関するエラーが発生せずにインポートできないのはなぜですか?(「部分的に初期化されたモジュールには属性がありません」)

  3. 3

    tkinterモジュールがコマンドライン経由で実行されたときに属性エラーを発生させるのに、IDLE経由で実行されたときに発生しないのはなぜですか?

  4. 4

    javascriptでインポートを行うときに、変数をプルすると未定義が返されることがあるのはなぜですか?

  5. 5

    パス全体をインポートせずに、ネストされたモジュールの関数を使用できることがあるのはなぜですか?

  6. 6

    パラメータによって送信されたポインタの値をCのローカルポインタに割り当てているときにエラーが発生するのはなぜですか

  7. 7

    モジュールから関数をインポートすると、モジュール全体がインポートされるのはなぜですか?

  8. 8

    モジュールをインポートすると循環インポートエラーが発生するのはなぜですか

  9. 9

    pipのフリーズと再インストールがモジュールがインストールされていることを示しているのに、venv Pythonインタープリターが「__という名前のモジュールがありません」と言うのはなぜですか?

  10. 10

    非同期の問題が発生することなく、Bootstrapモーダルウィンドウが完全にロードされたときにDataTable jQueryプラグインをロードするにはどうすればよいですか?

  11. 11

    遅延ロードされたモジュールがcommonModuleをインポートする必要があるのはなぜですか?Angular 2

  12. 12

    コンストラクタから例外がスローされたときにメモリリークが発生するのはなぜですか?

  13. 13

    スケジュールされたシャットダウンが発生するのをVbscriptに待機させることはできますか?

  14. 14

    Tensorflow Servingモジュールのインポートエラーが発生するのはなぜですか?

  15. 15

    dkmsステータス「警告!ビルドされたモジュールとインストールされたモジュールの違い」が発生するのはなぜですか?

  16. 16

    モジュールが実際に存在しているのに、モジュールがインポートされないのはなぜですか?

  17. 17

    Webpackを介したノードモジュールのインポート中にエラーが発生しました。「このファイルタイプを処理するには、適切なローダーが必要な場合があります」

  18. 18

    リフレッシュが発生したときにルータが別のルートにリダイレクトするのはなぜですか。

  19. 19

    インポートされたモジュールのグローバルにモジュールを注入することは可能ですか?

  20. 20

    ローカルにインストールされたモジュールのバージョンがpipで使用されているものであることを確認する方法は?

  21. 21

    pickle化されたファイルから読み取るときにパンダがモジュールをインポートしようとするのはなぜですか?

  22. 22

    サードパーティのカーネルモジュールをインストールするとき、またはカーネルのアップグレード後に「必要なキーが利用できません」と表示されるのはなぜですか?

  23. 23

    モジュールがすでにインポートされているのに、モジュールを明示的にインポートする必要があるのはなぜですか?

  24. 24

    openAIからユニバースモジュールをインポートしているときに「無効な構文」エラーが発生するのはなぜですか

  25. 25

    同じディレクトリにモジュールをインポートするときにModuleNotFoundが見つかるのはなぜですか?

  26. 26

    PyHiveパッケージからハイブをインポートした後に「ImportError:builtinsという名前のモジュールがありません」と表示されるのはなぜですか?

  27. 27

    PythonでインポートするときにMatplotlibがモジュールとして認識されない

  28. 28

    モジュールではなくクラスをインポートするときにpythonのmonkeypatchが機能しないのはなぜですか?

  29. 29

    Jestがインポートされたモジュールではなくアプリ全体を実行しようとするのはなぜですか?

ホットタグ

アーカイブ