モジュールのインポート
Pythonではimport文を使って標準ライブラリやpipでインストールしたパッケージや自作のパッケージなどをインポートできます。
importの基本的な使い方
import math print(math.radians(180)) # 3.141592653589793
仕様ではimport文のあとに複数のモジュールをカンマで区切って書くことができるが、PEP8では推奨されていません。
import os, sys
モジュールをインポートする順番
1.標準ライブラリ
2.サードパーティライブラリ
3.ローカルライブラリ(自作のライブラリ)
PEP8には書かれていないが、グループ内はアルファベット順に並べられることが多です。
fromを使って、モジュールで定義された関数や変数、クラスなどを指定してインポートできます。
from math import pi print(pi) # 3.141592653589793
複数まとめてインポート
同じモジュールから複数の関数や変数などをまとめてインポートする場合はカンマで区切ります。
from math import pi, radians print(pi) # 3.141592653589793 print(radians(180)) # 3.141592653589793
ワイルドカード
ワイルドカード*を使うとモジュールで公開されているすべての関数や変数などがインポートされて使えるようになる。
from math import *
別名をつけてインポート
import ... as ... from math import pi as PI print(PI) # 3.141592653589793
NumPyやpandasなど、省略名でインポートするのが慣例となっているライブラリもあります。
import numpy as np import pandas as pd
正しくインポートできない(エラーが発生する)場合
- ModuleNotFoundError モジュールが見つからないというエラー。
ModuleNotFoundError: No module named 'xxx' 単純に名前が間違っているか、importの対象となるディレクトリのパスの指定が間違っている可能性があります。
- AttributeError インポートしたモジュールに指定した属性がないというエラー。
AttributeError: module 'xxx' has no attribute 'yyy' 単純な名前間違いのほか、想定と異なるファイルがインポートされている可能性があります。