目次
コードの凍結
PyInstaller のインストール
PyInstaller
ホームページ バックエンド開発 Python チュートリアル Python スクリプトを実行可能ファイルにパッケージ化するにはどうすればよいですか? (詳細)

Python スクリプトを実行可能ファイルにパッケージ化するにはどうすればよいですか? (詳細)

Sep 27, 2018 pm 03:30 PM
python脚本

この記事では、Python スクリプトを実行可能ファイルにパッケージ化する方法について説明します。 (詳細)、一定の参考値がありますので、困っている方は参考にしていただければ幸いです。

Python は、インタプリタによって解釈および実行されるスクリプト言語です。リリース方法:

  • .py ファイル: オープン ソース プロジェクトの場合、またはソース コードがそれほど重要ではない場合、ソース コードが直接提供され、ユーザーは Python やさまざまなソフトウェアをインストールする必要があります。依存ライブラリ自体。 (これは、Python 公式インストール パッケージが行うことです)

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

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

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

コードの凍結

さまざまなパッケージ化ツールの比較は次のとおりです (コードの凍結に関する記事から):

##bbFreezeyesyes はいnoMITnoはいはいはいpy2exeはいnonoはいMITはいはいpyInstallercx_Freezepy2app#はい#はい# ## はい############

PS. その中でも、pyInstaller と cx_Freeze はどちらも優れており、stackoverflow の何人かの人は、cx_Freeze の方が便利だと言って、cx_Freeze の使用を提案しています。 pkg_resources の新しいバージョンは pyInstaller でサポートされているようです。

PyInstaller のインストール

ネットワークが比較的安定しており、pip ソース アドレスをスムーズに使用できるユーザーの場合は、次のコマンドを実行するだけです:

pip install pyinstaller
ログイン後にコピー

通常は、ソース コード パッケージをダウンロードし、パッケージ ディレクトリに移動して次のコマンドを実行します (setuptools をインストールする必要があります):

python setup.py install
ログイン後にコピー

インストール後、インストールが成功したかどうかを確認してください:

pyinstaller --version
ログイン後にコピー

インストールが成功したら、次のコマンドを使用できます:

  • pyinstaller: 実行ファイルをパッケージ化するためのメインコマンドで、詳しい使い方は後述します。

  • pyi-archive_viewer : 実行可能パッケージ内のファイルリストを表示します。

  • pyi-bindepend : 実行可能ファイルが依存する動的ライブラリ (.so または .dll ファイル) を表示します

  • pyi-... : 待ってください。

PyInstaller

pyinstaller の構文を使用します:

pyinstaller [options] script [script ...] | specfile
ログイン後にコピー

最も単純な使用法では、myscript.py と同じディレクトリでコマンドを実行します。

pyinstaller mycript.py
ログイン後にコピー

すると、2 つの新しいディレクトリ build と dist が作成されたことがわかります。 dist の下に追加 ファイルは公開できる実行可能ファイルです。上記のコマンドの場合、dist ディレクトリの下にダイナミック ライブラリ ファイルや myscrip 実行可能ファイルを含む多数のファイルが見つかります。これは面倒に感じることがあります。公開する前に、すべてを dist の下にパッケージ化する必要があります。動的ライブラリが失われると、実行されなくなります。幸いなことに、pyInstaller はシングル ファイル モードをサポートしています。実行する必要があるのは、次のとおりです:

pyinstaller -F mycript.py
ログイン後にコピー

dist の下には実行可能ファイルが 1 つだけあることがわかります。この 1 つのファイルは公開でき、使用しているオペレーティング システムと同様のシステムで実行できます。

もちろん、pyinstaller には、pyInstaller の実行プロセスをデバッグおよび理解するための -d オプションなどの一般的なオプションを含むさまざまなオプションもあります。また、さまざまなプラットフォーム用のオプションもいくつかあります。具体的な使用方法については、PyInstaller 公式 WIKI にアクセスしてください。

pyInstaller コマンドを実行すると、スクリプトと同じディレクトリに .spec ファイルが生成されます。このファイルは、pyinstaller にすべてのスクリプトの処理方法を指示します。 . には、コマンド オプションも含まれます。通常、このファイルに注意を払う必要はありません。データ ファイルをパッケージ化する必要がある場合、またはパッケージ化されたバイナリに Python ランタイム オプションを追加する必要がある場合 (高度なパッケージ化オプションなど)、.spec を手動で編集する必要があります。 ### ファイル。 .spec ファイルを作成するには:

pyi-makespec options script [script ...]
ログイン後にコピー

を使用できます。手動で編集した .spec ファイルの場合は、次のコマンドのいずれかを使用できます:

pyinstaller specfile
pyi-build specfile
ログイン後にコピー

PyInstaller の原理の紹介

PyInstaller は、実際に Python パーサーと独自のスクリプトを実行可能ファイルにパッケージ化し、実際のマシン コードにコンパイルします。実行可能ファイルにパッケージ化することで作業効率が向上するとは期待しないでください。逆に、作業効率が低下する可能性があります。利点は、Python やスクリプトが依存するライブラリをインストールする必要がないことです。ランナーズマシン。 Linux オペレーティング システムでは、主に

binutil ツール パッケージの ldd および objdump コマンドを使用します。

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

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

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

解決策 Windows Linux OS X Python 3 ライセンス ワンファイルモード Zipfile インポート Eggs pkg_resources サポート
#no no
はい はい はい no GPL はい no はい いいえ
yes yes yes yes PSF no yes yes no
no いいえ はい#MIT いいえ#はい

以上がPython スクリプトを実行可能ファイルにパッケージ化するにはどうすればよいですか? (詳細)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

pyjokes を使用してランダムなジョークを作成する Python スクリプト pyjokes を使用してランダムなジョークを作成する Python スクリプト Sep 13, 2023 pm 08:25 PM

Python スクリプトやアプリケーションにユーモアを加えてみませんか?チャットボットを構築している場合でも、コマンド ライン ツールを開発している場合でも、あるいは単にランダムなジョークで楽しませたい場合でも、pyjokes ライブラリが役に立ちます。 pyjoke を使用すると、さまざまなカテゴリのジョークを簡単に生成し、好みに合わせてカスタマイズできます。このブログ投稿では、pyjokes ライブラリを使用して Python でランダムなジョークを作成する方法を検討します。インストール プロセス、さまざまなカテゴリのジョークの生成、ジョークのカスタマイズ、コンソール アプリケーションまたは Web ページでのジョークの表示、および発生する可能性のある潜在的なエラーの処理について説明します。 pyjoke をインストールする pyjoke を使用してランダムなジョークを作成する前に、次のことが必要です。

crontab のスケジュールされたタスクが実行されない理由をご存知ですか? crontab のスケジュールされたタスクが実行されない理由をご存知ですか? Mar 09, 2024 am 09:49 AM

crontab のスケジュールされたタスクが実行されない原因まとめ 更新日時: 2019年1月9日 09:34:57 作成者: Hope on the field. この記事では主に、crontab のスケジュールされたタスクが実行されない原因をいくつかまとめて紹介します。考えられるトリガーごとに解決策が示されており、この問題に遭遇した同僚にとって一定の参照と学習価値があります。必要な学生はエディターに従って一緒に学習できます。序文: 最近仕事でいくつかの問題に遭遇しました。crontab のスケジュール設定タスクが実行されませんでした後、インターネットで検索したところ、インターネットでは主に次の 5 つのインセンティブについて言及されていることがわかりました: 1. crond サービスが開始されていない Crontab は Linux カーネルの機能ではなく、cron に依存しています。

Python スクリプトは Excel スプレッドシートを自動的に更新します Python スクリプトは Excel スプレッドシートを自動的に更新します Sep 09, 2023 pm 06:21 PM

Python と Excel は 2 つの強力なツールであり、組み合わせると自動化の世界が広がります。 Python には、さまざまなタスクを効率的に実行するスクリプトを作成できる多用途のライブラリとユーザーフレンドリーな構文が備わっています。一方、Excel は、データ分析と操作のための使い慣れたインターフェイスを提供する、広く使用されているスプレッドシート プログラムです。このチュートリアルでは、Python を活用して Excel スプレッドシートを更新するプロセスを自動化し、時間と労力を節約する方法を検討します。 Excel スプレッドシートを更新されたデータで手動で更新することに貴重な時間を費やしていませんか?これは反復的で時間のかかる作業であり、生産性を大幅に低下させる可能性があります。この記事では、Py の使用方法を説明します。

Orange3 の探索: データ マイニングと機械学習の新しい世界を切り開きます! Orange3 の探索: データ マイニングと機械学習の新しい世界を切り開きます! Mar 04, 2024 pm 08:16 PM

Orange3 は、強力なオープンソース データ視覚化および機械学習ツールであり、豊富なデータ処理、分析、モデリング機能を備えており、ユーザーにシンプルかつ高速なデータ マイニングおよび機械学習ソリューションを提供します。この記事では、Orange3 の基本的な機能と使用法を簡単に紹介し、実際のアプリケーション シナリオや Python コードのケースと組み合わせて、読者が Orange3 の使用スキルをよりよく習得できるようにします。 Orange3 の基本機能には、データのロード、データの前処理、特徴の選択、モデルの確立と評価などが含まれます。ユーザーは直感的なインターフェイスを使用してコンポーネントをドラッグ アンド ドロップし、データ プロセスを簡単に構築できます。同時に、より複雑なデータ処理やモデリングのタスクも Python スクリプトを通じて実行できます。以下、実践的な内容を見ていきます

PyCharm 高度なチュートリアル: PyInstaller を使用してコードを EXE 形式にパッケージ化する PyCharm 高度なチュートリアル: PyInstaller を使用してコードを EXE 形式にパッケージ化する Feb 20, 2024 am 09:34 AM

PyCharm は、開発者の効率向上に役立つ豊富な機能とツールを提供する強力な Python 統合開発環境です。その中でも、PyInstaller は、Python コードを実行可能ファイル (EXE 形式) にパッケージ化して、Python 環境のないマシンでの実行を容易にする、一般的に使用されるツールです。この記事では、PyCharm で PyInstaller を使用して Python コードを EXE 形式にパッケージ化し、特定の

Web サイトの変更を監視するための Python スクリプト Web サイトの変更を監視するための Python スクリプト Aug 29, 2023 pm 12:25 PM

今日のデジタル時代では、競合他社の Web サイトの更新情報の追跡、製品の入手可能性の監視、重要な情報の把握など、さまざまな目的で Web サイトの最新の変更を認識することが重要です。 Web サイトの変更を手動で確認するのは時間がかかり、非効率的です。ここで自動化が活躍します。このブログ投稿では、Web サイトの変更を監視する Python スクリプトを作成する方法を検討します。 Python といくつかの便利なライブラリを活用することで、Web サイトのコンテンツを取得し、以前のバージョンと比較し、変更があれば通知するプロセスを自動化できます。これにより、監視するサイトの更新や変更に対して積極的に対応し、迅速に対応することができます。環境のセットアップ Web サイトの変更を監視するスクリプトを書き始める前に、P をセットアップする必要があります。

python_python の繰り返し文字列チュートリアルで文字列を繰り返す方法 python_python の繰り返し文字列チュートリアルで文字列を繰り返す方法 Apr 02, 2024 pm 03:58 PM

1. まず pycharm を開いて、pycharm ホームページに入ります。 2. 次に、新しい Python スクリプトを作成し、右クリックして [新規] をクリックし、[Pythonfile] をクリックします。 3. 文字列、コード: s="-" を入力します。 4. 次に、文字列内のシンボルを 20 回繰り返す必要があります (コード: s1=s*20)。 5. 印刷出力コード、コード: print(s1) を入力します。 6. 最後にスクリプトを実行すると、下部に戻り値が表示されます。 - 20 回繰り返しました。

pycharmでExcelデータを読み取る方法 pycharmでExcelデータを読み取る方法 Apr 03, 2024 pm 08:42 PM

PyCharmを使用してExcelデータを読み取るにはどうすればよいですか?手順は次のとおりです: openpyxl ライブラリのインストール、openpyxl ライブラリのインポート、Excel ワークブックのロード、特定のワークシートへのアクセス、ワークシート内のセルへのアクセス、行と列の走査。

See all articles