Python で別のファイルからクラスをインポートする

Muhammad Waiz Khan 2023年1月30日
  1. Python の fromimport ステートメントを使って別のファイルからクラスをインポートする
  2. Python で importas ステートメントを使って別のファイルからクラスをインポートする
  3. Python でクラスを別のファイルからインポートする Using sys.path.insert() メソッド
Python で別のファイルからクラスをインポートする

このチュートリアルでは、Python で別のファイルからクラスをインポートするための様々な方法を説明します。コードの中で別のクラスのメソッドを使いたい場合、別のファイルからクラスをインポートする必要があります。メソッドを再度実装する必要がないので時間の節約になりますし、現在のプロジェクトにメソッドをコピーペーストする必要がないのでコードがきれいに見えます。

Python の fromimport ステートメントを使って別のファイルからクラスをインポートする

ファイルからインポートしたいクラスが別のフォルダにあるとします。from ステートメントと import ステートメントを使用して、ファイル myfolder からファイル myfile をインポートするか、myfolder.myfile からクラス myclass をインポートするかです。以下の 2つの例では、Python でファイルからクラスをインポートする方法を示しています。

コード例 1:

from myfolder import myfile

class1 = myfile.myclass()

コード例 2:

from myfolder.myfile import myclass

Python で importas ステートメントを使って別のファイルからクラスをインポートする

別のファイルにあるクラス myclassmyfunction() メソッドを使いたいとします。Python の import 文と as 文を使って myclass をインポートすることで、この関数を利用することができます。以下のコード例は、別のファイルからクラスをインポートする方法を示しています。

import myfolder.myfile as myModule

class1 = myModule.myclass()

Python でクラスを別のファイルからインポートする Using sys.path.insert() メソッド

クラスの必要なファイルが別のフォルダーにある場合は、そのフォルダーを sys.path リストに追加できます。このリストは、Python がモジュールをインポートするために検索します。したがって、最初に sys.path.insert() メソッドを使用してフォルダを sys.path に追加し、次に import ステートメントを使用してファイルをインポートする必要があります。

以下のコード例は、Python でカレントディレクトリのパスを変更してファイルをインポートする方法を示しています。

from myfile import myclass
import sys

sys.path.insert(1, "/path/to/application/app/myfolder")

関連記事 - Python Class