Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimana untuk Menentukan Laluan Aplikasi dalam PyInstaller EXE?

Bagaimana untuk Menentukan Laluan Aplikasi dalam PyInstaller EXE?

Barbara Streisand
Lepaskan: 2024-11-13 13:23:02
asal
1080 orang telah melayarinya

How to Determine the Application Path in a PyInstaller EXE?

Menentukan Laluan Aplikasi dalam pyInstaller EXE

Dalam aplikasi Python yang digabungkan sebagai EXE menggunakan pyInstaller, mengakses laluan aplikasi menggunakan sys.path[0] boleh bermasalah. Laluan ini mungkin kosong atau mengelirukan. Untuk mengatasi cabaran ini, pendekatan yang lebih mantap diperlukan untuk menentukan lokasi aplikasi.

Penyelesaian

Untuk mendapatkan laluan aplikasi, bezakan antara pelaksanaannya sebagai skrip atau sebagai EXE beku:

import os
import sys

config_name = 'myapp.cfg'

# Check if application is a script file or frozen exe
if getattr(sys, 'frozen', False):
    # Frozen executable, get the path from sys.executable
    application_path = os.path.dirname(sys.executable)
elif __file__:
    # Script file, get the path from __file__
    application_path = os.path.dirname(__file__)

config_path = os.path.join(application_path, config_name)
Salin selepas log masuk

Penyelesaian ini secara berkesan mendapatkan semula laluan aplikasi tanpa mengira mod pelaksanaannya. Ia membolehkan lokasi fail relatif yang boleh dipercayai, memastikan kefungsian aplikasi.

Atas ialah kandungan terperinci Bagaimana untuk Menentukan Laluan Aplikasi dalam PyInstaller EXE?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan