「毎日Unity」の技術ブログ

開発で役立つ情報を発信する

【Python】Pythonファイルを実行ファイルに変換する方法

PyInstallerを使ったPythonファイルを実行ファイルに変換する方法を記事にしました。

[ 変換方法 ]

Windowsの場合

まずはじめに下記のように、コマンドプロンプトを起動してカレントフォルダを実行ファイルに変換したいPythonファイルがあるフォルダに変更します。
f:id:EDunity:20200526171305p:plain

Microsoft Windows [Version 10.0.18363.836]
(c) 2019 Microsoft Corporation. All rights reserved.

C:\Users\Naoya>cd C:\Users\Naoya\Desktop\Python

C:\Users\Naoya\Desktop\Python>

次に下記のようにコマンドプロンプトに「py -m PyInstaller ファイル名.py --onefile」と入力します。
f:id:EDunity:20200528111539p:plain

Microsoft Windows [Version 10.0.18363.836]
(c) 2019 Microsoft Corporation. All rights reserved.

C:\Users\Naoya>cd C:\Users\Naoya\Desktop\Python

C:\Users\Naoya\Desktop\Python>py -m PyInstaller test.py --onefile

最後に入力したらエンターを押します。そうすれば下記のように変換され始めると思います。
f:id:EDunity:20200528111852p:plain

Microsoft Windows [Version 10.0.18363.836]
(c) 2019 Microsoft Corporation. All rights reserved.

C:\Users\Naoya>cd C:\Users\Naoya\Desktop\Python

C:\Users\Naoya\Desktop\Python>py -m PyInstaller test.py --onefile
107 INFO: PyInstaller: 3.6
107 INFO: Python: 3.7.5
107 INFO: Platform: Windows-10-10.0.18362-SP0
109 INFO: wrote C:\Users\Naoya\Desktop\Python\test.spec
110 INFO: UPX is not available.
116 INFO: Extending PYTHONPATH with paths
['C:\\Users\\Naoya\\Desktop\\Python', 'C:\\Users\\Naoya\\Desktop\\Python']
116 INFO: checking Analysis
116 INFO: Building Analysis because Analysis-00.toc is non existent
116 INFO: Initializing module dependency graph...
119 INFO: Caching module graph hooks...
126 INFO: Analyzing base_library.zip ...
4499 INFO: Caching module dependency graph...
4597 INFO: running Analysis Analysis-00.toc
4600 INFO: Adding Microsoft.Windows.Common-Controls to dependent assemblies of final executable
  required by C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python37_64\python.exe
4673 INFO: Analyzing C:\Users\Naoya\Desktop\Python\test.py
4675 INFO: Processing module hooks...
4675 INFO: Loading module hook "hook-encodings.py"...
4757 INFO: Loading module hook "hook-pydoc.py"...
4758 INFO: Loading module hook "hook-xml.py"...
5044 INFO: Looking for ctypes DLLs
5044 INFO: Analyzing run-time hooks ...
5049 INFO: Looking for dynamic libraries

変換し終わると下記の画像のようにカレントフォルダ内に「dist」というフォルダが作成されその中に実行ファイルに変換されたPythonファイルが入っていると思います。
f:id:EDunity:20200528112130p:plain