Win下PyInstaller 安裝和使用教程
簡介:
PyInstaller可以將Python源代碼發(fā)布成Win/MacOS等系統(tǒng)中的可執(zhí)行文件。對開發(fā)者而言隱藏了源碼實(shí)現(xiàn),保護(hù)了知識產(chǎn)權(quán)。對使用者而言不用裝環(huán)境,傻瓜式的雙擊就可以運(yùn)行程序。
PyInstaller常見命令:
如下所示:

命令 說明-F生成單個(gè)可執(zhí)行文件-D –onedir創(chuàng)建一個(gè)目錄,包含exe文件,但會(huì)依賴很多文件(默認(rèn)選項(xiàng))-w表示去掉控制臺窗口,這在GUI界面時(shí)非常有用。不過如果是命令行程序的話那就把這個(gè)選項(xiàng)刪除吧-c –console, –nowindowed使用控制臺,無界面(默認(rèn))-p自定義需要加載的類路徑,一般情況下用不到-i可執(zhí)行文件的圖標(biāo)-v查看版本信息-h查看幫助信息
安裝PyInstaller:
流程如下所示:
1.下載PyInstaller,這里我選擇的是PyInstaller-3.5.tar.gz版本。如圖所示:

2.解壓PyInstaller-3.5.tar.gz到桌面;然后在setup.py文件所在的目錄處打開cmd。如圖所示:
3.
由于python3.7.4在安裝時(shí)順帶安裝了setuptools,所以我們可以直接使用"python setup.py install"命令來安裝PyInstaller;然后使用"pyinstaller -v"查看版本信息來驗(yàn)證是否安裝成功。如圖所示:

使用PyInstaller:
流程如下所示:
1.我現(xiàn)在需要對test/app.py文件生成一個(gè)具有test/app.ico圖標(biāo)樣式的可執(zhí)行文件app.exe。此時(shí)就需要在app.py所在目錄打開cmd;然后執(zhí)行"pyinstaller -F -w -i app.ico app.py"命令來生成可執(zhí)行文件app.exe。
app.py源碼如下所示:
參考pyqt5-win安裝和使用來設(shè)置pyqt5的環(huán)境。
#!/usr/bin/python3
# -*- coding: utf-8 -*-
"""
Py40 PyQt5 tutorial
In this example, we create a bit
more complicated window layout using
the QGridLayout manager.
author: Jan Bodnar
website: py40.com
last edited: January 2015
"""
import sys
from PyQt5.QtWidgets import (QWidget, QLabel, QLineEdit,
QTextEdit, QGridLayout, QApplication)
class Example(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
title = QLabel('Title')
author = QLabel('Author')
review = QLabel('Review')
titleEdit = QLineEdit()
authorEdit = QLineEdit()
reviewEdit = QTextEdit()
grid = QGridLayout()
grid.setSpacing(10)
grid.addWidget(title, 1, 0)
grid.addWidget(titleEdit, 1, 1)
grid.addWidget(author, 2, 0)
grid.addWidget(authorEdit, 2, 1)
grid.addWidget(review, 3, 0)
grid.addWidget(reviewEdit, 3, 1, 5, 1)
self.setLayout(grid)
self.setGeometry(300, 300, 350, 300)
self.setWindowTitle('Review')
self.show()
if __name__ == '__main__':
app = QApplication(sys.argv)
ex = Example()
sys.exit(app.exec_())
命令執(zhí)行如圖所示:

2.使用PyInstaller成功發(fā)布可執(zhí)行文件后,會(huì)在app.py文件所在的目錄中生成__pycache__,build,dist,app.spec等文件或者目錄。其中dist目錄中會(huì)存在一個(gè)具有app.ico樣式的可執(zhí)行文件app.exe,此時(shí)直接雙擊app.exe就可以執(zhí)行了。如圖所示:

總結(jié)
以上所述是小編給大家介紹的Win下PyInstaller 安裝和使用教程,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!
相關(guān)文章
Python?threading中l(wèi)ock的使用詳解
Lock類是threading中用于鎖定當(dāng)前線程的鎖定類,本文給大家介紹了Python?threading中l(wèi)ock的使用,需要的朋友可以參考下2022-11-11
Matplotlib直方圖繪制中的參數(shù)bins和rwidth的實(shí)現(xiàn)
本文主要介紹了Matplotlib直方圖繪制中的參數(shù)bins和rwidth的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-02-02
Pandas聚合運(yùn)算和分組運(yùn)算的實(shí)現(xiàn)示例
這篇文章主要介紹了Pandas聚合運(yùn)算和分組運(yùn)算的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-10-10
Python中dictionary items()系列函數(shù)的用法實(shí)例
這篇文章主要介紹了Python中dictionary items()系列函數(shù)的用法,很實(shí)用的函數(shù),需要的朋友可以參考下2014-08-08
Python定時(shí)查詢starrocks數(shù)據(jù)庫并將結(jié)果保存在excel
這篇文章主要為大家詳細(xì)介紹了Python如何實(shí)現(xiàn)定時(shí)查詢starrocks數(shù)據(jù)庫并將結(jié)果保存在excel,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以參考一下2025-03-03
Python入門Anaconda和Pycharm的安裝和配置詳解
這篇文章主要介紹了Python入門Anaconda和Pycharm的安裝和配置詳解,文章通過圖文介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07

