モジュールの作成
Pythonのようなプログラミング言語を使うとき、プログラムを事前にファイルに書いておくことがあります。プログラムを書いたファイルを指定してPythonを実行することで、何度もプログラムを実行できます。プログラムを書いたファイルをスクリプトファイルと呼ぶことがあります。
Pythonではスクリプトファイルがモジュールとして扱われます。モジュールを作って関数などを利用したいときには、スクリプトファイルを作ればよいわけです。スクリプトファイルのファイル名がそのままモジュール名になります。
たとえば、a_module.pyというファイルにsome_func()という関数を定義したとします。外部からは、以下のように利用できます。
1 2 3 4 |
<span class="kn">import</span> <span class="nn">a_module</span> <span class="c"># モジュールをimportする場合</span> <span class="n">a_module</span><span class="o">.</span><span class="n">some_func</span><span class="p">()</span> <span class="kn">from</span> <span class="nn">a_module</span> <span class="kn">import</span> <span class="n">some_func</span> <span class="c"># 関数だけをimportする場合</span> <span class="n">some_func</span><span class="p">()</span> |
モジュールをインポートすると、Pythonはスクリプトファイルを先頭から読み込んで書かれているプログラムを実行します。スクリプトファイルを読み込む課程で、定義されている関数などをモジュールの「持ち物」として登録します。関数だけでなく、変数などもモジュールの持ち物として登録されます。
インデントの一番浅いところをトップレベルのブロックと呼びます。トップレベルのブロックに記述されているプログラムは、モジュールをインポートする課程で必ず実行されます。モジュールの初期化用のコードは、トップレベルに記述するとよいでしょう。