獲取python生成exe釋放出來(lái)的文件路徑

admin Python評(píng)論279字?jǐn)?shù) 1054閱讀模式

當(dāng)使用Python的`pyinstaller`庫(kù)將Python腳本打包成可執(zhí)行文件(.exe)時(shí),可以使用`sys._MEIPASS`變量來(lái)獲取可執(zhí)行文件釋放出來(lái)的文件路徑。下面是一個(gè)示例代碼:

import sys
import os

# 獲取可執(zhí)行文件的路徑
exe_path = sys.executable

# 獲取可執(zhí)行文件所在的目錄
exe_dir = os.path.dirname(exe_path)

# 獲取釋放出來(lái)的文件路徑
release_file_path = os.path.join(exe_dir, "path/to/release/file")

# 打印釋放出來(lái)的文件路徑
print(release_file_path)

在上面的代碼中,`sys.executable`變量用于獲取當(dāng)前可執(zhí)行文件的路徑。然后,使用`os.path.dirname()`函數(shù)獲取可執(zhí)行文件所在的目錄。最后,使用`os.path.join()`函數(shù)將釋放出來(lái)的文件路徑與可執(zhí)行文件所在目錄拼接起來(lái)。文章源自網(wǎng)吧系統(tǒng)維護(hù)-http://www.strong-digital.cn/10770.html

請(qǐng)注意,`sys._MEIPASS`變量也可以用于獲取可執(zhí)行文件釋放出來(lái)的文件路徑。但是,`sys._MEIPASS`變量在某些情況下可能不可用,因此推薦使用上述方法來(lái)獲取釋放出來(lái)的文件路徑。文章源自網(wǎng)吧系統(tǒng)維護(hù)-http://www.strong-digital.cn/10770.html

第二種方法:

在使用`pyinstaller`等工具進(jìn)行打包時(shí),可以通過(guò)`sys._MEIPASS`來(lái)獲取`--add-data`參數(shù)指定的文件釋放出來(lái)的路徑。文章源自網(wǎng)吧系統(tǒng)維護(hù)-http://www.strong-digital.cn/10770.html

以下是一個(gè)示例代碼:文章源自網(wǎng)吧系統(tǒng)維護(hù)-http://www.strong-digital.cn/10770.html

import sys
import os

# 獲取打包釋放出來(lái)的路徑
base_path = getattr(sys, '_MEIPASS', os.path.dirname(os.path.abspath(__file__)))

# 添加--add-data參數(shù)指定的文件路徑
data_path = os.path.join(base_path, 'data')

# 輸出文件路徑
print("文件路徑:", data_path)

在這個(gè)示例中,我們使用`getattr(sys, '_MEIPASS', os.path.dirname(os.path.abspath(__file__)))`來(lái)獲取打包釋放出來(lái)的路徑。如果`sys._MEIPASS`存在,則返回該路徑,否則返回腳本所在的目錄。文章源自網(wǎng)吧系統(tǒng)維護(hù)-http://www.strong-digital.cn/10770.html

然后,我們使用`os.path.join()`函數(shù)將`data`文件夾與打包釋放出來(lái)的路徑拼接在一起,得到最終的文件路徑。文章源自網(wǎng)吧系統(tǒng)維護(hù)-http://www.strong-digital.cn/10770.html

這樣,你就可以獲取到`--add-data`參數(shù)指定的文件釋放出來(lái)的路徑了。文章源自網(wǎng)吧系統(tǒng)維護(hù)-http://www.strong-digital.cn/10770.html

希望對(duì)你有所幫助!文章源自網(wǎng)吧系統(tǒng)維護(hù)-http://www.strong-digital.cn/10770.html

 文章源自網(wǎng)吧系統(tǒng)維護(hù)-http://www.strong-digital.cn/10770.html 文章源自網(wǎng)吧系統(tǒng)維護(hù)-http://www.strong-digital.cn/10770.html

版權(quán)聲明:文章圖片資源來(lái)源于網(wǎng)絡(luò),如有侵權(quán),請(qǐng)留言刪除!!!
廣告也精彩
admin
  • 本文由 發(fā)表于 2023年7月19日 22:00:08
  • 轉(zhuǎn)載請(qǐng)務(wù)必保留本文鏈接:http://www.strong-digital.cn/10770.html
匿名

發(fā)表評(píng)論

匿名網(wǎng)友 填寫(xiě)信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: