Python で別のファイルからクラスをインポートする
-
Python の
fromとimportステートメントを使って別のファイルからクラスをインポートする -
Python で
importとasステートメントを使って別のファイルからクラスをインポートする -
Python でクラスを別のファイルからインポートする Using
sys.path.insert()メソッド
このチュートリアルでは、Python で別のファイルからクラスをインポートするための様々な方法を説明します。コードの中で別のクラスのメソッドを使いたい場合、別のファイルからクラスをインポートする必要があります。メソッドを再度実装する必要がないので時間の節約になりますし、現在のプロジェクトにメソッドをコピーペーストする必要がないのでコードがきれいに見えます。
Python の from と import ステートメントを使って別のファイルからクラスをインポートする
ファイルからインポートしたいクラスが別のフォルダにあるとします。from ステートメントと import ステートメントを使用して、ファイル myfolder からファイル myfile をインポートするか、myfolder.myfile からクラス myclass をインポートするかです。以下の 2つの例では、Python でファイルからクラスをインポートする方法を示しています。
コード例 1:
from myfolder import myfile
class1 = myfile.myclass()
コード例 2:
from myfolder.myfile import myclass
Python で import と as ステートメントを使って別のファイルからクラスをインポートする
別のファイルにあるクラス myclass の myfunction() メソッドを使いたいとします。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")