Python 1年生 体験してわかる!会話でまなべる!プログラミングのしくみ
目次
- 目次
- はじめに
- pip逆引きメモ
- pipはなんの略ですか?
- pipでインストールできる公式ライブラリはどこで管理されていますか?
- pipはインストールする必要がありますか?
- 現在のpipのバージョンを確認したい
- pipを最新にアップデートしたい
- パッケージのインストール
- gitリポジトリからのインストール
- パッケージファイルからのインストール
- 現在編集しているパッケージをインストール
- requirements.txtによる複数のパッケージのインストール
- 現在インストールされているパッケージからrequirements.txtを作成する
- 現在インストールされているパッケージのリストとバージョンを表示
- アップデート可能なパッケージを表示する
- 他のパッケージに依存してない(使っていなかったら削除できる)パッケージを表示する
- Editモードでローカルのコードをインストールしたパッケージを表示する
- パッケージの情報を表示する
- パッケージのアップデート
- パッケージのアンインストール
- 現在の環境で依存関係が壊れているか確認する
- キャッシュされたパッケージのデータのリストを表示する
- キャッシュされたデータを削除する
- pipのコマンドをbashで補完してほしい
- pipをコードから呼ぶ場合、スレッドセーフですか?
- 仮想環境venvの使い方
- 参考資料
- MyEnigma Supporters
はじめに
毎日pipやvenvを使っていますが、
忘れてググることが多いので、
逆引きメモとして残しておきます。
pip逆引きメモ
pipはなんの略ですか?
Pip Installs Packagesの略らしいです。
下記が主なリンク先です。
pipでインストールできる公式ライブラリはどこで管理されていますか?
こちらのPython Package Index (PyPI)というリポジトリで管理されています。
pipはインストールする必要がありますか?
python 3.4以降ではデフォルトでPythonに付いてきます。
現在のpipのバージョンを確認したい
$ pip --version
pipを最新にアップデートしたい
$ pip install --upgrade pip
パッケージのインストール
$ pip install sampleproject
バージョンを指定したい場合は、
$ pip install SomePackage==1.0.4
最小バージョンを指定したい場合は
$ pip install SomePackage>=1.0.4
最小と最大を指定したい場合は
$ pip install SomePackage>=1.0.4, <2.0
あるバージョン以外にしたい場合は、
$ pip install SomePackage~=1.4.2
gitリポジトリからのインストール
$ pip install git+https://github.com/pypa/sampleproject.git@branch
上記のgitリポジトリの直下にsetup.pyが必要です。
また、@の後ろはブランチ名やタグ、コミットハッシュが指定できます。
パッケージファイルからのインストール
pipは2つのパッケージファイルフォーマットに対応しています。
source distribution (sdist)
wheel distribution (wheel)
両方とも、.tar.gzや.whlを指定するだけでインストールできます。
$ pip install sampleproject-1.0.tar.gz
現在編集しているパッケージをインストール
setup.pyがある場所に移動して、
$ pip install -e .
このインストール方法の場合、
ファイルを変更すると自動的にインストールされたパッケージ側も更新されます。
ライブラリの開発やPRを作る時に便利です。
requirements.txtによる複数のパッケージのインストール
インストールしたいパッケージをリスト化したrequirements.txtというファイルを使って一括インストールできます。
$ pip install -r requirements.txt
requirements.txtは各行にpip installの引数を並べたものですが、
詳細な文法はこちらにかかれています:
ちなみにrequirements.txtに似た機能のファイルでconstraints.txtがありますが、
下記の記事の通り基本的には使うことはなさそうです。
現在インストールされているパッケージからrequirements.txtを作成する
$ pip freeze > requirements.txt
現在インストールされているパッケージのリストとバージョンを表示
$ pip install list
上記の方法では表として表示されますが、
json形式で出力することもできます。
$ pip list --format=json | python -m json.tool
アップデート可能なパッケージを表示する
$ pip list --outdated
他のパッケージに依存してない(使っていなかったら削除できる)パッケージを表示する
$ pip list --not-required
Editモードでローカルのコードをインストールしたパッケージを表示する
$ pip list -e
パッケージの情報を表示する
$ pip show pyroombaadapter
より詳細を表示したい場合は、
$pip show --verbose pyroombaadapter
パッケージのアップデート
$ pip install --upgrade sampleproject
パッケージのアンインストール
$ pip uninstall sampleproject
現在の環境で依存関係が壊れているか確認する
$ pip check
キャッシュされたパッケージのデータのリストを表示する
$ pip cache list
pipは一度ダウンロードしたデータを保持し、再度インストールした時にそのデータを利用するキャッシュ機能があります。
キャッシュされたデータを削除する
$ pip cache purge
pipのコマンドをbashで補完してほしい
こちらのコマンドでbashrcに設定が追加されます。
$ pip completion --bash >> ~/.bashrc
pipをコードから呼ぶ場合、スレッドセーフですか?
今の所No
仮想環境venvの使い方
Python3.3から公式機能として追加されたvenvですが、
(3.3以前はvirtualenvという名前で、3rd partyのツールだったようです。)
使い方はかなり簡単で、下記の記事をみればすぐに使えると思います。
仮想環境の作成
プロジェクトのディレクトリに移動して、
$ python -m venv .venv
.venv以外の名前でもOKですが、慣習として.venvとすることが多いようです。
仮想環境のアクティベート
OSによって、
先程作成した仮想環境の中のアクティベート用のスクリプトのパスが異なります。
それぞれのスクリプトを実行すれば、仮想環境がアクティベートされ、
プロンプトの前の方に、仮想環境のディレクトリの名前が表示されます。
POSIX系
$ source .venv/bin/activate
Windows系
$ .venv\Scripts\activate.bat
仮想環境のデアクティベート
$ deactivate
参考資料
Python 1年生 体験してわかる!会話でまなべる!プログラミングのしくみ
MyEnigma Supporters
もしこの記事が参考になり、
ブログをサポートしたいと思われた方は、
こちらからよろしくお願いします。