ホームページ > バックエンド開発 > Python チュートリアル > pyInstaller で生成された EXE でアプリケーション パスを見つけるにはどうすればよいですか?

pyInstaller で生成された EXE でアプリケーション パスを見つけるにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2024-11-30 02:51:09
オリジナル
240 人が閲覧しました

How Can I Find the Application Path in a pyInstaller-Generated EXE?

pyInstaller で生成された Python EXE 内のアプリケーション パスの検索

pyInstaller を使用して Python アプリケーションを Windows EXE にバンドルする場合、アプリケーション関連ファイルにアクセスする課題が生じる可能性があります。この問題は、sys.path が EXE 内で空のリストを返すために発生します。これを克服するには、アプリケーションのパスを確実に決定する方法が必要です。

1 つのアプローチには、アプリケーションがスクリプトとして実行されているか、それとも凍結された EXE として実行されているかを確認することが含まれます。

import os
import sys

config_name = 'myapp.cfg'

# Identify the application path
if getattr(sys, 'frozen', False):
    application_path = os.path.dirname(sys.executable)
elif __file__:
    application_path = os.path.dirname(__file__)

# Determine the configuration file path
config_path = os.path.join(application_path, config_name)
ログイン後にコピー

上記ではコード:

  • sys.executable は、凍結されたファイルへのパスを提供します。 EXE.
  • file は、アプリケーションがスクリプトとして実行されている場合、スクリプト ファイルへのパスを提供します。
  • application_path には、決定されたアプリケーション パスが格納されます。
  • config_path には、アプリケーション相対設定ファイルへのパスが格納されます。

この仕組みを利用すると、次のようになります。アプリケーションがスクリプトとして実行されているか、pyInstaller で生成された EXE として実行されているかに関係なく、アプリケーション関連ファイルへの正しいパスを取得できます。

以上がpyInstaller で生成された EXE でアプリケーション パスを見つけるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート