Python 3.12 Windows開発環境構築ガイド
【概要】
Windows環境においてPython 3.12の開発環境を構築するための手順をまとめたものである。すべての操作は管理者権限のコマンドプロンプトで実行する。本ガイドは,Python 3.12 のインストール,AIエディタ Windsurf のインストール,pip と setuptools の更新,インストール結果の確認,数値演算の性能確認の5つの作業で構成される。
【目次】
【前提条件】
- Windows環境であること
- 管理者権限でコマンドプロンプトを実行できること
- winget(Windows標準のパッケージ管理ツール)が利用可能であること
【関連する外部ページ】
- Python公式ページ: https://www.python.org/
- Windsurf公式ページ: https://windsurf.com/
【サイト内の関連情報】
- Python 詳細ガイド:別ページ
- 機械学習や深層学習を行う場合の追加インストール(NVIDIA CUDA,Visual Studio,Cursor など):https://www.kkaneko.jp/cc/dev/aiassist.html
Python 3.12 のインストール
Pythonのインストールを行い、Pythonのプログラムを実行する環境を整える。扱う環境は、Windows搭載パソコンである。金子研究室では、Python 3.12.10を推奨する。
[Windows での Python 3.12 のインストール手順を見るには、ここをクリック]
Windows での Python 3.12 のインストール
以下のいずれかの方法でPython 3.12をインストールする。Pythonがインストール済みの場合、この手順は不要である。
方法 1:winget によるインストール
【インストールコマンドの実行方法】
管理者権限でコマンドプロンプトを起動する(手順:Windowsキーまたはスタートメニュー → cmd と入力 → 右クリック → 「管理者として実行」)。そして、コマンド全体をコマンドプロンプトにコピー&ペーストする。
--scope machine を指定することで、システム全体(全ユーザー向け)にインストールされる。このオプションの実行には管理者権限が必要である。インストール完了後、コマンドプロンプトを再起動するとPATHが反映される。
REM Python 3.12 をシステム領域にインストール
winget install --id Python.Python.3.12 -e --scope machine --silent --accept-source-agreements --accept-package-agreements --override "/quiet InstallAllUsers=1 PrependPath=1 Include_test=0 Include_pip=1 Include_launcher=1 InstallLauncherAllUsers=1 TargetDir=\"C:\Program Files\Python312\""
REM Python と Scripts を PATH 先頭に追加
powershell -NoProfile -Command "$p='C:\Program Files\Python312'; $s=\"$p\Scripts\"; $c=[Environment]::GetEnvironmentVariable('Path','Machine'); if((Test-Path $p) -and (';'+$c+';' -notlike \"*;$p;*\") -and (';'+$c+';' -notlike \"*;$s;*\")){[Environment]::SetEnvironmentVariable('Path',\"$p;$s;$c\",'Machine')}"
方法 2:インストーラーによるインストール
- Python公式サイト(https://www.python.org/downloads/)にアクセスし、「Download Python 3.x.x」ボタンからWindows用インストーラーをダウンロードする。
- ダウンロードしたインストーラーを実行する。
- 初期画面の下部に表示される「Add python.exe to PATH」にチェックを入れてから「Customize installation」を選択する。このチェックを入れ忘れると、コマンドプロンプトから
pythonコマンドを実行できない。 - 「Install Python 3.xx for all users」にチェックを入れ、「Install」をクリックする。
インストールの確認
コマンドプロンプトで以下を実行する。
python --version
バージョン番号(例:Python 3.12.x)が表示されればインストール成功である。「'python' は、内部コマンドまたは外部コマンドとして認識されていません。」と表示される場合は、インストールが正常に完了していない。
pip と setuptools の更新
-
管理者権限でコマンドプロンプトを起動する (手順:Windowsキーまたはスタートメニュー →
cmdと入力 → 右クリック → 「管理者として実行」)。 - 次のコマンドを実行する。
python -m pip install -U --no-user pip setuptools
Python に関しての情報取得
Python にトラブルがあった時に役立つよう,情報取得の手順をまとめる.
- Python にパスが通っていることの確認
where python - Python のバージョンの確認
python --version -
Python のビルドに用いられたコンパイラのバージョン番号の確認
import sys print(sys.version) exit()実行すると、Pythonのバージョンとビルドに用いられたコンパイラのバージョン番号が表示される。
- pip の動作確認
* エラーメッセージが出ないことを確認する.
pip list
確認のため,Windsurf で次の Python プログラムを実行してみる
次のプログラムは,NumPy と Matplotlib を使用して,0から6までの範囲のsin関数のグラフを描画する.warnings モジュールで Matplotlib の警告表示を抑制し,Matplotlib のデフォルトのスタイルを使用する.
import numpy as np
import matplotlib.pyplot as plt
import warnings
warnings.filterwarnings('ignore') # Suppress Matplotlib warnings
x = np.linspace(0, 6, 100)
plt.style.use('default')
plt.plot(x, np.sin(x))
plt.show()
性能の確認
-
管理者権限でコマンドプロンプトを起動する (手順:Windowsキーまたはスタートメニュー →
cmdと入力 → 右クリック → 「管理者として実行」)。python -m pip install -U --no-user numpy scikit-learn scikit-learn-intelex - NumPy の動作確認
次の Python プログラムを実行する。
import numpy as np print(np.sin(0)) exit()
- Python の数値演算等の性能確認
次の Python プログラムを実行する。
次のプログラムは,NumPy と scikit-learn を使用して,行列計算とデータ分析を行う.- 2000×2000 の乱数行列 X と Y を生成し、それらの行列積を計算する.
- scikit-learn の PCA を使用して,X の主成分分析を行い,2次元に次元削減する.
- NumPy の svd 関数を使用して、X の特異値分解を行う.
- scikit-learn の KMeans を使用して,X に対して10クラスタのk-means クラスタリングを行う.
各操作の実行時間を測定し,結果を出力するプログラムである.
import time import numpy import numpy.linalg import sklearn.decomposition import sklearn.cluster X = numpy.random.rand(2000, 2000) Y = numpy.random.rand(2000, 2000) # 行列の積 a = time.time(); Z = numpy.dot(X, Y); print(time.time() - a) # 主成分分析 pca = sklearn.decomposition.PCA(n_components = 2) a = time.time(); pca.fit(X); X_pca = pca.transform(X); print(time.time() - a) # SVD a = time.time(); U, S, V = numpy.linalg.svd(X); print(time.time() - a) # k-means a = time.time() kmeans_model = sklearn.cluster.KMeans(n_clusters=10, random_state=10).fit(X) labels = kmeans_model.labels_ print(time.time() - a)実行結果の例
- 行列の積: 約0.05 秒
- 主成分分析: 約0.06 秒
- SVD: 約1.30 秒
- k-Means クラスタリング: 約2.99 秒