超軽量なPython「Python embeddable」(約15MB)の実行環境の準備方法メモ (pip、他ライブラリ(例:psutil)の導入まで)

超軽量Python「**Python embeddable**」。ダウンロードの圧縮ファイル.zipで、約8MB、解凍して約16MB程度の超軽量Python実行環境。実行環境の準備方法を当方でも確認できたのでメモします。

1. Windows **embeddable** package (64-bit)をダウンロード。(python-3.9.1-**embed**-amd64.zip)
2. 展開後、中の「python.exe」に.pyファイルを渡して、実行可。(DOSコマンド: python.exe sample.py)
3. **Python標準ライブラリのみ**しか使えないので、他のライブラリをインストールするには、**まず**「**pip**」をインストール。ダウンロード先：https://bootstrap.pypa.io/get-pip.py から「**get-pip.py**」をダウンロード、「get-pip.py」を「python.exe」上へドラッグ&ドロップ。
4. ファイル「**python39._pth**」をテキストエディタで開いて、「#import site」のコメントを除去「import site」へ。
5. 例えば、CPU・メモリ使用率等の情報を得るライブラリ「psutil」をインストールする場合は、「DOSコマンド: **python.exe -m pip install psutil**」
6. OK

## 詳細

https://www.python.org/downloads/windows/
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/606924/8227464a-08b4-ae46-f70b-7c372c77f0f9.png)
　↓
https://www.python.org/downloads/release/python-391/
Windows embeddable package (64-bit)をダウンロード。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/606924/2d5279cc-bda2-4c32-87bc-f1242b5937d6.png)
　↓
python-3.9.1-embed-amd64.zip
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/606924/b268314f-a32e-12f4-badc-c7ec2a2a099f.png)
　↓
展開すると、フォルダ「python-3.9.1-embed-amd64」内は、
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/606924/3218c465-cb39-8c3b-9bd0-92a14b7f2dd5.png)
ほとんど.pyd(中身はDLL)と.dllのファイルのみで構成。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/606924/2872737d-a78f-2c61-d59b-cccc84ed22d1.png)
　↓
中の「python.exe」を起動すると、対話式コンソールが表示されます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/606924/83bbac3c-a146-f3d0-8560-52639f9701f3.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/606924/fd4bbf1a-7de5-6427-05af-ab7a651f27df.png)

```Python
import datetime
datetime.datetime.now()
x = 2**32
x
```

　↓
ダウンロード先：https://bootstrap.pypa.io/get-pip.py から「get-pip.py」をダウンロード、フォルダ「python-3.9.1-embed-amd64」内に保存し、「get-pip.py」を「python.exe」上へドラッグ&ドロップして(あるいは、DOSコマンド: python.exe get-pip.py)、実行。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/606924/a55d0d4a-4668-defc-7ee7-1595deee02e3.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/606924/33dbc891-4db4-07a0-92aa-fad503724b57.png)
「pip」の利用可。
　↓
ファイル「python39._pth」をテキストエディタで開いて、「#import site」のコメントを除去「import site」して、
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/606924/a799d3e6-32e4-2911-9014-3e63b918cd28.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/606924/280a722f-eb96-660f-36a7-32f5f706442b.png)
　↓
例えば、CPU・メモリ使用率等の情報を得るライブラリ「psutil」をインストールすると、「DOSコマンド: python.exe -m pip install psutil」で、
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/606924/46d1eb3c-1785-13be-1747-6028d82c76be.png)
　↓
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/606924/3a7d9f08-4ef3-167b-9ad5-ff6fb3eb214d.png)
インストール完了。
　↓
ライブラリ「psutil」を使用してみると、
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/606924/3f19c6c6-5ecf-f8ef-9579-db7d5a0cf1e6.png)
CPU使用率・メモリ使用率が取得され、OK。

```Python
import psutil
psutil.cpu_percent()
psutil.virtual_memory()
```

　↓
ライブラリ「psutil」をインストールすると、実行環境は約34MB。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/606924/67020d64-64e7-a015-ce4b-15869f94d0f5.png)


## 参照
https://qiita.com/mm_sys/items/1fd3a50a930dac3db299
https://qiita.com/suzuki_y/items/3261ffa9b67410803443
https://pypi.org/project/psutil/