ホームページ  >  記事  >  バックエンド開発  >  Python で exe プログラムを生成できますか?

Python で exe プログラムを生成できますか?

anonymity
anonymityオリジナル
2019-06-14 11:48:125760ブラウズ

Python は、インタプリタによって解釈および実行されるスクリプト言語です。 3つの公開方法があります。

Python で exe プログラムを生成できますか?

.py ファイル: オープン ソース プロジェクトの場合、またはソース コードがそれほど重要ではない場合は、ソース コードが直接提供され、ユーザーが必要とするPython をインストールし、すべての依存関係を自分でインストールします。 (これは、Python 公式インストール パッケージが行うことです)

.pyc ファイル: 一部の企業または個人は、機密保持またはさまざまな理由により、ソース コードをオペレーターに見られたくない場合があります。 pyc ファイルを使用して公開できます。pyc ファイルは、Python インタープリタによって認識できるバイナリ コードであるため、公開後はクロスプラットフォームになります。ユーザーは、Python の対応するバージョンと依存ライブラリをインストールする必要があります。

実行可能ファイル: プログラマーではないユーザーや初心者ユーザーにとって、大量の依存ライブラリを放り投げながら Python をインストールするように依頼されたら、大惨事になるでしょう。このようなユーザーにとって、最も簡単な方法は、実行可能ファイルを提供し、その使用方法を伝えることです。さらに厄介なのは、プラットフォーム (Windows、Linux、Mac など) ごとに異なる実行可能ファイルをパッケージ化する必要があることです。

この記事では主に最後の方法を紹介しますが、.py と .pyc はどちらも比較的単純で、Python 自体で処理できます。 Python スクリプトを実行可能ファイルにパッケージ化する方法は数多くあります。この記事では PyInstaller に焦点を当てます。

PyInstaller の概要

PyInstaller は実際に Python パーサーを組み合わせたものです。独自のスクリプトを実行可能ファイルにパッケージ化することは、実際のマシン コードにコンパイルすることとはまったく異なるため、実行可能ファイルにパッケージ化することで実行効率が向上するとは期待しないでください。 Python やスクリプトが依存するライブラリをマシンにインストールする必要はありません。 Linux オペレーティング システムでは、主に binutil ツール パッケージの ldd および objdump コマンドを使用します。

PyInstaller は指定したスクリプトを入力し、まずそのスクリプトが依存する他のスクリプトを分析し、次に Python パーサーを含むすべての関連スクリプトを検索、コピー、収集し、これらのファイルをディレクトリに配置します。ダウンロードするか、またはそれを実行可能ファイルにパッケージ化します。

出力フォルダー全体のファイル、または生成された実行可能ファイルを直接公開できます。アプリケーションが自己完結型であり、直接実行する前に他のパッケージや特定のバージョンの Python をインストールする必要がないことをユーザーに伝えるだけで済みます。

PyInstaller でパッケージ化された実行可能ファイルは、パッケージング マシン システムと同じ環境でのみ使用できることに注意してください。つまり、移植性がないため、別のシステムで実行する必要がある場合は、そのプラットフォーム用にパッケージ化する必要があります。

pyinstaller は、Python 環境のないマシンでも実行できるように、Python スクリプトを実行可能プログラムにパッケージ化します。

最新バージョンは pyinstaller 3.1 です。 1. Python2.7とPython3.3をサポートします。

Windows、Mac、Linux オペレーティング システムで実行できます。

ただし、クロスコンパイルされません。つまり、Windows で PyInstaller によって生成された exe は Windows でのみ実行でき、Linux で生成された exe は Linux でのみ実行できます。

以上がPython で exe プログラムを生成できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。