この記事では、Pythonで自作したモジュールを他のスクリプトからインポートする方法について解説していきます。
Pythonで自作モジュールのインポート from import
早速、Pythonで自作モジュールをインポートする方法について見ていきましょう。まずは簡単なPythonのモジュールを自作します。次のスクリプトを「temp_module.py」という名前で作業ディレクトリに保存してください。
class TempClass:
def __init__(self, temp):
self.temp = temp
def temp_method(self):
print(self.temp)
次に、自作モジュールをインポートするスクリプトを書いていきます。次のスクリプトを「temp_module.py」と同階層のディレクトリに保存してください。ファイル名は「temp_main.py」とします。
import temp_module
temp_class1 = temp_module.TempClass(1) # インスタンス生成
temp_class1.temp_method() # メソッド呼び出し
1行目のimportで自作モジュールをインポートしています。これでtemp_moduleという名前のモジュールを使う準備ができました。3行目でtemp_module内のTempClassのインスタンスを作成しています。この例では「モジュール名.クラス名」でインスタンス化を行いました。4行目でTempClassで定義しているtemp_methodを呼び出しています。
インスタンス生成毎に「モジュール名.クラス名」を記述するのが面倒だというときには、次のように「from」を使ってインポートをします。
from temp_module import TempClass
temp_class2 = TempClass(2) # インスタンス生成
temp_class2.temp_method() # メソッド呼び出し
「from モジュール名 import クラス名」という方法でインポートすると、クラス名だけでインスタンス生成ができます。この例ではクラスをインポートしましたが、モジュール内に定義されているものであれば関数や変数などもfromでインポートできます。「from」はスクリプトの記述量を削減するために役立ちます。
最後にスクリプトを実行してみます。コマンドプロンプトを起動し、以下のコマンドを実行します。
python temp_main.py
エラーが出ずに、実行結果が表示されればOKです。