WinPython のインストール(Windows 上)

概要

WinPython は,Windows 用の Python 処理系と主要な Python パッケージを一つにまとめた,ポータブルな Python ディストリビューションである.インストール不要で USB メモリなどから直接実行できるため,環境構築の手間を省きたい場合に便利である.主に次のアプリケーションが同梱されている.

本記事では,WinPython のインストール,初期設定,主要な Python パッケージのインストール,簡単な性能確認の手順を,スクリーンショットとともに説明する.

目次

WinPython のダウンロードとインストール

本記事では Python 3.12 系の WinPython を例に説明する.WinPython のバージョンによって,含まれる Python のバージョンや手順が若干異なる場合がある.

  1. ウェブページを開く

    https://sourceforge.net/projects/winpython/

  2. Files」をクリックする
  3. バージョンを選ぶ

    利用したい Python のバージョン(ここでは Python 3.12 系)に対応する WinPython の最新安定版を選ぶ.「WinPython_3.12」のフォルダから選ぶとよい.

  4. 最新の安定版をダウンロードする.

    Download Latest Version」をクリックする(ファイル名を確認し,Python 3.12 系のものをダウンロードすること).

  5. ファイルのダウンロードが始まる.
  6. ダウンロードした .exe ファイルを実行する
  7. 展開するディレクトリの設定

    展開(解凍)するディレクトリを設定する.システムドライブ直下(C:\ など)は避け,ユーザーフォルダ配下(例:C:\Users\ユーザー名\WinPython)や専用フォルダ(例:C:\Tools\WinPython)を指定することを推奨する.ここでは例として C:\Tools\WPy64-312xx(xx はバージョン番号)に展開する.

  8. ディレクトリを指定したら,「Extract」をクリックする.
  9. 終了するまで待つ.

環境変数 Path の設定

コマンドプロンプトなどから WinPython の Python や関連ツール(pip など)を呼び出せるように,Windows のシステム環境変数 Path に次のディレクトリを追加する.

次のパスは,WinPython を展開したディレクトリに合わせて修正すること(例:C:\Tools\WPy64-312xx に展開した場合).

C:\Tools\WPy64-312xx\python-3.12.x.amd64
C:\Tools\WPy64-312xx\python-3.12.x.amd64\Scripts
C:\Tools\WPy64-312xx\Scripts
C:\Tools\WPy64-312xx

(環境変数 Path の設定方法が分からない場合は,別途「Windows 環境変数 設定」などで検索すること.設定後は,PC の再起動や再サインインが必要な場合がある.)

WinPython のインストール後の確認

  1. Windows で,コマンドプロンプトを起動する(この確認作業では,管理者権限は不要である).
  2. pippythonパスが通っていることの確認

    次のコマンドを実行し,設定した Path にある実行ファイルの場所が表示されるか確認する.これは,コマンドプロンプトが pippython というコマンドを認識できる状態か(環境変数 Path が正しく設定されているか)を確認するためである.

    where pip
    where python

    * 表示されるパスは,WinPython の展開先やバージョンによって異なる.エラーメッセージが出ないことを確認する.

  3. python のバージョンの確認

    使用する Python のバージョン(3.12 系)が表示されることを確認する.

    * エラーメッセージが出ないことを確認する.

    python --version
  4. pip の動作確認(インストール済みパッケージ一覧表示)

    WinPython に最初から含まれている Python パッケージの一覧が表示される.

    * エラーメッセージが出ないことを確認する.

    pip list

パッケージ管理ツールの更新

WinPython 環境を最新の状態に保つため,パッケージ管理ツールである pipsetuptools を更新する.

  1. 管理者権限コマンドプロンプトを起動する (手順:Windowsキーまたはスタートメニュー → cmd と入力 → 右クリック → 「管理者として実行」)。
  2. pipsetuptools更新

    次のコマンドを実行して,pipsetuptools を最新版に更新する.

    python -m pip install -U --no-user pip setuptools
  3. 更新後のバージョン確認

    再度 pip list を実行し,pipsetuptools のバージョンが更新されているか確認する(任意).

    pip list

性能の確認

WinPython に含まれる numpyscikit-learn を用いて,簡単な数値計算(行列の積,主成分分析,SVD,k-Means クラスタリング)を実行し,その処理時間を確認する.

* これらの実行時間は,お使いの PC の CPU 性能,メモリ量などの実行環境によって大きく変わる.目安として見ること.

  1. Windows で,コマンドプロンプトを起動する.
  2. Python プログラムの実行

    次の Python コードをファイル(例:performance_test.py)に保存し,コマンドプロンプトから python performance_test.py のように実行する.事前に numpyscikit-learn がインストールされている必要がある(WinPython には通常含まれている).

    import time
    import numpy
    import numpy.linalg
    import sklearn.decomposition
    import sklearn.cluster
    
    # データ生成 (2000x2000の乱数行列)
    print("Generating random data (2000x2000)...")
    X = numpy.random.rand(2000, 2000)
    Y = numpy.random.rand(2000, 2000)
    print("Data generated.")
    
    print("Calculating matrix product...")
    a = time.time(); Z = numpy.dot(X, Y); print(f"Matrix product: {time.time() - a:.2f} sec")
    
    print("Calculating PCA...")
    pca = sklearn.decomposition.PCA(n_components=2)
    a = time.time(); pca.fit(X); X_pca = pca.transform(X); print(f"PCA: {time.time() - a:.2f} sec")
    
    print("Calculating SVD...")
    a = time.time(); U, S, V = numpy.linalg.svd(X); print(f"SVD: {time.time() - a:.2f} sec")
    
    print("Calculating k-Means...")
    a = time.time()
    kmeans_model = sklearn.cluster.KMeans(n_clusters=10, random_state=10, n_init='auto').fit(X)
    labels = kmeans_model.labels_
    print(f"k-Means clustering: {time.time() - a:.2f} sec")

    実行結果の例(時間は環境により異なる):

    • 行列の積: 0.31 秒
    • 主成分分析: 0.21 秒
    • SVD: 3.62 秒
    • k-Means クラスタリング: 3.78 秒

TensorFlow のインストール

TensorFlow を利用する場合のインストール手順である.

(重要)TensorFlow と Python のバージョン互換性

TensorFlow をインストールする前に,利用したい TensorFlow のバージョンが,使用している Python のバージョン(ここでは Python 3.12)に対応しているかを確認すること.公式ドキュメントや PyPI(https://pypi.org/project/tensorflow/)で確認できる.

  1. 管理者権限コマンドプロンプトを起動する (手順:Windowsキーまたはスタートメニュー → cmd と入力 → 右クリック → 「管理者として実行」)。
  2. 既存パッケージのアンインストール(推奨)

    * 既存の TensorFlow 関連パッケージがインストールされている場合,バージョンの競合を避けるため,一度アンインストールしておくことを推奨する.

    python -m pip uninstall -y tensorflow tensorflow-cpu tensorflow-intel keras tensorboard
  3. TensorFlow および関連パッケージのインストール

    Python 3.12 に対応する TensorFlow をインストールする.あわせて tensorflow-datasetstensorflow-hubkeras-tuner なども導入できる.

    python -m pip install -U --no-user tensorflow tensorflow-datasets tensorflow-hub keras-tuner tensorboard

    (GPU 版を利用する場合は,別途 CUDA Toolkit や cuDNN のインストールが必要である.TensorFlow GPU サポートを参照すること.)

    (TensorFlow の公式ドキュメントやサンプルコードは,公式サイトGitHub リポジトリを参照すること.)

  4. Python の numpy がインストールされていることの確認

    TensorFlow は numpy に依存している.バージョン番号が表示されればよい(バージョンは環境により異なる).

    python -c "import numpy; print(numpy.__version__)"
  5. TensorFlow のバージョン確認

    インストールした TensorFlow のバージョンが表示されればよい(バージョンは環境により異なる).

    python -c "import tensorflow as tf; print(tf.__version__)"

Python のライブラリのインストール

WinPython には多くの科学技術計算パッケージが同梱されているが,それ以外のパッケージや,特定のバージョンが必要な場合は,pip を使ってインストールする.

  1. 管理者権限コマンドプロンプトを起動する (手順:Windowsキーまたはスタートメニュー → cmd と入力 → 右クリック → 「管理者として実行」)。
  2. パッケージのインストール

    例として,データサイエンスでよく使われるパッケージや,Web フレームワークなどをインストールするコマンドを示す.必要なものを選んでインストールすること.

    データサイエンス・機械学習関連:

    python -m pip install -U --no-user numpy scipy pandas scikit-learn scikit-image matplotlib seaborn plotly statsmodels h5py pillow cython

    Web 開発・その他:

    python -m pip install -U --no-user flask django requests beautifulsoup4 html5lib lxml openpyxl xlrd xlsxwriter pylint flake8 pytest

    注意:

    • 上記は例である.必要なパッケージを個別に python -m pip install -U --no-user パッケージ名 でインストールすること.
    • パッケージによっては,別途システムライブラリのインストールが必要な場合がある.その場合は各パッケージのドキュメントに従うこと.

試しに Python で OpenCV を使ってみる

OpenCV は,コンピュータビジョンのライブラリである.OpenCV を使って画像や動画を表示してみる.

OpenCV の機能とプログラム例:別ページ »にまとめ

OpenCV のインストール:

まだインストールしていない場合は,コマンドプロンプト(管理者権限を推奨)で次のコマンドを実行する.

python -m pip install -U --no-user opencv-python

画像ファイルの表示

  1. 画像ファイルを準備する

    表示したい画像ファイル(例:fruits.jpg)を,これから実行する Python スクリプトと同じフォルダに置く.

    謝辞:https://github.com/opencv/opencv/tree/master/samples/data で公開されている fruits.jpg を使用している.感謝する.

  2. Python プログラムの作成と実行

    次の Python プログラムを show_image.py のような名前で保存し,画像ファイルと同じディレクトリから実行する.

    import cv2
    import os
    
    # 画像ファイル名 (スクリプトと同じディレクトリにあると仮定)
    image_filename = "fruits.jpg"
    
    if not os.path.exists(image_filename):
        print(f"Error: Image file not found: {image_filename}")
    else:
        img = cv2.imread(image_filename)
        if img is None:
            print(f"Error: Could not read image file: {image_filename}")
        else:
            window_title = "Fruit Image"
            cv2.imshow(window_title, img)
            print(f"Displaying '{image_filename}'. Press any key on the '{window_title}' window to close.")
            cv2.waitKey(0)          # キー入力待ち
            cv2.destroyAllWindows() # ウィンドウを閉じる
            print("Window closed.")

    Windows で,コマンドプロンプトを開き,スクリプトのあるディレクトリに移動してから「python show_image.py」のように実行する.

    WinPython に付属の Spyder などで実行することも可能である(その場合,Spyder のワーキングディレクトリに画像ファイルを置くこと).

    画像が表示される.画像のウィンドウを選択した状態で何かキーを押すと,ウィンドウが閉じる.

動画ファイルの表示

  1. 動画ファイルを準備する

    表示したい動画ファイル(例:1-1.avi)を,これから実行する Python スクリプトと同じフォルダに置く.

    ここで使用するビデオの例:1-1.avi(3分1秒)

  2. Python プログラムの作成と実行

    次の Python プログラムを show_video.py のような名前で保存し,動画ファイルと同じディレクトリから実行する.

    import cv2
    import os
    
    # 動画ファイル名 (スクリプトと同じディレクトリにあると仮定)
    video_filename = "1-1.avi"
    
    if not os.path.exists(video_filename):
        print(f"Error: Video file not found: {video_filename}")
    else:
        v = cv2.VideoCapture(video_filename)
        if not v.isOpened():
            print(f"Error: Could not open video file: {video_filename}")
        else:
            window_title = "Video Player"
            print(f"Displaying video '{video_filename}'. Press 'q' to exit.")
            while v.isOpened():
                r, f = v.read()
                if not r:
                    break
                cv2.imshow(window_title, f)
                key = cv2.waitKey(1) & 0xFF   # ESC キーで終了
                if key == 27:
                    break
            v.release()
            cv2.destroyAllWindows()
            print("Video playback finished or stopped.")

    Windows で,コマンドプロンプトを開き,スクリプトのあるディレクトリに移動してから「python show_video.py」のように実行する.

    WinPython に付属の Spyder などで実行することも可能である(その場合,Spyder のワーキングディレクトリに動画ファイルを置くこと).

    ビデオが表示される.再生が終了するか,ESC キーを押すとウィンドウが閉じる.