まとめへのリンク
はじめに
Pythonの勉強をするために、acopyという群知能ライブラリを写経していました。
acopyでは、多くのPythonの面白い文法・イディオムが使われており、その中でも便利だなぁというのをまとめています。
今回は、Pythonのパッケージの一括インストール・書き出しについてです。
pip
pipは、Pythonの公式パッケージマネージャーです。
サードパーティ製のライブラリのインストールを、pipのみで簡単に行うことができます。
古めの言語は、このライブラリのインストールが非常に面倒だったりするため
Pythonのpip
Nodejsのnpm
など、パッケージマネージャーがあると非常に便利ですね。
パッケージの読み込み
pipを利用することで
pip install ライブラリ名
という形で、ライブラリをインストールできます。
ただ、例えばGitで他の方が書いたレポジトリを使用したい時
インストールするべきライブラリが山程必要な場合があります。
そこで、requirements.txt
という
使用するライブラリのバージョン名とその名前を書き出したテキストファイルを読み込み事で
一括でインストールすることができます。
alabaster==0.7.12
Babel==2.7.0
beautifulsoup4==4.8.1
boto==2.49.0
boto3==1.10.1
上記のような中身になっています。
requirements.txtの存在するディレクトリで
pip install -r requirements.txt
としてあげればよいです。
パッケージの書き出し
パッケージの読み込みをしたあとは、パッケージの書き出し
つまり、プロジェクトで使用するパッケージをすべて洗い出して、他の環境でもすぐにインストールできるようにさせる ことが可能です。
pip freeze
というコマンドを打つと
alabaster==0.7.12
Babel==2.7.0
beautifulsoup4==4.8.1
boto==2.49.0
boto3==1.10.1
botocore==1.13.1
cachetools==3.1.1
上記のように、ターミナルに、ライブラリ名とバージョンが表示されます。
よって、あとはこれをパイプでファイルに出力させてやればよいです。
pip freeze > requirements.txt
このrequirements.txtをGitHubのリポジトリに入れてあげれば
より簡単にパッケージをインストールすることができて、嬉しさです。
最後に
パッケージの一括インストールを見てきました。
pipenvを使用すると、どうやら自動でrequirements.txtにあたる
パッケージをまとめたファイルが作成されるようです。
非常に楽っぽいので、触ってみようと思います。