Python実行環境をつくる(Windows+venv)
Windowsで「特定のバージョンのPython」を入れて「さらに特定のパッケージ環境(venv)」で実行する方法をご紹介します。
Pythonのインストール
Pythonは 3.6系を入れてください。PCとOSにあわせて64bitか32bitかを確認します。
現時点では、3.6.7です。https://www.python.org/downloads/
Customize Installationを指定します
- Optional Features
pylancherは外し、それ以外はチェックする - Advanced Option
Locationに C:\Python\Python36を指定 - Disable path length limit をチェックする
- Closeを押す(終わり)
プロジェクト用の仮想環境(venv)の構築
今回は、c:\Python\(プロジェクト名) の下に、仮想環境をvenvコマンドで構築し、ソースコードを配置します。
コマンドプロンプトを起動します。
(作成) cd c:\Python python -m venv (プロジェクト名) (有効化) cd c:\Python\(プロジェクト名) ¥scripts activate.bat
(有効化以降は、コマンドラインに仮想環境のプロジェクト名(vpjと略)が表記されます。)
(vpj) python -m pip install --upgrade pip (vpj) python -m pip install (パッケージ名) << 最新のパッケージ (vpj) python -m pip install (パッケージ名)==(バージョン名) << バージョンを指定する場合
c:\Python\(プロジェクト名) に、提供しているソースコードを展開します。
Windowsでアプリケーション実行 (バッチファイル)
下記のバッチファイルを作成してください。(start.pyを実行する場合)
cd c:\Python\(プロジェクト名) .\scripts\activate.bat python start.py
開発用ソフト Pycharmをインストール
・Pycharm(Windows版)をインストール
当初はCommunityエディションで良いと思います。必要に応じて商用版などもあります。
https://www.jetbrains.com/pycharm/download/#section=windows
メニューから、
File > Open で、仮想環境の下のソースコードを指定します。
File > Settings で、Project Interpreter を確認します。
以上で、実行環境、開発環境が整います。
ネットに繋がっていないPCでは
Python本体、および、Pycharmについては、インストールするファイルを別PCなどでダウンロードしてUSBファイルでネットにつながっていないPCに持ち込むことでインストールする事ができます。
しかし、(上記の)pipコマンドでは、ネットワークから直接ダウンロードをしようとするため、失敗します。
あらかじめ、「Pythonがインストールしてあるネットワークに接続できるPC」で、pipコマンドで、パッケージをダウンロードして、オフラインのPCに持ち込んでpipコマンドでインストールします。
上記のpip部分のみ、下記に読み替えてください。
手作業でパッケージを1つづつ入れる場合
「Pythonがインストールしてあるネットワークに接続できるPC」
pip download -d <ダウンロード先のフォルダ> (パッケージ名)
場合によっては、依存関係があるパッケージが複数ダウンロードされます。
ダウンロード先のフォルダをオフラインのPCへ持っていき、
pip install <ダウンロードされたパッケージ名> を1つづつ行います。
パッケージをテキストファイルに書いて一括してインストール
運用PCに展開する際、pipコマンドで多数のパッケージで、指定されたバージョンが必要な場合は、タイプせずにテキストファイルなどでパッケージを記述して保存とインストールをすると楽です。
例:packages.txt を準備します。
tensorflow==0.12.0
Keras==1.1.2
「Pythonがインストールしてあるネットワークに接続できるPC」で、
pip download -d <ダウンロード先のフォルダ> -r packages.txt
ダウンロードしたフォルダと、packages.txtをオフラインのPCに持ち込みます。(C:\temp\downloaded_folder)
set package_dir=C:\temp\downloaded_folder pip install --no-index --find-links=file://%package_dir% -r packages.txt
事前に検証する必要はありますが、多数のパッケージがあるとき、多数のPCに展開する時、間違いたくない時などにはこちらのほうが良いでしょう。
追記
・この内容は、専門的な操作をしたい、自分で理解したい、方への内容です。
・当社がお客様へ提供しているシステムでは、配置や再インストールはバッチファイルとなっているので、コマンドプロンプトを開いたり、コマンドを打つ必要はありません。
・Linuxのほうがパッケージのインストールなどが整っていて簡単です。