Pythonのupdate方法とは?pipコマンドを使用したupdateやuninstallについて
- システム
エンジニア - Pythonでのパッケージのupdateの方法を教えていただけますか。
- プロジェクト
マネージャー - Pythonでのパッケージのupdateにはpipコマンドを使用して行います。
Pythonでのパッケージのupdateの方法とは?
今回は、Pythonでのパッケージのupdateの方法について説明します。
Pythonのパッケージ管理にはpipコマンドを使用します。パッケージのinstallやupdate、uninstallなどを行えます。
Pythonでのパッケージのupdateの方法に興味のある方はぜひご覧ください。
パッケージ一覧の表示
Pythonのライブラリ管理を行うpip自体をupdateしておきます。以下のコマンドを実行します。
1
|
~$ pip install -U pip
|
以下のコマンドでinstall済みのパッケージリストを表示します。
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
50
51
|
~$ 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
~$
|
requirements.txtで環境構築
pip freezeコマンドを使用すると、「パッケージ名==バージョン」の形式でinstall済みの一覧が表示されます。
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
|
~$ 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
~$
|
これをrequirements.txtにリダイレクトすることで、Pythonの環境一式を別の場所で再現することができます。
requirements.txtという名前でなくても良いですが、requirements.txtが一般的です。
1
|
~$ pip freeze > requirements.txt
|
以下のコマンドで、Pythonの環境を再現できます。
1
|
~$ pip install -r requirements.txt
|
updateが必要なパッケージ一覧
updateが必要なパッケージ一覧を表示するには、以下のコマンドを実行します。
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
|
~$ pip list -o
Package Version Latest Type
------------------------ --------- --------- -----
altgraph 0.16.1 0.17 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
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 wheel
Willow 1.1 1.4 wheel
~$
|
updateが必要なパッケージは以下のコマンドでupdateできます。
1
|
~$ pip install -U パッケージ名
|
Pythonの環境はできるだけ最新にしておいてください。
updateが不要なパッケージ一覧
updateが不要な(最新状態の)パッケージ一覧を表示するには、以下のコマンドを実行します。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
~$ pip list -u
Package Version
-------------------------------- ---------
anyio 2.0.2
async-generator 1.10
contextvars 2.4
dataclasses 0.8
django-bootstrap-datepicker-plus 3.0.5
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
packaging 20.9
pefile 2019.4.18
pip 21.0.1
pywin32-ctypes 0.2.0
sniffio 1.2.0
tornado 6.1
typing-extensions 3.7.4.3
~$
|
- システム
エンジニア - pipコマンドを使用すると、パッケージのinstallやupdate、uninstallなどを行えるのですね。
- プロジェクト
マネージャー - そうです。ご紹介した方法でPythonのupdateをしてください。
まとめ
いかがでしたでしょうか。Pythonでのパッケージのupdateの方法について説明しました。また、requirements.txtを使用したPythonの環境構築方法についても紹介しました。古いバージョンを使い続けることはあまり良くないので、こまめにupdateしてください。
ぜひご自身でPythonのpipコマンドを書いて、理解を深めてください。
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万円東京都都内(-駅)