最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python pyinstaller庫(kù)的安裝配置教程分享

 更新時(shí)間:2023年04月25日 09:03:43   作者:余生沒(méi)有余生  
pyinstaller模塊主要用于python代碼打包成exe程序直接使用,這樣在其它電腦上即使沒(méi)有python環(huán)境也是可以運(yùn)行的。本文就來(lái)和大家分享一下pyinstaller庫(kù)的安裝配置教程,希望對(duì)大家有所幫助

簡(jiǎn)要

pyinstaller模塊主要用于python代碼打包成exe程序直接使用,這樣在其它電腦上即使沒(méi)有python環(huán)境也是可以運(yùn)行的。

用法

一.安裝

pyinstaller屬于第三方庫(kù),因此在使用的時(shí)候需提前安裝

pip install pyinstaller

二.配置spec文件

1.配置生成exe程序文件夾

(1)如果不熟悉spec配置內(nèi)容,可以在終端運(yùn)行如下指令生成固定模板

pyinstaller --name myapp main.py  # myapp為生成的spec文件名稱,main.py為打包的文件

(2)運(yùn)行完后我們會(huì)看見如下幾個(gè)文件,dist和build直接刪除即可。我看打開myapp.spec文件可以看見配置信息。

# -*- mode: python ; coding: utf-8 -*-


block_cipher = None


a = Analysis(
    ['main.py','hello.py'],  #注:要打包的模塊,按照先后順序運(yùn)行
    pathex=['C:/Users/pythonProject'],  #注:要打包的Python源代碼的路徑列表。
    binaries=[], 
    datas=[],  #注:要打包的非Python資源(例如圖像、配置文件等)列表。
    hiddenimports=[''requests],  #注:必需的隱藏導(dǎo)入列表,用于告訴PyInstaller找到其他未明確指定的依賴項(xiàng)。
    hookspath=[],  #注:一個(gè)路徑列表,其中包含指定要自定義的鉤子模塊的目錄。
    hooksconfig={},  #注:
    runtime_hooks=[],  #注:用于在應(yīng)用程序運(yùn)行時(shí)運(yùn)行的Python代碼文件列表。
    excludes=[],  #注:不包括在生成的可執(zhí)行文件中的模塊列表
    win_no_prefer_redirects=False,  #注:
    win_private_assemblies=False,
    cipher=block_cipher,  #注:用于加密Python字節(jié)碼的密碼。
    noarchive=False,
)
pyz = PYZ(a.pure, a.zipped_data, cipher=block_cipher)

#注:a.pure: 一個(gè)布爾值,指示是否生成純Python字節(jié)碼。如果為True,則PyInstaller將不包括任何二進(jìn)制文件或庫(kù)。

a.zipped_data: 用于包含OneFile模式下的所有Python腳本和資源的元組。

exe = EXE(
    pyz,  #注:一個(gè)PYZ實(shí)例,其中包含要打包的所有Python腳本和資源。
    a.scripts,  #注:應(yīng)用程序的主Python腳本列表。
    [],
    exclude_binaries=True,
    name='myapp',  #注:生成exe可執(zhí)行文件的名稱
    debug=False,  #注:一個(gè)布爾值,指示是否生成調(diào)試版本的可執(zhí)行文件
    bootloader_ignore_signals=False,  #注:一個(gè)布爾值,指示是否忽略啟動(dòng)加載器的信號(hào)。
    strip=False,  #注:一個(gè)布爾值,指示是否對(duì)可執(zhí)行文件進(jìn)行符號(hào)剝離。
    upx=True,  #注:一個(gè)布爾值,指示是否使用UPX壓縮可執(zhí)行文件
    console=True,  #注:是否開啟dos窗口
    disable_windowed_traceback=False,
    argv_emulation=False,
    target_arch=None,
    codesign_identity=None,
    entitlements_file=None,
   icon:'圖標(biāo).ico'  #注:用戶生成exe文件的封面,后綴必須是ico格式,轉(zhuǎn)換地址:https://convertio.co/zh/download/88c5806204642c8a1c10e65b1bef9b5886f6d8/
)
coll = COLLECT(
    exe,  #注:你的Python腳本生成的可執(zhí)行文件路徑(通常是與spec文件同名的文件)
    a.binaries,  #注:二進(jìn)制對(duì)象列表,表示其他相關(guān)二進(jìn)制文件的位置以及將它們復(fù)制到輸出目錄的相對(duì)路徑。例如,如果您的應(yīng)用程序需要音頻或圖像文件,則可以使用此參數(shù)將其包含在可執(zhí)行文件中。
    a.zipfiles,  #注:壓縮文件列表,表示應(yīng)該從zip文件中提取哪些文件并將它們放入輸出目錄。這對(duì)于打包一些必需的庫(kù)或數(shù)據(jù)文件非常有用。
    a.datas,  #注:數(shù)據(jù)文件列表,這些文件不應(yīng)被壓縮,但應(yīng)該被復(fù)制到輸出目錄中。例如,這可能包括配置文件、模板文件或其他類型的文本文件。
    strip=False,  #注:是否從可執(zhí)行文件和庫(kù)中去除調(diào)試信息。默認(rèn)情況下為True,這將減小文件大小,但會(huì)使得調(diào)試更加困難。
    upx=True,  #注:是否使用UPX來(lái)壓縮可執(zhí)行文件和庫(kù)。默認(rèn)情況下為False,因?yàn)閁PX可能會(huì)導(dǎo)致某些文件無(wú)法正常工作。
    upx_exclude=[],  #注:
    name='myapp',  #注:打包文件夾名稱。
)

(3)通常我們只需要配置需要打包的模塊+pathex+生成exe文件的名稱+exe存在目錄的名稱,配置完后直接在終端輸入指令進(jìn)行打包。

pyinstaller  myapp.spec

(4)打包完成后在項(xiàng)目所在目錄下可以看下dist文件,dist文件下一目錄就是打包文件夾,文件夾下面就是所在的程序。這里需要注意的是,因?yàn)槲覀兇虬氖俏募A,因此發(fā)給別人使用的時(shí)候,因把整個(gè)文件夾發(fā)過(guò)去,才能正確運(yùn)行。

 (5)配置要打包的模塊,若模塊之間存在import連接,可直接打包最終(main)運(yùn)行的那個(gè)模塊即可,pyinstaller會(huì)默認(rèn)把main涉及的impor(.py+第三方庫(kù))全部一起打包。若兩個(gè)py模塊相互沒(méi)有任何關(guān)聯(lián),這個(gè)時(shí)候可以打包多個(gè)。

2.配置生成獨(dú)立的exe文件

(1)這里和上面步驟一樣,先生成模板

pyinstaller -F main.py

(2)模板大概樣式如下,字段意思和上面一致。

# -*- mode: python ; coding: utf-8 -*-


block_cipher = None


a = Analysis(
    ['main.py'],
    pathex=[],
    binaries=[],
    datas=[],
    hiddenimports=[],
    hookspath=[],
    hooksconfig={},
    runtime_hooks=[],
    excludes=[],
    win_no_prefer_redirects=False,
    win_private_assemblies=False,
    cipher=block_cipher,
    noarchive=False,
)
pyz = PYZ(a.pure, a.zipped_data, cipher=block_cipher)

exe = EXE(
    pyz,
    a.scripts,
    a.binaries,
    a.zipfiles,
    a.datas,
    [],
    name='hello',
    debug=False,
    bootloader_ignore_signals=False,
    strip=False,
    upx=True,
    upx_exclude=[],
    runtime_tmpdir=None,
    console=True,
    disable_windowed_traceback=False,
    argv_emulation=False,
    target_arch=None,
    codesign_identity=None,
    entitlements_file=None,
)

(3)配置完成后終端運(yùn)行指令打包,打包完成后會(huì)看見dist目錄下只有一個(gè)exe文件。

pyinstaller  myapp.spec

除了配置spec文件,還可以直接通過(guò)pyinstaller指令來(lái)直接打包,這里就不做多介紹了

到此這篇關(guān)于Python pyinstaller庫(kù)的安裝配置教程分享的文章就介紹到這了,更多相關(guān)Python pyinstaller庫(kù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Django全局啟用登陸驗(yàn)證login_required的方法

    Django全局啟用登陸驗(yàn)證login_required的方法

    這篇文章主要介紹了Django全局啟用登陸驗(yàn)證login_required的方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-06-06
  • python將紅底證件照轉(zhuǎn)成藍(lán)底的實(shí)現(xiàn)方法

    python將紅底證件照轉(zhuǎn)成藍(lán)底的實(shí)現(xiàn)方法

    這篇文章主要介紹了python將紅底證件照轉(zhuǎn)成藍(lán)底,本文給大家分享四種方法通過(guò)示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-08-08
  • python自動(dòng)化神器pyautogui使用步驟

    python自動(dòng)化神器pyautogui使用步驟

    這篇文章主要給大家介紹了關(guān)于python自動(dòng)化神器pyautogui使用步驟的相關(guān)資料,在Python當(dāng)中不僅代碼簡(jiǎn)單,而且有著非常豐富的模塊,pyautogui就可以稱之為自動(dòng)化操作的"神器",需要的朋友可以參考下
    2023-07-07
  • 深度定制Python的Flask框架開發(fā)環(huán)境的一些技巧總結(jié)

    深度定制Python的Flask框架開發(fā)環(huán)境的一些技巧總結(jié)

    現(xiàn)在越來(lái)越多的人使用virtualenv虛擬環(huán)境部署Python項(xiàng)目,包括針對(duì)框架的實(shí)例文件夾與版本控制布置,這里我們就來(lái)整理關(guān)于深度定制Python的Flask框架開發(fā)環(huán)境的一些技巧總結(jié)
    2016-07-07
  • numpy matrix和array的乘和加實(shí)例

    numpy matrix和array的乘和加實(shí)例

    今天小編就為大家分享一篇numpy matrix和array的乘和加實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-06-06
  • python進(jìn)階之魔術(shù)方法詳解

    python進(jìn)階之魔術(shù)方法詳解

    這篇文章主要為大家介紹了python進(jìn)階之魔術(shù)方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助
    2022-01-01
  • Python接口自動(dòng)化之淺析requests模塊post請(qǐng)求

    Python接口自動(dòng)化之淺析requests模塊post請(qǐng)求

    這篇文章Python接口自動(dòng)化之淺析requests模塊post請(qǐng)求,以下主要介紹requests模塊中的post請(qǐng)求的使用,post源碼,data、json參數(shù)應(yīng)用場(chǎng)景及實(shí)戰(zhàn)
    2021-08-08
  • python dict 相同key 合并value的實(shí)例

    python dict 相同key 合并value的實(shí)例

    今天小編就為大家分享一篇python dict 相同key 合并value的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-01-01
  • 對(duì)python3 urllib包與http包的使用詳解

    對(duì)python3 urllib包與http包的使用詳解

    今天小編就為大家分享一篇對(duì)python3 urllib包與http包的使用詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-05-05
  • python+pygame簡(jiǎn)單畫板實(shí)現(xiàn)代碼實(shí)例

    python+pygame簡(jiǎn)單畫板實(shí)現(xiàn)代碼實(shí)例

    這篇文章主要介紹了python+pygame簡(jiǎn)單畫板實(shí)現(xiàn)代碼實(shí)例,具有一定借鑒價(jià)值,需要的朋友可以參考下。
    2017-12-12

最新評(píng)論

明水县| 德安县| 陆丰市| 临沂市| 藁城市| 桦南县| 井冈山市| 邢台市| 都兰县| 姜堰市| 唐河县| 昌平区| 正镶白旗| 正蓝旗| 宜昌市| 保德县| 宜宾市| 永胜县| 璧山县| 鹿邑县| 景德镇市| 林西县| 闽侯县| 临夏市| 资源县| 福贡县| 蚌埠市| 布尔津县| 东方市| 大名县| 龙口市| 陇川县| 武穴市| 方正县| 临湘市| 吉隆县| 绥滨县| 五大连池市| 淮北市| 滨海县| 龙口市|