本文為大家介紹python windows桌面程序開發(fā)(用python開發(fā)桌面應用程序),下面和小編一起看看詳細內(nèi)容吧。
太強了!python 開發(fā)桌面小工具,讓代碼替我們干重復的工作-
決定寫這篇文章的初衷來自于一個小伙伴關(guān)于“如何根據(jù)數(shù)據(jù)源用python自動生成數(shù)據(jù)透視表”的問題。這個問題背后有一個很好的解決方案,讓代碼為我們做重復的工作,從而減少工作量,減少錯誤。
python開發(fā)的小工具,其實就是把python程序打包成一個exe,分享后就可以使用了。即使電腦沒有python環(huán)境,也可以使用。使用代碼提高工作效率,盡量減少加班。
對于工作中的重復性操作,使用供應商名稱、月份、入庫量三個字段生成想要的數(shù)據(jù)透視表格式。
創(chuàng)建桌面窗口,這里使用了tkinter,它是python自帶的gui庫,安裝后即可使用。
使用pyinsatller將程序打包成exe。優(yōu)點是您不需要將代碼部署到服務器??梢灾苯訉⒋虬蟮膃xe發(fā)送給對方,直接使用即可。對這種小巧輕便的功能非常友好。
生成數(shù)據(jù)透視表和過濾數(shù)據(jù)的excel文件,文件名:excel_to_pivot.py
設計桌面窗口函數(shù),文件名:opration.py
如果運行結(jié)果如上,說明代碼沒有問題,可以進行下一步。
打開一個dos窗口,切換到兩個py文件所在的目錄,注意路徑不要有中文。
pyinstaller 指令的常見可選參數(shù):
在當前目錄下,會生成兩個文件夾:build和dist。 dist里面都有可執(zhí)行的exe文件,將快捷方式發(fā)送到桌面,點擊opration.exe運行,可以將其快捷方式發(fā)送到桌面,雙擊即可。
部分小伙伴剛剛安裝好python環(huán)境,可能不存在文件過大的問題。比如我的電腦安裝了很多python依賴包和anaconda,打包后的文件居然有660m,打包時間很長,執(zhí)行的時候還是卡住了。后來整改后縮小到31m,打包速度很快,秒級執(zhí)行。解決方法是在windows系統(tǒng)下安裝python虛擬環(huán)境,前提是電腦上已經(jīng)安裝了python,才能進行下面的操作。
找到python所在的路徑。如果忘記了,可以在電腦左下角搜索【編輯系統(tǒng)環(huán)境變量】——【用戶變量】——【path】找到
虛擬環(huán)境可以理解為python 解釋器的一個副本,你可以在其中安裝私有包而不影響系統(tǒng)上安裝的全局python 解釋器。虛擬環(huán)境對于避免系統(tǒng)的python 解釋器中的包混亂和版本沖突非常有用。
重要的是不同的虛擬環(huán)境可以構(gòu)建不同的python版本,創(chuàng)建時選擇。我們這里需要一個比較“干凈”的python環(huán)境,不需要安裝太多的依賴包,也避免了exe包文件體積過大,所以使用了虛擬環(huán)境。
進入虛擬環(huán)境,可以看到只有幾個默認的python庫
這時候可以測試一下代碼,看是否缺少相關(guān)的依賴。比如我的缺少pandas和openpyxl,可以按照pip install的包名依次安裝。非常重要:必須重新安裝pyinstaller,文件才會縮小。
以上操作完成后,打包就可以了,最后退出虛擬環(huán)境。
退出虛擬環(huán)境
整個自動化思路的實現(xiàn)就完成了。您可以將整個過程應用到您現(xiàn)有的重復性工作中。過程中有兩點需要注意,如下:
盡量不要使用中文路徑,否則會報一些莫名其妙的錯誤。
導入包是為了盡量避免使用import *導入不需要的包,節(jié)省打包和執(zhí)行時間。
讓代碼自動運行,節(jié)省時間,摸魚,玩小游戲,是不是很好~
python可以做桌面應用程序嗎
python可以做桌面應用嗎
python可以做桌面應用!
目前幾個主流的gui平臺有:
1、tkinter:使用tk平臺,支持大部分unix系統(tǒng),可以同時運行在windows和mac下。它是python 的標準接口庫,但由于其界面丑陋和文檔不完善而受到開發(fā)人員的抱怨。
2.wxpython:成熟豐富的包,跨平臺,可以在unix、windows、mac下運行,上手簡單,文檔寫的很詳細,加上官方的demo百科,真正降低了初學者的難度, 并且可以作為入門學習的首選庫。
3、pythonwin:只能在windows上使用,調(diào)用windows的gui。如果你要做一個跨平臺的應用,你顯然不會選擇它。
4、pygtk:使用gtk平臺,在linux系統(tǒng)上使用較多,跨平臺。
5. pyqt:優(yōu)點界面美觀,平臺多,文檔教程豐富。但是商業(yè)使用有版權(quán)問題,需要授權(quán),體積比較大。
更多技巧請關(guān)注python視頻教程。
python適合做桌面程序嗎
其實python并不適合做桌面程序。雖然可以寫gui,但也只是擺設而已。你可以自己玩,但對工作沒用。對于桌面開發(fā),請使用c++ 或c#。
因為c++運行層次低,可以調(diào)用操作系統(tǒng)的底層服務。雖然執(zhí)行效率極高,但是開發(fā)效率低,整體上不太好用。開發(fā)框架包括qt和mfc。通常選擇qt,mfc基本被淘汰了。
而c#是通過.net框架,在虛擬機上,為什么也能調(diào)用底層服務呢?因為它是微軟的官方語言。 windows默認開放了底層接口。
winform可以實例化,直接拖動控件,所見即所得,適合中小型程序。但是偶爾會有大型程序,比如早期的visual studio就是用winform開發(fā)的。
wpf比winform復雜,適用于大中型程序。如3dmax 和autocad 等。
推薦學習《python教程》。
好了,python windows桌面程序開發(fā)(用python開發(fā)桌面應用程序)的介紹到這里就結(jié)束了,想知道更多相關(guān)資料可以收藏我們的網(wǎng)站。