USBにPython環境を作ってみた(Windows)

普段使用しているPCとは別の環境でちょろっとPython書いて実行できたら便利だなあと思う機会がここ最近何度もあったのでUSB内にPython環境を作ってみました(Windows前提です)。

Python環境🐍

USBにPython環境を用意する選択肢はいくつかありますが今回はembeddable package使うことにしました(容量少ないしね!)。

embeddable package

Python Releases for Windowsから"embeddable package"を選んでダウンロードします。おわりです👍

ダウンロードしてきたzipを解凍してpython.exeを叩けばPythonが動きます。ただし動作にはMicrosoft C Runtimeが必要です。

pipを使えるようにする

そのままではpipが使えないので使えるようにしてみます。

ダウンロードしてきたファイルにあるpythonXX._pth(XXはバージョン)が、

pythonXX.zip
.

# Uncomment to run site.main() automatically
#import site

のようになっているはずなので下記のようにアンコメントします。

pythonXX.zip
.

# Uncomment to run site.main() automatically
import site

その後、get-pip.pyをダウンロードしてきて、

python get-pip.py

を実行するとpipが入ります。あとは

python -m pip install numpy

とかで好きなパッケージを入れるだけです。

エディターも📝

せっかくなのでエディターもUSB内に用意しておきます。今回はみんな大好きVisual Studio Codeを入れることにしました(容量は気にしない!)。

VS Code(Zip)

Download Visual Studio CodeからZip版をダウンロードしてきます。おわりです👍

ダウンロードしてきたzipを解凍してcode.exeを叩けばVS Codeが起動します。

拡張機能を入れる

このままでは味気ないので拡張機能も少々入れることにします。

Zip版のVS Codeに拡張機能をいれるにはまず解凍したフォルダー内にdataフォルダーを作成します。作成するとセッション状態、設定、拡張機能などのすべてのデータがdataフォルダー内に保存されます(dataフォルダーがない場合ローカルの設定を見に行くぽいです)。その後VS Codeを起動します。

あとはいつも通り拡張機能をインストールするだけです。今回はPythonの開発(それもちょっとしたもの)のみが目的なのでこの辺りをいれておけば十分かなと思います。

setting.json

最後にsetting.jsonをいじってpython.exeのパスをVS Codeに教えておきます。

{
    "python.pythonPath": "${execPath}/../../python-x.x.x/python.exe",
    "python.languageServer": "Pylance"
}

${execPath}はVS Codeで定義されている変数でcode.exeのパスを表します。

今回python.execode.exeもUSBメモリ内にあることを想定しているので、${execPath}から相対パスで指定するので手っ取り早いです。

おわりに🦕

このUSBを持ち歩けば自PC以外でも普段とほぼ同じ環境でささっとスクリプト書いて実行できるので便利そうです。

参考🙇

たまおさ
釣りとか登山とか好きです。(@tamaki_osamu)