當前位置:首頁 » 編程語言 » python寫桌面程序

python寫桌面程序

發布時間: 2023-05-29 07:56:51

python如何進行桌面開發有哪些資料可供參考

這里介紹3個python桌面開發的包,分別是tkinter,wxpython和pyqt,這3個包都可以快速的開發出桌面應用,下面我簡單介紹一下這3個包的安裝和使用,實驗環境win10+python3.6+pycharm5.0,主要內容如下:

1.tkinter:這個是python自帶的開發桌面GUI的標准庫,不需要安裝,跨平台、可移植性高,支持主流的操作系統,像Windows,linux,Mac等,python自帶的IDLE就是採用這個包開發,簡單易學,容易上手,適合小型項目的開發,入門GUI開發的話,可以試一下這個包,官網資料https://docs.python.org/2/library/tkinter.html:

程序運行如下:

2.wxpython:這是python一個優秀、成熟的跨平台GUI包,但不是自帶的標准庫,需要單獨安裝,支持的組件眾多,可以幫助程序員快速的創建功能齊全、界面友好的GUI界面,應用廣泛,非常適合中小型項目的開發,官網資料https://docs.wxpython.org/,可以參考學習一下,下面我簡單介紹一下安裝和使用:

安裝,這里直接在cmd窗口輸入命令「pip install wxpython」就行,如下:

安裝成功後,就可以進行簡單的測試了,代碼如下,一個簡單編輯器:

程序運行截圖如下:

3.pyqt:這個是Qt提供給python的一個介麵包,Qt功能強大,組件眾多,可以快速構建用戶GUI界面,所以pyqt的功能也十分強大,藉助於Qt,我們可以構建桌面應用,下面我簡單介紹一下pyqt的安裝和使用,官網資料http://pyqt.sourceforge.net/Docs/PyQt5/:

安裝pyqt5,這個直接在cmd窗口輸入「pip install pyqt5」就行,如下:

測試代碼如下,一個簡單的計算器:

程序運行截圖如下:

當然,你也可以藉助designer.exe直接拖拽控制項,完成GUI界面開發,如下,最後打包成py文件就行:

目前,就介紹這3個包吧,網上也有許多這方面的教程,感興趣的話,可以搜搜,希望以上分享的內容能對你有所幫助吧。

② Python程序代碼混淆、編譯、打包、運行(桌面程序防破解向)

像Python這種解釋性的語言,要想私有化部署的同時又保護好源碼,就像是對於魚和熊掌的追求。

雖然做不到盡善盡美,但是對代碼進行混淆,增加一點破解的難度,或許能規避一些泄露的風險。

本次演示環境:linux

確保要發布的包根目錄("demo")中有__main__.py文件,這個是程序執行入口。

編譯

批量改名.pyc文件

移動.pyc文件

清理.py文件

清理__pycache__文件夾

打包成zip

運行時只要將zip文件作為參數即可

最終整合腳本

調用方式

對於在變數和函數名上的混淆有點小兒科,而對於跨文件的類名的混淆又太容易實現。

所以對於混淆程度的取捨,要視工程的規模而定。

2.1 混淆工具pyminifier

在原來的工具 pyminifier上修復了幾個bug。

安裝:

python3 安裝

或者clone下來,自行安裝

使用例子

2.2 源碼變更

不同的配置對於源碼的要求不同,以下是筆者踩過的坑。

其他混淆想法

結合混淆、編譯和打包,嘗試出以下發布腳本。

主要的思路 :創建一個工作目錄tmp,然後在此目錄下混淆、編譯python代碼,完成後把內容打包成pyc文件,再將pyc文件和其他配置文件移動到dist,發布dist即可。

混淆的目的是最大程度保護源碼,在發布到客戶端後不被輕易破解。

③ 太強了!Python 開發桌面小工具,讓代碼替我們乾重復的工作-

決定寫這篇文章的初衷是來源於一位小夥伴的問題,關於"如何根據數據源用 Python 自動生成透視表",這個問題背後有個非常好的解決思路,讓代碼替我們做重復的工作,從而減輕工作量,減少出段拍錯。

Python 開發的小工具實際上是將 Python 程序打包成 exe,分享即可用,即便電腦沒有安裝 Python 環境,也可以使用,用代碼提高工作效率,盡量少加班。

將工作中重復性的操作,利用供應商名稱,月份,入庫金額三個欄位來生成想要的透視表格式。

創建桌面窗口,這里使用 tkinter,它是 Python 自帶的 GUI 庫,安裝後即可使用。

使用 pyinsatller 將程序打包成 exe,好處是不需要將代碼部署到伺服器,直接將打包好的 exe 發給對握輪羨方,就能直接使用,對於這種小而輕的功能非常友好。

Excel 文件生成透視表和篩選數據,文件名:excel_to_pivot.py

設計桌面窗口功能,文件名:opration.py

如果運行結果如上,說明代碼沒有問題了,可以進行下一步。

打開 DOS 窗口並切換到 兩個 py 文件所在的目錄,注意路徑中不要有中文。

pyinstaller 指令的常見可選桐攜參數:

在當前的目錄下,將會生成兩個文件夾:build 和 dist。dist 裡面就是所有可執行 exe 文件,發送快捷方式到桌面,點擊 opration.exe 就能運行了,可以發它的快捷方式發送到桌面,雙擊就可以。

有的夥伴 Python 環境剛安裝沒多久,可能不存在這個文件過大的問題。像我的電腦里安裝了 Python 很多的依賴包和 anaconda 等等,打包出來的文件居然 660M,打包時間長,執行時還卡,後來經過整改縮小到 31M,打包快,秒級執行。解決方案是在 Windows 系統下安裝一個 Python 的虛擬環境,前提是已經在電腦上安裝過 Python 才可以進行如下操作。

找到 Python 所在路徑,如果忘記了,可以在電腦左下角搜索【編輯系統環境變數】——【用戶變數】——【PATH】中找到

虛擬環境可以理解為是 Python 解釋器的一個副本,在這個環境你可以安裝私有包,而且不會影響系統中安裝的全局 Python 解釋器。虛擬環境非常有用,可以在系統的 Python 解釋器中避免包的混亂和版本的沖突。

重要是不同虛擬環境可以搭建不同的 Python 版本,創建時候選擇,我們這里需要一個相對 "干凈" 的 Python 環境,沒有安裝過多依賴包,避免 exe 打包文件過大,所以用到虛擬環境。

進入虛擬環境,可以看到只有幾個默認的 Python 庫

這時可以測試一下代碼,是否缺少相關依賴,比如我這個缺少 Pandas,openpyxl,依次按照 pip install 包名安裝即可,非常重要的點:pyinstaller 必須重新安裝,文件才會縮小。

上述操作完成後,打包就可以了,最後退出虛擬環境即可。

退出虛擬環境

整個自動化思路的實現就完成了,大家可以將整個流程套用到你現有的重復性工作中,在過程中有兩個需要注意的點,如下:

盡量不要用中文路徑,要不會報些莫名其妙的錯誤。

導包是盡量避免使用 import * 導入不必要的包,節省打包和執行時間。

讓代碼自動工作,省下來的時間,摸摸魚,打打小 游戲 不好么~

④ python可以做桌面應用嗎

不是不行,但Python的特長是數據分析和人工智慧,做桌面應用不是長項。做桌面應用最好用C#.net來做。

⑤ python用來開發桌面軟體可有什麼不錯的框架

在web開發方面,有從輕到重量級不同的很多框架,比如web.py, Django, TurboGears, Zope等,其中Zope已經達到了企業級應用的量級
桌面程序:wxPython和py2exe都是開源免費軟體,pyQt4 等常用的。

⑥ python開發的桌面軟體有哪些

有很多可以用,最流行的幾個是:

  1. tkinter, python 自帶的,跨平台 GUI包, 你可以去優酷(莫煩 tkinter) 學習下怎麼用 tkinter.

  2. pyqt, 這個是可以用起來簡單一點,但是學起來可能要花點時間.(適合有一定python基礎的)

  3. Kivy, 這個還可以編安卓的哦.(適合有一定python基礎的)

  4. wxPython, 這個也不錯.(適合有一定python基礎的)

⑦ 寫windows桌面應用程序學python還是c#想平時寫一些小工具什麼的自己使用。

只能用.net(其它的包括VC++或者Delphi,VB也是可以的),而且python也是解釋型的語言,效率要比.net低的多。(桌面應用方面,用java也是不行的,如果要求稍高的話)

⑧ 為什麼用Python開發桌面應用程序

python是腳本語言,其實一般是開發網頁和人工智慧用得較多。但是既然你這么問了我也就說說我個人的看法吧。

第一,python的最大優勢之一就是因為它的開發速度很快,代碼量少,開發簡單的程序自然是最好的。
其次,它不僅有第三方GUI庫,也有標准庫里專為快速開發GUI設計的Tkinter,但是由於是腳本語言,都要用第三方工具例如py2exe來轉換成可執行文件

熱點內容
2021款es升級了哪些配置 發布:2024-03-28 21:26:44 瀏覽:383
下述調度演算法 發布:2024-03-28 21:22:24 瀏覽:615
捷達哪個配置裝有esp 發布:2024-03-28 21:17:41 瀏覽:195
天氣源碼 發布:2024-03-28 21:14:11 瀏覽:427
使命召喚紅魔浪潮如何配置 發布:2024-03-28 21:13:08 瀏覽:545
nginx安裝php 發布:2024-03-28 21:09:47 瀏覽:666
利用python進行數據分析pdf 發布:2024-03-28 20:33:36 瀏覽:560
php模擬post提交 發布:2024-03-28 20:23:14 瀏覽:542
phptxt下載 發布:2024-03-28 20:12:37 瀏覽:476
如何更衣櫃密碼鎖密碼設置 發布:2024-03-28 19:42:09 瀏覽:484