15. モジュール、パッケージ、ライブラリ

Pythonにおけるモジュール、パッケージ、ライブラリ徹底解説

更新日:

Pythonにおけるモジュール、パッケージ、ライブラリとは

モジュールとは、Pythonのファイル(.py)の事です。

Pythonである程度の長いプログラムを書く場合などは、Jupitor Notebookやコマンドラインではなく.pyファイルに実行したい内容を保存します。
 
そしてその保存された.pyファイルは、他のPythonのプログラムからimportで呼び出して使うことも出来ます。これをモジュールと呼びます。通常、このモジュールの中には、いくつかのクラスや関数が含まれています。
 
そのモジュールをいくつか集めてまとめたものがパッケージと呼ばれています。
 
ライブラリとは、いくつかのパッケージをまとめて一つのライブラリとしてインストールできるようにしたものです。また関数、モジュール、パッケージ自体を総称してライブラリと言うこともあります。
 

ライブラリには、Pythonに付属していてすぐに使える標準ライブラリと、ダウンロードなど追加インストールをしてから利用する外部ライブラリがあります。
 
科学技術計算でよく使われるNumPy(ナンパイ)やグラフ描画に使われるMatplotlib(マットプロットリブ)、データ解析を支援する機能を提供するPandas(パンダス)などはすべてライブラリという形で配布されています。
 
 

概念図_モジュール・パッケージ・ライブラリの関係

 
 

Pythonの標準ライブラリ一覧

Pythonの標準ライブラリとは、Pythonにあらかじめ標準で用意されているライブラリになります。
 
標準ライブラリの中には2つの種類があり、そのまま何もせずに使える組み込み関数と、事前にimport文で読み込みが必要なものがあります。
 
Pythonの標準ライブラリの一覧は、以下のPython標準ライブラリのサイトで確認することができます。
https://docs.python.org/ja/3/library/index.html
 
サイトの中で組み込み関数となっているものが、そのまま使える関数で、次のようなものがあります。

(参照:https://docs.python.org/ja/3/library/functions.html)

 
例えば、こちらの記事で紹介した画面に文字列を表示するprint()も組み込み関数なので、事前にimport文で読み込みなど必要が無く、そのまま使うことができました。
 
一方で、それ以外のものは事前にimport文で読み込んでから使う必要があります。例えば、CSV ファイルの読み書きに利用するcsvモジュールの利用例は、次のようになります。最初にimport文で読み込んでから、csv.reader()を利用し、csvファイルを読み込んでいます。

import csv
with open('eggs.csv', newline='') as csvfile:
       spamreader = csv.reader(csvfile, delimiter=' ', quotechar='|')
       for row in spamreader:
             print(', '.join(row))

 
 

Pythonでのライブラリ・モジュールの使い方

Pythonでライブラリの中のモジュールに含まれる関数、クラスを利用するには、次のようにimportを記述し、読み込んでから利用します。

import ライブラリ名/モジュール名

 
またimport文の後ろに「as」キーワードを使うことで、インポートするライブラリに別名を付けることができます。別名を付けることで、以降のプログラムでは、別名で利用することができます。

import ライブラリ名 as 別名

 

例えば、こちらの記事で紹介している数値計算用ライブラリNumPy(ナンパイ)をインポートする場合、次のように別名「np」と付けることで、次のプログラムでは本来numpy.array([0,1,2])と記述しなければならないところを、np.array([0,1,2])というように省略して記述することができます。

import numpy as np
np.array([0,1,2])

 

import文の別の記述方法として、次のようなものもあります。ライブラリnumpyに含まれる複数のモジュールの内、arrayだけを読み込んでいます。このように記述することで、npの記述も省略してnumpy.arrayを利用することもできます。

from numpy import array
array([0,1,2])

 
 

Pythonの外部ライブラリ一覧と管理(インストール・格納場所の確認・更新・アンインストール)

Pythonの外部ライブラリ一覧

外部ライブラリとはその名前のとおり、外部の団体(サードパーティ)によって開発、提供されているライブラリになります。
 
また外部ライブラリは最初にインストールが必要になり、その後にimport文で読み込んで利用します。インストール方法は、後の章をご参照ください。
 
Pythonの外部ライブラリの一覧は、PYPI(Python Package Index)という以下のサイトで確認することができます。 
https://pypi.org/
 
例えばnumpyで検索すると、

 
次のようにnumpyと名前の付くプロジェクトが多数ヒットします。

 
 

Pythonでの外部ライブラリの追加インストール方法

標準ライブラリはPython環境をインストールした際に合わせてインストールされてますが、外部ライブライブラリは別途インストールが必要になります。外部ライブラリを利用する場合はpipを利用してライブラリをインストールします。
 
pipはPythonのライブラリ管理ツールです。Pythonをインストールした時に、標準でインストールされています。
 
pipでライブラリをインストールする手順は次のとおりです。
 
まずWindowsの左下に表示されている検索画面に 「cmd」と入力し、コマンドプロンプトを検索します。

 
検索結果にコマンドプロンプトが表示されたらクリックして起動させます。

 
コマンドプロンプトが起動したら、次のコマンドを入力しライブラリをインストールします。コマンド入力後、エンターキーを押すと処理が開始され、インストールを開始します。

pip install ライブラリ名

 
インストール後は、次のコマンド「pip list」を使って、一覧の中にインストールしたライブラリが含まれていることが確認できます。
※WindowsにPythonをデフォルトの設定でインストールした場合、pipの前に「py -m」を付け、次のように入力する必要があります。ご注意ください。

py -m pip install ライブラリ名

 
 

Pythonでのインストール済みライブラリ一覧と格納場所の確認方法

コマンドプロンプトで以下のコマンドを入力すると、インストールされているライブラリを確認することができます。

pip list

 
コマンドを入力しエンターキーを押すと処理が開始され、次のようにインストールされているライブラリ名とバージョンが表示されます。例えば、2行目からは「matplotlib」というライブラリのバージョン2.1.0がインストールされていることがわかります。

pip 10.0.1
matplotlib 2.1.0
numpy 1.13.3
pandas 0.20.3

 
またライブラリのコンピュータ上のインストールされている場所を確認したい場合、以下のプログラムを実行します。ここでは、ライブラリ「matplotlib」の格納場所を確認しています。jupyter notebookで実行しました。

import matplotlib
print(matplotlib.__file__)
/usr/lib/python3.7/site-packages/matplotlib/__init__.py

 
 

ライブラリに含まれる関数などの属性の一覧と定義の確認方法

ライブラリに含まれる関数などの属性はdir()で確認することができます。ここではpandasに含まれる属性を確認しています。

import pandas as pd
dir(pd)

 
help()を使うと、関数やクラスの定義を確認できます。ここではpandasに含まれるDataFrameの定義を表示しています。

import pandas as pd
help(pd.DataFrame)

 
 

Pythonでのライブラリのアンインストール方法

参考までに、利用しなくなったライブラリをアンインストールするコマンドを紹介します。インストールの時と同様、コマンドプロンプトを開き、次のコマンドを入力します。

pip uninstall ライブラリ名

 
 

Pythonでのライブラリの更新方法

既にインストールしているライブラリのバージョンが更新され、最新版に更新する必要がある場合があります。その時は、次のコマンドを入力してください。

pip install --upgrade ライブラリ名

 
コマンドを入力すると、ライブラリの更新が実施されます。但し、入力したライブラリがまだインストールされていない場合は、通常のインストールが実施されます。

 
 

Anacondaでの外部ライブラリ一覧と管理(インストール・格納場所の確認・更新・アンインストール)

Anacondaに含まれるライブラリ一覧

Anacondaに含まれるライブラリの一覧は、次のAnacondaの標準ドキュメントのサイトの中のAnaconda package listsで確認することができます。 
https://docs.anaconda.com/anaconda/packages/pkg-docs/

 
例えばPython3.7 64-bit Windowsのリンクをクリックすると、
64-bit WindowsにPython3.7が含まれるAnacondaをインストールした場合に含まれるライブラリの一覧がバージョンと共に表示されます。

※一部抜粋。詳細は、https://docs.anaconda.com/anaconda/packages/py3.7_win-64/を参照ください。)

 
 

Anacondaでの外部ライブラリの追加インストール方法

Anacondaを利用してPython環境を用意した場合、ライブラリの中にはAnacondaをインストールした時に標準でインストールされているものもありますが、別途インストールが必要なものもあります。その場合はcondaを利用してライブラリをインストールします。
 
condaはAnacondaのライブラリ管理ツールです。Anacondaをインストールした時に、標準でインストールされています。
 
condaでライブラリをインストールする手順は次のとおりです。
 
スタートメニューの「Anaconda」フォルダの中に「Anaconda Prompt」というアイコンがありますので、クリックして下さい。

 
すると次のようなコマンドプロンプトの画面が立ち上がります。

 
ライブラリのインストールには次のコマンドを利用します。コマンド入力後、エンターキーを押すと処理が開始され、確認メッセージ「Proceed ([y]/n)?」が表示されたら、「y」を入力するとインストールを開始します。

conda install ライブラリ名

 
インストール後は、先ほどのコマンド「conda list」を使って、一覧の中にインストールしたライブラリが含まれていることが確認できます。

 
 

Anacondaでのインストール済みライブラリ一覧と格納場所の確認方法

以下のコマンドを入力すると、インストールされているライブラリを確認することができます。

conda list

コマンドを入力しエンターキーを押すと処理が開始され、次のようにインストールされているライブラリ名とバージョンが表示されます。例えば、1行目からは「matplotlib」というライブラリのバージョン2.1.0がインストールされていることがわかります。

matplotlib==2.1.0
numpy==1.13.3
pandas==0.20.3

 
またライブラリのコンピュータ上のインストールされている場所を確認したい場合、以下のプログラムを実行します。ここでは、ライブラリ「matplotlib」の格納場所を確認しています。jupyter notebookで実行しました。

import matplotlib
print(matplotlib.__file__)
C:\Users\ユーザー名\Anaconda3\lib\site-packages\matplotlib\__init__.py

 
 

Anacondaでのライブラリのアンインストール方法

参考までに、利用しなくなったライブラリをアンインストールするコマンドを紹介します。こちらも確認メッセージ「Proceed ([y]/n)?」が表示されたら、「y」を入力するとアンインストールを開始します。

conda uninstall ライブラリ名

 
 

Anacondaでのライブラリの更新方法

既にインストールしているライブラリのバージョンが更新され、最新版に更新する必要がある場合があります。その時は、次のコマンドを入力してください。

conda update ライブラリ名

 
コマンドを入力すると、ライブラリの更新が実施されます。但し、入力したライブラリがまだインストールされていない場合は、エラーが表示されますので、通常のインストールを実行ください。

 
 
Pythonにおけるモジュール、パッケージ、ライブラリの説明は以上になります。モジュール、パッケージ、ライブラリ以外についても、Pythonに関する重要なトピックについて学んでいきたいと考えておられる方には、次のページをお勧め致します。
>> Python3 入門編 - データ分析・機械学習に欠かせない基本をマスターしよう
 
このページでは、今後データサイエンスや機械学習、AIを学習していきたいと考えている方へ向けて、それらの知識の習得に欠かせないPythonの基本的なトピックに重点を絞り、チュートリアル形式で解説しています。特にPythonでデータ分析・AI・機械学習を学ぶ上で欠かせない基礎となる重要な事項を取り上げています。
 
 

-15. モジュール、パッケージ、ライブラリ

Copyright© AI-interのPython3入門 , 2019 All Rights Reserved.