Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonモジュールを変更するための一般的な方法は何ですか?


モジュールを変更していて、そのモジュールを保存するたびにシェルを再起動せずにインタープリターでテストしたい場合は、reload(moduleName)関数を使用できます。 reload(moduleName)は、以前にロードされたモジュールをリロードします(構文「importmoduleName」でロードしたと仮定します。これは、モジュールのソースファイルを編集し、Pythonを離れて起動せずにテストしたい、会話型での使用を目的としています。もう一度。

>>> import mymodule
>>> # Edited mymodule and want to reload it in this script
>>> reload(mymodule)

moduleNameはモジュールの実際の名前であり、その名前を含む文字列ではないことに注意してください。 Python 3では、リロードがビルトインからimpに移動されました。したがって、Python 3でreloadを使用するには、reload(moduleName)だけでなくimp.reload(moduleName)を記述する必要があります。


  1. Pythonでの例外処理のベストプラクティスは何ですか?

    Pythonでの例外処理のベストプラクティスのいくつかを以下に示します。 例外は、エラーステータスコードを返すよりも優れています。言語コア全体と標準ライブラリが例外をスローするため、Pythonで例外を処理する必要があります。エレガントに処理された例外は、エラーコードやトレースバックよりもいつでも望ましいです。 フロー制御に例外を使用しないのが賢明です。 例外は、通常の実行の一部ではない例外的な状況で発生します。 パターンが見つからない場合は-1を返す文字列の「find」を検討してください。ただし、文字列の終わりを超えてインデックスを作成すると、例外が発生します。文字列が見つからないの

  2. Python変数の基本的なスコープルールは何ですか?

    MarkLutz著のLearningPythonで、彼はPythonスコープがどのように機能するかを覚えておくために次のニーモニックを提案しています。LEGB 最も狭い範囲から最も広い範囲への移行: Lは「ローカル」の略です。これは、関数のローカルスコープで定義されている変数を指します。 Eは「囲み」の略です。これは、他の関数をラップする関数のローカルスコープで定義された変数を指します。 Gは「グローバル」の略です。これらは、ファイルとモジュールのトップレベルで定義されている変数です。 Bは「ビルトイン」の略です。これらは、インタプリタの起動時にスコープにロードされる名前です。