Python & Raspberry Pi 開発ブログ ☆彡

PythonとRaspberry Piの基本的な使い方をわかりやすく解説。初心者、入門者必見!!

python3:importの使い方

今回はimportの使い方を説明したいと思います。規模が大きくなると、プロジェクトにフォルダを作成して、階層化してコードを整理しないと管理が難しくなります。フォルダ内のコードやファイルをimportして関数やクラスを使用する方法を記載します。

フォルダ内のファイルのimport

それではサンプルで動作を説明したいと思います。まず、フォルダ構成は下記とします。importA.pyのコードには、1つの関数と1つのクラスが書かれています。

◇フォルダ構成

|── top.py
|── testfolder
|    |── test.py

◇test.pyのコード

def func():    
    print("print_func")

class MyClass:    
    def __init__(self):        
        self.name = "MyClass"     
    def get(self):         
        return self.name    
    def set(self, name):        
        self.name = name

それではtop.pyからtest.pyの関数やクラスをimportして使えるようにします。いくつか書き方がありますので、場合に応じて使い分けてください。

from testfolder.test import func # from フォルダ名.pythonファイル名 import 関数名
from testfolder.test import MyClass # from フォルダ名.pythonファイル名 import クラス名
func() # インポートしたfunc関数が使える
a = MyClass() # インポートしたMyClassクラスが使える
print(a.get())
from testfolder import test # from フォルダ名 import pythonファイル名
test.func() # インポートしたtest.py内のfunc関数が使える
a = test.MyClass() # インポートしたtest.py内のMyClassクラスが使える
print(a.get())
from testfolder import test as re_test # asを使うとモジュールの名前を置き換えることができる test ⇒ re_test
re_test.func()
a = re_test.MyClass()
print(a.get())

上記、3つは全て同じ結果になります。fromでパスを指定して、importでモジュールや関数/クラスをして読み込むという形になります。importの使い方についての説明でした。

pythonを勉強するに当たって読んでおくとためになる書籍を紹介しておきます。定番の独習、速習シリーズの著者:山田祥寛さんが書かれている本です。説明がとてもわかりやすいことと、VS CODEを紹介しているところがとてもいいです!pythonを勉強しようと思っている方はぜひ一度読んでみてください。

pythonに戻る
トップに戻る