python打包
A. 如何將python文件打包成exe文件
1.需要安裝 py2exe
2.示例代碼:
#exetest.py#創建一個gui界面,只用一個標簽和按鈕,無功能from Tkinter import *win = Tk()
label = Label(win,text = 'hello')
btn = Button(win,text = 'click')
label.pack()
btn.pack()
win.mainloop()
3.配置代碼:
#exeset.pyfrom distutils.core import setupimport py2exe
setup(console=["exetest.py"]) #運行的時候會有CMD窗口#或者setup(windows=["exetest.py"]) 運行的時候只有GUI
4.執行轉換
首先定位到文件目錄,然後運行CMD
python exeset.py py2exe
執行完畢之後會在該目錄中生成一個文件夾dist,裡面是生成的exe程序和相關依賴
5.使用pyinstaller
感覺pyinstaller比py2exe更好用,下載pyinstaller後解壓就好,然後把一個demo.py復制到目錄下,定位到位置後輸入命令:
python pyinstaller.py --onefile --windowed --icon=path\x.ico demo.py
其中 --onefile 表示只生成一個.exe文件,相關依賴都打包了, --windowed 表示生成的是GUI,否則是帶命令窗口的, --icon 是設置.exe的圖標。這些都是可選項。
B. 如何將一整個python工程打包
1、下載並安裝py2exe,可下載最新版本。
2、編寫安裝腳本,比較簡單,不過多解釋,如下:
Screenshot_setup.py
#!/usr/bin/env python
# -*- coding: utf-8 -*-
from distutils.core import setup
import py2exe
includes = ["encodings", "encodings.*"]
data_files = ['CameraDll.dll']
options = {"py2exe":
{ "compressed": 1,
"optimize": 2,
"bundle_files": 1,
"includes": includes
}
}
setup(
version = "1.0",
description = "Screenshot Tool",
name = "Screenshot Tool",
options = options,
zipfile=None,
data_files = data_files,
console=[{"script": "Screenshot.py", "icon_resources": [(1, "Screenshot.ico")] }]
)
各參數含義見第5小節或執行python命令行下執行help(py2exe)查看。
3、打包程序:
a、將要找包的程序、文件和打包腳本放在同一目錄下,如下:
E:\tmp\pyexe_tmp>tree /F
文件夾 PATH 列表
卷序列號碼為 0007F240 101F:F68D
E:.
CameraDll.dll
screenshot.ico
Screenshot.py
screenshot_setup.py
沒有子文件夾
E:\tmp\pyexe_tmp>
b、執行打包腳本:
E:\tmp\pyexe_tmp>python screenshot_setup.py py2exe
python screenshot_setup.py py2exe
running py2exe
creating E:\tmp\pyexe_tmp\build
creating E:\tmp\pyexe_tmp\build\bdist.win32
creating E:\tmp\pyexe_tmp\build\bdist.win32\winexe
creating E:\tmp\pyexe_tmp\build\bdist.win32\winexe\collect-2.6
creating E:\tmp\pyexe_tmp\build\bdist.win32\winexe\bundle-2.6
creating E:\tmp\pyexe_tmp\build\bdist.win32\winexe\temp
creating E:\tmp\pyexe_tmp\dist
*** searching for required moles ***
*** parsing results ***
*** finding dlls needed ***
*** create binaries ***
*** byte compile python files ***
writing byte-compilation script 'e:\tmp\tmp1ecbcw.py'
C. python怎麼把軟體打包出來
Python是純粹的自由軟體,具有豐富和強大的庫。能夠把用其他語言製作的各種模塊很輕松地聯結在一起。常見的一種應用情形是,使用Python快速生成程序的原型(有時甚至是程序的最終界面),然後對其中有特別要求的部分,用更合適的語言改寫
如何將python程序打包為exe
但是由於Python是一種解釋性語言,不具有Windows可執行程序的已編譯完成的二進制特性,所以要執行一個Python腳本,需要使用Python.exe來進行解釋執行,如果要單獨使得Python腳本具有exe程序的特性,需要使用第三方工具,即將Python腳本打包轉換,此處以py2exe工具來進行說明
如何將python程序打包為exe
py2exe是一個將python腳本轉換成windows上的可獨立執行的可執行程序(*.exe)的工具,這樣,你就可以不用裝python而在windows系統上運行這個可執行程序。py2exe需要到相關網站去下載安裝,需要注意的是安裝時一定要對應你的系統已安裝的Python版本
如何將python程序打包為exe
具體用法為,假設有一個helloworld.py的python腳本,把其轉換為獨立運行的exe程序,並運行在沒有安裝python的windows系統上。那麼首先要做的是寫一個用於發布程序的設置腳本例如mysetup.py,在其中的setup函數前插入語句import py2exe
如何將python程序打包為exe
示例腳本:#mysetup.py
from distutils.core import setup
import py2exe
setup(console=["helloworld.py"])
然後在命令行中執行如下語句:
python mysetup.py py2exe
如何將python程序打包為exe
以上命令執行完成後,會產生一個名為dist的子目錄,其中包含了helloworld.exe,python24.dll,library.zip這些文件。具體發布時要將這個目錄中的文件一起打包發布,在沒有安裝Python的Windows系統中直接運行helloworld.exe即可
如何將python程序打包為exe
7
以上的mysetup.py腳本創建了一個控制台的helloword.exe程序,如果需要創建圖形用戶界面的程序,只需要將mysetup.py中的console=["helloworld.py"]替換為windows=["myscript.py"]既可;另外需要注意的是,py2exe一次能夠創建多個exe文件,僅需要將這些腳本文件的列表傳遞給console或windows的關鍵字參數
D. python 程序怎麼打包發布
發布自己的python包
1. 首先先去PyPI注冊帳號
2. 配置~/.pypirc如下:
[distutils]
index-servers =
pypi
pypitest
[pypi]
username:ShaoZhengjiang
password:mypassword
[pypitest]
username:ShaoZhengjiang
password:mypassword
3. 然後注冊並上傳自己的包到測試伺服器
pypi提供了一個測試伺服器,我們可以在這個測試伺服器上做測試。
python setup.py register -r pypitest
然後
python setup.py sdist upload -r pypitest
若沒有問題我們應該不會得到任何錯誤。
4. 上傳至PyPI
若上面的測試成功,我們就可以按照相同的步驟將包注冊並上傳。
python setup.py register -r pypi
python setup.py sdist upload -r pypi
Ok,之後我們就可以在PyPI上看到我們自己的包了。(https://pypi.python.org/pypi/vaspy/)
E. 怎麼將多個python打包成exe文件
1、安裝pywin32,可以參考《怎麼給python安裝pywin32模塊?》,一定要注意對應的python版本,否則不能安裝。
F. 如何將python工程打包為exe
安裝完pyinstaller之後就可以開始了。
1.使用pyinstaller生成可執行文件的方法
1.1 將依賴文件集中到一個文件夾:
pyinstaller -D -w main.py #把main.py替換成你的主入口python文件即可。
-w參數代表main.py是一個窗體程序。
1.2 將所有依賴文件都打包到同一個可執行文件中:
pyinstaller -F -w main.py
2.調查pyinstaller生成程序的載入過程
使用如下命令,可以得到運行時的跟蹤,tracing ,loader 的載入過程。
pyinstaller -Fwd aui.py #把aui.py 換成你需要偵測的文件即可。
G. 如何打包python文件
最近寫了一個小小的程序,需要進行封裝exe,為了簡單,就直接用了pyinstaller這個模塊,對於python3.6版本的童鞋來說,簡直方便的不要。下面就給大家介紹一下如何用pyinstaller去封裝程序為exe程序。
首先,需要安裝一下pip這個應用,這個已經在前面的文章中說過了,windows和linux都有請借鑒windows和linux。
第二步,安裝好pip之後,在cmd命令窗口中輸入pip install pyinstaller即能安裝上pyinstaller,那麼接下來要介紹一下關於pyinstaller幾個指令了:
-w指令
直接發布的exe應用帶命令行調試窗口,在指令內加入-w命令可以屏蔽;
-F指令
注意指令區分大小寫。這里是大寫。使用-F指令可以把應用打包成一個獨立的exe文件,否則是一個帶各種dll和依賴文件的文件夾;
-p指令
這個指令後面可以增加pyinstaller搜索模塊的路徑。因為應用打包涉及的模塊很多。這里可以自己添加路徑。不過經過筆者測試,site-packages目錄下都是可以被識別的,不需要再手動添加。
那麼通常是使用-F指令,使用的語法是:pyinstaller -F (python程序名稱).py
H. vs2017如何打包python項目,生成exe文件
可以使用PyInstaller把python程序打包成exe,安裝使用pip install pyinstaller,使用時,使用pyinstaller打包,參數如下
-F, –onefile 打包一個單個文件,如果你的代碼都寫在一個.py文件的話,可以用這個,如果是多個.py文件就別用
-D, –onedir 打包多個文件,在dist中生成很多依賴文件,適合以框架形式編寫工具代碼,我個人比較推薦這樣,代碼易於維護
-K, –tk 在部署時包含 TCL/TK
-a, –ascii 不包含編碼.在支持Unicode的python版本上默認包含所有的編碼.
-d, –debug 產生debug版本的可執行文件
-w,–windowed,–noconsole 使用Windows子系統執行.當程序啟動的時候不會打開命令行(只對Windows有效)
-c,–nowindowed,–console
使用控制檯子系統執行(默認)(只對Windows有效)
pyinstaller -c xxxx.py
pyinstaller xxxx.py --console
-s,–strip 可執行文件和共享庫將run through strip.注意Cygwin的strip往往使普通的win32 Dll無法使用.
-X, –upx 如果有UPX安裝(執行Configure.py時檢測),會壓縮執行文件(Windows系統中的DLL也會)(參見note)
-o DIR, –out=DIR 指定spec文件的生成目錄,如果沒有指定,而且當前目錄是PyInstaller的根目錄,會自動創建一個用於輸出(spec和生成的可執行文件)的目錄.如果沒有指定,而當前目錄不是PyInstaller的根目錄,則會輸出到當前的目錄下.
-p DIR, –path=DIR 設置導入路徑(和使用PYTHONPATH效果相似).可以用路徑分割符(Windows使用分號,Linux使用冒號)分割,指定多個目錄.也可以使用多個-p參數來設置多個導入路徑,讓pyinstaller自己去找程序需要的資源
–icon=<FILE.ICO>
將file.ico添加為可執行文件的資源(只對Windows系統有效),改變程序的圖標 pyinstaller -i ico路徑 xxxxx.py
–icon=<FILE.EXE,N> 將file.exe的第n個圖標添加為可執行文件的資源(只對Windows系統有效)
-v FILE, –version=FILE 將verfile作為可執行文件的版本資源(只對Windows系統有效)
-n NAME, –name=NAME 可選的項目(產生的spec的)名字.如果省略,第一個腳本的主文件名將作為spec的名字