Pythonでのライブラリ管理方法とは?pipコマンドの使い方を紹介します!
- システム
エンジニア - Pythonライブラリの管理コマンドであるpipコマンドを使うと何ができるのですか。
- プロジェクト
マネージャー - Pythonライブラリの管理コマンドであるpipコマンドはライブラリのインストール、アップデート、アンインストールなどができます。
Pythonでのライブラリ管理方法とは?
今回は、Pythonでのライブラリ管理方法について説明します。pipコマンドでライブラリのインストール、アップデート、アンインストールなどができます。
Pythonでのライブラリ管理方法に興味のある方はぜひご覧ください。
インストール、アンインストール
Pythonのライブラリのインストール・アンインストール方法を紹介します。ライブラリをインストールするには、以下のコマンドを実行します。
1
|
~$ pip install ライブラリ名
|
実際のコマンドは以下のようになります。
1
|
~$ pip install altgraph
|
バージョンを指定してインストールもできます。
1
|
~$ pip install ライブラリ名==バージョン
|
実際のコマンドは以下のようになります。
1
|
~$ pip install altgraph==0.16.1
|
アンインストールするには、以下のコマンドを実行します。
1
|
~$ pip uninstall ライブラリ名
|
実際のコマンドは以下のようになります。
1
|
~$ pip uninstall altgraph
|
ライブラリの一覧
Pythonのインストール済みライブラリ一覧を表示するには「pip list」コマンドを実行します。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
|
~$ pip list
Package Version
-------------------------------- ---------
altgraph 0.16.1
anyio 2.0.2
async-generator 1.10
beautifulsoup4 4.6.0
bottle 0.12.17
certifi 2019.6.16
contextvars 2.4
coverage 4.5.4
dataclasses 0.8
Django 2.2.7
django-admin-rangefilter 0.5.1
django-bootstrap-datepicker-plus 3.0.5
django-modelcluster 4.4
django-taggit 0.24.0
django-treebeard 4.3
djangorestframework 3.10.2
draftjs-exporter 2.1.6
future 0.17.1
html5lib 1.0.1
idna 2.8
immutables 0.14
json5 0.9.5
jupyter-client 6.1.11
jupyter-server 1.3.0
jupyterlab 3.0.7
jupyterlab-server 2.2.0
nbclassic 0.2.6
numpy 1.16.4
packaging 20.9
pefile 2019.4.18
Pillow 6.1.0
pip 21.0.1
pycodestyle 2.5.0
PyInstaller 3.5
pytz 2019.1
pywin32-ctypes 0.2.0
requests 2.22.0
Rx 3.0.0b4
six 1.12.0
sniffio 1.2.0
tornado 6.1
typing-extensions 3.7.4.3
Unidecode 1.1.1
urllib3 1.25.3
wagtail 2.6.3
Willow 1.1
|
「ライブラリ名==バージョン」の形式で表示するには「pip freeze」コマンドを使用します。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
~$ pip freeze
altgraph==0.16.1
anyio==2.0.2
async-generator==1.10
beautifulsoup4==4.6.0
bottle==0.12.17
certifi==2019.6.16
contextvars==2.4
coverage==4.5.4
dataclasses==0.8
Django==2.2.7
django-admin-rangefilter==0.5.1
django-bootstrap-datepicker-plus==3.0.5
django-modelcluster==4.4
django-taggit==0.24.0
django-treebeard==4.3
djangorestframework==3.10.2
draftjs-exporter==2.1.6
future==0.17.1
html5lib==1.0.1
idna==2.8
immutables==0.14
json5==0.9.5
jupyter-client==6.1.11
jupyter-server==1.3.0
jupyterlab==3.0.7
jupyterlab-server==2.2.0
nbclassic==0.2.6
numpy==1.16.4
packaging==20.9
pefile==2019.4.18
Pillow==6.1.0
pycodestyle==2.5.0
PyInstaller==3.5
pytz==2019.1
pywin32-ctypes==0.2.0
requests==2.22.0
Rx==3.0.0b4
six==1.12.0
sniffio==1.2.0
tornado==6.1
typing-extensions==3.7.4.3
Unidecode==1.1.1
urllib3==1.25.3
wagtail==2.6.3
Willow==1.1
|
「pip freeze」コマンドの結果をリダイレクトして、別のPCなどで環境を再現できます。
以下のようにリダイレクトします。ファイル名は「requirement.txt」でなくても構いません。
1
|
~$ pip freeze > requirement.txt
|
別のPCなどで環境を再現するには、以下のコマンドを実行します。
1
|
~$ pip install -r requirement.txt
|
requirement.txtに記載されたPythonライブラリが、記載されたバージョンでインストールされます。
アップデート
「pip list -o」コマンドを実行すると、Pythonのインストール済みライブラリのうち、最新でないライブラリが表示されます。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
~$ pip list -o
Package Version Latest Type
------------------------ --------- --------- -----
altgraph 0.16.1 0.17 wheel
anyio 2.0.2 2.1.0 wheel
beautifulsoup4 4.6.0 4.9.3 wheel
bottle 0.12.17 0.12.19 wheel
certifi 2019.6.16 2020.12.5 wheel
coverage 4.5.4 5.4 wheel
Django 2.2.7 3.1.6 wheel
django-admin-rangefilter 0.5.1 0.6.4 wheel
django-modelcluster 4.4 5.1 wheel
django-taggit 0.24.0 1.3.0 wheel
django-treebeard 4.3 4.4 wheel
djangorestframework 3.10.2 3.12.2 wheel
draftjs-exporter 2.1.6 4.1.1 wheel
future 0.17.1 0.18.2 sdist
html5lib 1.0.1 1.1 wheel
idna 2.8 3.1 wheel
immutables 0.14 0.15 wheel
jupyterlab-server 2.2.0 2.2.1 wheel
numpy 1.16.4 1.19.5 wheel
Pillow 6.1.0 8.1.0 wheel
pycodestyle 2.5.0 2.6.0 wheel
PyInstaller 3.5 4.2 sdist
pytz 2019.1 2021.1 wheel
requests 2.22.0 2.25.1 wheel
Rx 3.0.0b4 3.1.1 wheel
six 1.12.0 1.15.0 wheel
Unidecode 1.1.1 1.2.0 wheel
urllib3 1.25.3 1.26.3 wheel
wagtail 2.6.3 2.12.1 wheel
Willow 1.1 1.4 wheel
|
Pythonライブラリをアップデートするには、以下のコマンドを実行します。
1
|
pip install -U ライブラリ名
|
人気のバージョン
Pythonライブラリをインストール・アップデートする際の参考のために、どのバージョンが多く使われているか確認できます。pypistatsを使用します。まずはインストールします。
1
|
~$ pip install pypistats
|
以下のコマンドで、ライブラリ指定でダウンロードされているバージョン一覧を表示できます。以下の例だと、pandasがライブラリ名です。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
~$ pypistats python_minor --last-month pandas
| category | percent | downloads |
|----------|--------:|-----------:|
| 3.7 | 45.11% | 8,609,574 |
| 3.6 | 25.65% | 4,894,836 |
| 3.8 | 13.47% | 2,570,926 |
| 2.7 | 7.63% | 1,455,890 |
| 3.5 | 5.03% | 960,362 |
| 3.9 | 1.42% | 270,414 |
| null | 1.37% | 260,799 |
| 3.4 | 0.32% | 60,614 |
| 3.10 | 0.01% | 2,061 |
| 2.6 | 0.00% | 952 |
| 3.3 | 0.00% | 20 |
| 3.2 | 0.00% | 14 |
| 3.1 | 0.00% | 1 |
| Total | | 19,086,463 |
Date range: 2021-01-01 - 2021-01-31
|
パーセンテージが高いバージョンを選択するとよいでしょう。
- システム
エンジニア - インストール済みライブラリの一覧表示やアップデートが可能なライブラリの一覧表示方法についてもよく分かりました。
- プロジェクト
マネージャー - ご紹介した方法を参考にご自身でもコマンドを書いてみてください。
まとめ
いかがでしたでしょうか。Pythonでのライブラリ管理方法について説明しました。pipコマンドでライブラリのインストール、アップデート、アンインストールなどができます。
インストール済みPythonライブラリの一覧表示やアップデートが可能なライブラリの一覧表示方法についても紹介しました。
ぜひご自身でコマンドを書いて、理解を深めてください。
FEnet.NETナビ・.NETコラムは株式会社オープンアップシステムが運営しています。
株式会社オープンアップシステムはこんな会社です
秋葉原オフィスには株式会社オープンアップシステムをはじめグループのIT企業が集結!
数多くのエンジニアが集まります。
-
スマホアプリから業務系システムまで
スマホアプリから業務系システムまで開発案件多数。システムエンジニア・プログラマーとしての多彩なキャリアパスがあります。
-
充実した研修制度
毎年、IT技術のトレンドや社員の要望に合わせて、カリキュラムを刷新し展開しています。社内講師の丁寧なサポートを受けながら、自分のペースで学ぶことができます。
-
資格取得を応援
スキルアップしたい社員を応援するために資格取得一時金制度を設けています。受験料(実費)と合わせて資格レベルに合わせた最大10万円の一時金も支給しています。
-
東証プライム上場企業グループ
オープンアップシステムは東証プライム上場「株式会社オープンアップグループ」のグループ企業です。
安定した経営基盤とグループ間のスムーズな連携でコロナ禍でも安定した雇用を実現させています。
株式会社オープンアップシステムに興味を持った方へ
株式会社オープンアップシステムでは、開発系エンジニア・プログラマを募集しています。
年収をアップしたい!スキルアップしたい!大手の上流案件にチャレンジしたい!
まずは話だけでも聞いてみたい場合もOK。お気軽にご登録ください。
Python新着案件New Job
-
マルチロガーソフト開発/東京都豊島区/【WEB面談可/C#経験者/20代後半~40代の方活躍中/経験年数不問】/在宅勤務
月給41万~50万円東京都豊島区(池袋駅) -
マルチロガーソフト開発/東京都豊島区/【WEB面談可/C#経験者/20代前半の方活躍中/経験1年以上の方活躍中】/在宅勤務
月給29万~34万円東京都豊島区(池袋駅) -
商品化予定の振動センサーの運用保守/Python/東京都都内/【WEB面談可】
月給50万~60万円東京都都内(-駅) -
商品化予定の振動センサーの可視化UI開発のテスター/Python/東京都都内/【WEB面談可】
月給25万~35万円東京都都内(-駅) -
商品化予定の振動センサーの運用保守/Python/東京都都内/【WEB面談可】
月給50万~60万円東京都都内(-駅) -
商品化予定の振動センサーの可視化UI開発のテスター/Python/東京都都内/【WEB面談可】
月給25万~35万円東京都都内(-駅)