【Python】「from ~ import ~」 の使い方

Pythonコードを見ていると「from ~ import ~ 」という記述をよく見ると思いますが、どういう意味なのでしょうか。
今回は「from ~ import ~ 」の使い方を紹介したいと思います。

「from ~ import ~ 」とは

「from ~ import ~ 」は、「パッケージ」や「モジュール」を使う際に使います。
今回は「パッケージ」の具体例として「matplotlib」を、「モジュール」の例として「pyplot」を使っていきますね。

例)「matplotlib」の「pyplot」を使用したい場合

from (パッケージ) import (モジュール)

from matplotlib import pyplot

「matplotlib」パッケージの中にある複数のモジュールから、「pyplot」モジュールだけをインポートしています。

例)「from ~ 」を使わない書き方

「from」を使わなくても「from ~ import ~ 」と同じような動作をさせることができます。

import (パッケージ).(モジュール)

import matplotlib.pyplot

「from ~ import ~ 」を使うわけは?

「from ~ 」を使わずに「import ~ 」で書いても
「from ~ import ~ 」で書いてもどちらでも良いと思います。

使い分けを調べてみても、明確な答えを見つけることはできませんでした。
その人の好みであったり、後々見てわかりやすく。という理由が多かったと思います。

ちなみにそれぞれで書いた場合の例は下のようになりますね。

例)「import ~ 」だけの場合

import matplotlib.pyplot

matplotlib.pyplot.plot()
matplotlib.pyplot.show()

例)「from ~ import ~ 」を使った場合

from matplotlib import pyplot

pyplot.plot()
pyplot.show()

比べてみてどうでしょうか?
「from ~ import ~ 」を使う方が自分は好みですかね。

ほかにも書き方はあるようですので、興味のある方は「パッケージとモジュール」で調べてみてください。

「as」を使ってさらに省略できる

「from ~ import ~ 」のあとに「as ~ 」と書けばさらにコードを省略できます。

import matplotlib.pyplot as plt

plt.plot()
plt.show()

「as」を使えば、自分で名前を付けることができます。
しかし、よく使われているモジュールは省略名が決まっているので、合わせて書いてあげましょう。

自分だけでなく、他人が見ても中身が理解できる書き方をしたいものです。

まとめ

Pythonには、様々なライブラリやモジュールがあるので区別が難しいですね。
ライブラリの中のパッケージ、パッケージの中のモジュール、モジュールの中のクラスや変数、といった感じでしょうか。
使ううちに慣れると思いますが、参考になればと思い紹介しました。
それではまた。

  • X

【Python】「from ~ import ~」 の使い方” に対して1件のコメントがあります。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です