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のほうがパッケージのインストールなどが整っていて簡単です。