tag:crieit.net,2005:https://crieit.net/tags/pip/feed
「pip」の記事 - Crieit
Crieitでタグ「pip」に投稿された最近の記事
2021-02-21T00:12:34+09:00
https://crieit.net/tags/pip/feed
tag:crieit.net,2005:PublicArticle/16696
2021-02-21T00:12:34+09:00
2021-02-21T00:12:34+09:00
https://crieit.net/posts/python-environment-pip
Pythonのパッケージ管理システム pip の基本
<p>Pythonのライブラリ・パッケージを導入する時にお世話になるPythonのパッケージ管理システムpipの使い方です。</p>
<h2 id="Pythonパッケージのインストール"><a href="#Python%E3%83%91%E3%83%83%E3%82%B1%E3%83%BC%E3%82%B8%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB">Pythonパッケージのインストール</a></h2>
<pre><code class="powershell">(pyenv) pip install パッケージ名
</code></pre>
<h2 id="特定バージョンでのPythonパッケージインストール"><a href="#%E7%89%B9%E5%AE%9A%E3%83%90%E3%83%BC%E3%82%B8%E3%83%A7%E3%83%B3%E3%81%A7%E3%81%AEPython%E3%83%91%E3%83%83%E3%82%B1%E3%83%BC%E3%82%B8%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB">特定バージョンでのPythonパッケージインストール</a></h2>
<pre><code class="powershell">(pyenv) pip install パッケージ名==バージョン
e.g.
(pyenv) pip install Flask==1.1.2
</code></pre>
<h2 id="Pythonパッケージのアンインストール"><a href="#Python%E3%83%91%E3%83%83%E3%82%B1%E3%83%BC%E3%82%B8%E3%81%AE%E3%82%A2%E3%83%B3%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB">Pythonパッケージのアンインストール</a></h2>
<pre><code class="powershell">指定したパッケージのアンインストール
(pyenv) pip uninstall パッケージ名
requirementsファイルに記載されたパッケージのアンインストール
(pyenv) pip uninstall -r requirements.txt
アンインストール時の確認を行わないようにする
(pyenv) pip uninstall パッケージ名 -y
</code></pre>
<h2 id="Pythonパッケージの導入状況の出力"><a href="#Python%E3%83%91%E3%83%83%E3%82%B1%E3%83%BC%E3%82%B8%E3%81%AE%E5%B0%8E%E5%85%A5%E7%8A%B6%E6%B3%81%E3%81%AE%E5%87%BA%E5%8A%9B">Pythonパッケージの導入状況の出力</a></h2>
<pre><code class="powershell">(pyenv) pip freeze
click==7.1.2
Flask==1.1.2
itsdangerous==1.1.0
Jinja2==2.11.3
MarkupSafe==1.1.1
Werkzeug==1.0.1
</code></pre>
<p>requirements.txtはこのコマンドからリダイレクトで作成できます。<br />
このファイルを用意しておく事で別環境での構築が簡単に行えるようになります。</p>
<pre><code class="powershell">(pyenv) pip freeze > requirements.txt
</code></pre>
<p>バージョン指定はイコール以外も指定可能です<br />
(<a target="_blank" rel="nofollow noopener" href="https://pip.pypa.io/en/latest/reference/pip_install/#example-requirements-file">EXAMPLE REQUIREMENTS FILE</a>)。</p>
<pre><code class="text">docopt == 0.6.1 # Version Matching. Must be version 0.6.1
keyring >= 4.1.1 # Minimum version 4.1.1
coverage != 3.5 # Version Exclusion. Anything except version 3.5
Mopidy-Dirble ~= 1.1 # Compatible release. Same as >= 1.1, == 1.*
</code></pre>
<h2 id="requirements.txtを使ったPythonパッケージのインストール"><a href="#requirements.txt%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%9FPython%E3%83%91%E3%83%83%E3%82%B1%E3%83%BC%E3%82%B8%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB">requirements.txtを使ったPythonパッケージのインストール</a></h2>
<pre><code class="powershell">(pyenvanother) pip install -r requirements.txt
</code></pre>
<h2 id="pipのバージョン確認"><a href="#pip%E3%81%AE%E3%83%90%E3%83%BC%E3%82%B8%E3%83%A7%E3%83%B3%E7%A2%BA%E8%AA%8D">pipのバージョン確認</a></h2>
<pre><code class="powershell">(pyenv) pip --version
pip 21.0.1 from C:\path\src\pyenv\lib\site-packages\pip (python 3.7)
</code></pre>
<h2 id="pip自体のアップグレード"><a href="#pip%E8%87%AA%E4%BD%93%E3%81%AE%E3%82%A2%E3%83%83%E3%83%97%E3%82%B0%E3%83%AC%E3%83%BC%E3%83%89">pip自体のアップグレード</a></h2>
<pre><code class="powershell">(pyenv) pip install -U pip
</code></pre>
<h2 id="Pythonパッケージのリスト表示"><a href="#Python%E3%83%91%E3%83%83%E3%82%B1%E3%83%BC%E3%82%B8%E3%81%AE%E3%83%AA%E3%82%B9%E3%83%88%E8%A1%A8%E7%A4%BA">Pythonパッケージのリスト表示</a></h2>
<pre><code class="powershell">(pyenv) pip list
Package Version
------------ -------
click 7.1.2
Flask 1.1.2
itsdangerous 1.1.0
Jinja2 2.11.3
MarkupSafe 1.1.1
pip 21.0.1
setuptools 47.1.0
</code></pre>
<p>オプションの指定で、アップデートが必要なパッケージのみ、あるいは、アップデート済みのパッケージのみの表示が可能。</p>
<ul>
<li><code>pip list -o</code> or <code>pip list --outdated</code> アップデートが必要なパッケージの一覧を表示</li>
<li><code>pip list -u</code> or <code>pip list --uptodate</code> アップデート済みの最新パッケージの一覧を表示</li>
</ul>
<h2 id="指定したPythonパケージのアップデート"><a href="#%E6%8C%87%E5%AE%9A%E3%81%97%E3%81%9FPython%E3%83%91%E3%82%B1%E3%83%BC%E3%82%B8%E3%81%AE%E3%82%A2%E3%83%83%E3%83%97%E3%83%87%E3%83%BC%E3%83%88">指定したPythonパケージのアップデート</a></h2>
<pre><code class="powershell">(pyenv) pip install -U パッケージ名
</code></pre>
<h2 id="Pythonパッケージの依存関係に問題がないかチェック"><a href="#Python%E3%83%91%E3%83%83%E3%82%B1%E3%83%BC%E3%82%B8%E3%81%AE%E4%BE%9D%E5%AD%98%E9%96%A2%E4%BF%82%E3%81%AB%E5%95%8F%E9%A1%8C%E3%81%8C%E3%81%AA%E3%81%84%E3%81%8B%E3%83%81%E3%82%A7%E3%83%83%E3%82%AF">Pythonパッケージの依存関係に問題がないかチェック</a></h2>
<pre><code class="powershell">(pyenv) pip check
No broken requirements found.
</code></pre>
<h2 id="Pythonパッケージの情報を表示"><a href="#Python%E3%83%91%E3%83%83%E3%82%B1%E3%83%BC%E3%82%B8%E3%81%AE%E6%83%85%E5%A0%B1%E3%82%92%E8%A1%A8%E7%A4%BA">Pythonパッケージの情報を表示</a></h2>
<pre><code class="powershell">(pyenv) pip show パッケージ名
e.g.
(pyenv) pip show Flask
Name: Flask
Version: 1.1.2
Summary: A simple framework for building complex web applications.
Home-page: https://palletsprojects.com/p/flask/
Author: Armin Ronacher
Author-email: [email protected]
License: BSD-3-Clause
Location: c:\path\src\pyenv\lib\site-packages
Requires: click, Werkzeug, itsdangerous, Jinja2
Required-by:
</code></pre>
<p><code>pip show パッケージ名 --verbose</code>でより詳細の表示が可能。</p>
<h2 id="参考ページ"><a href="#%E5%8F%82%E8%80%83%E3%83%9A%E3%83%BC%E3%82%B8">参考ページ</a></h2>
<ul>
<li><a target="_blank" rel="nofollow noopener" href="https://pip.pypa.io/en/stable/">Home - pip documentation</a></li>
</ul>
maru3kaku4kaku