wxpython tkinter python如何進(jìn)行桌面開(kāi)發(fā)有哪些資料可供參考
夕逆IT
- 開(kāi)發(fā)語(yǔ)言
- 2023-08-13
- 78

大家好,今天來(lái)為大家分享wxpython tkinter的一些知識(shí)點(diǎn),和python如何進(jìn)行桌面開(kāi)發(fā)有哪些資料可供參考的問(wèn)題解析,大家要是都明白,那么可以忽略,如果不太...
大家好,今天來(lái)為大家分享wxpython tkinter的一些知識(shí)點(diǎn),和python如何進(jìn)行桌面開(kāi)發(fā)有哪些資料可供參考的問(wèn)題解析,大家要是都明白,那么可以忽略,如果不太清楚的話可以看看本篇文章,相信很大概率可以解決您的問(wèn)題,接下來(lái)我們就一起來(lái)看看吧!
Python如何實(shí)現(xiàn)圖形化界面制作為桌面軟件
我覺(jué)得這個(gè)問(wèn)題提的有點(diǎn)不清楚,從兩個(gè)角度理解吧。
1.Python圖形化開(kāi)發(fā),我覺(jué)得第1個(gè)回答滿對(duì)的,我再詳細(xì)說(shuō)說(shuō)。
2.Python程序打包,其實(shí)是第2個(gè)回答的內(nèi)容,少了平臺(tái)的限定,如果只是windows平臺(tái)。下面詳細(xì)說(shuō)。
python圖形化開(kāi)發(fā)
PyQt是一個(gè)創(chuàng)建GUI應(yīng)用程序的工具包。它是Python編程語(yǔ)言和Qt庫(kù)的成功融合。Qt庫(kù)是目前最強(qiáng)大的庫(kù)之一。PyQt是由PhilThompson開(kāi)發(fā)。PyQt實(shí)現(xiàn)了一個(gè)Python模塊集。它有超過(guò)300類,將近6000個(gè)函數(shù)和方法。它是一個(gè)多平臺(tái)的工具包,可以運(yùn)行在所有主要操作系統(tǒng)上,包括UNIX,Windows和Mac。PyQt采用雙許可證,開(kāi)發(fā)人員可以選擇GPL和商業(yè)許可。在此之前,GPL的版本只能用在Unix上,從PyQt的版本4開(kāi)始,GPL許可證可用于所有支持的平臺(tái)。官網(wǎng):Qt|Cross-platformsoftwaredevelopmentforembedded&desktop
開(kāi)發(fā)文檔:Qt-開(kāi)發(fā)者
成品樣例:
學(xué)習(xí)地方:
1、官方社區(qū):QtForum
2、官方博客:QtBlog-ForDevelopersbyDevelopers
3、PyQt4tutorial
4、Archi-博客園
5、PyQt-WoodpeckerWikiforCPUG
wxPython是Python語(yǔ)言的一套優(yōu)秀的GUI圖形庫(kù),允許Python程序員很方便的創(chuàng)建完整的、功能鍵全的GUI用戶界面。wxPython是作為優(yōu)秀的跨平臺(tái)GUI庫(kù)wxWidgets的Python封裝和Python模塊的方式提供給用戶的。就如同Python和wxWidgets一樣,wxPython也是一款開(kāi)源軟件,并且具有非常優(yōu)秀的跨平臺(tái)能力,能夠支持運(yùn)行在32/64位windows、絕大多數(shù)的Unix或類Unix系統(tǒng)、MacintoshOSX下官網(wǎng):wxPython
開(kāi)發(fā)文檔:FrontPage-wxPyWiki
成品樣例:
學(xué)習(xí)地方:
1、HowtoLearnwxPython
2、WxPython教程
3、wxPython的基礎(chǔ)教程
Tkinter模塊("Tk接口")是Python的標(biāo)準(zhǔn)TkGUI工具包的接口.Tk和Tkinter可以在大多數(shù)的Unix平臺(tái)下使用,同樣可以應(yīng)用在Windows和Macintosh系統(tǒng)里.Tk8.0的后續(xù)版本可以實(shí)現(xiàn)本地窗口風(fēng)格,并良好地運(yùn)行在絕大多數(shù)平臺(tái)中.官網(wǎng):TkInter-PythonWiki
開(kāi)發(fā)文檔:FrontPage-TkinterWiki
成品樣例:
學(xué)習(xí)地方:
1、pythonGUI編程(Tkinter)
2、Tkinter8.5reference:aGUIforPython
3、PythonGUI編程(Tkinter)
4、【玩樹莓】編程篇(五)Python下使用Tkinter制作圖形界面
5、pyhon之Tkinter實(shí)例化學(xué)習(xí)
6、Tkinter:圖形用戶界面編程
PySide是跨平臺(tái)的應(yīng)用程式框架Qt的Python綁定版本。在2009年8月,PySide首次發(fā)布。提供和PyQt類似的功能,并相容API。但與PyQt不同處為使用LGPL授權(quán)。官網(wǎng):https://pypi.python.org/pypi/PySide/1.2.4、PySide-QtWiki
開(kāi)發(fā)文檔:PySide—PySide1.2.4documentation
學(xué)習(xí)地方:
1、GitHub-shuge/Qt-Python-Binding-Examples:LotsofsimpleandPythonicPySidedemos
2、GitHub-PySide/Examples:PythonscriptexamplesadaptedforPySide.
3、GitHub-PySide/PySide:ThisrepositorycontainstheCPythonQtbindingsgeneratedusingtheShibokengenerator.
4、Overview—PySidev1.0.7documentation
Python程序打包:
1、安裝PyInstaller
PyInstaller的作用如標(biāo)題所說(shuō),首先需要下載PyInstaller和UPX,UPX是用來(lái)壓縮exe的,點(diǎn)擊超鏈接下載吧,注意選擇你使用的操作系統(tǒng)。如在Windows下,將下載解壓后的upx.exe放到PyInstaller解壓后的文件夾內(nèi)。設(shè)PyInstaller的文件夾為D:\PyInstaller,下同。命令行下進(jìn)入D:\PyInstaller,運(yùn)行Configure.py,應(yīng)該看到如下信息:
不能出現(xiàn)開(kāi)頭為E(Error)的信息,最好不要有W(Warning)的信息。如果出現(xiàn)找不到某dll,請(qǐng)把該dll文件放置到C:\Windows\system32下,一般能解決。
Linux用戶還需要編譯RuntimeExecutables,Windows用戶不需要。主要是運(yùn)行Make.py,會(huì)在PyInstaller\support\load\下生成run和run_d兩個(gè)文件,詳見(jiàn)PyInstaller\doc\Manual.html說(shuō)明。
2、寫一個(gè)Py程序
為了實(shí)驗(yàn),寫一個(gè)HelloWorld.py,假設(shè)保存在C:\HelloWorld.py
3、創(chuàng)建spec文件
spec文件是用來(lái)告訴PyInstaller要編譯的py文件和參數(shù)的。執(zhí)行"Makespec.py+參數(shù)+Py代碼路徑"就可以,主要參數(shù)如下(詳見(jiàn)PyInstaller\doc\Manual.html):
對(duì)于HelloWorld.py,具體執(zhí)行以下代碼:
執(zhí)行后C:\就出現(xiàn)HelloWorld.spec
4、Buildspec文件,生成exe文件
執(zhí)行:
一長(zhǎng)串信息之后,你會(huì)在C:\下發(fā)現(xiàn)HelloWorld.exe這個(gè)文件,就是它啦!體積還真不小,2.7M,這是因?yàn)檫@個(gè)HelloWorld程序殺雞用牛刀罷了。此外其它的文件均是過(guò)程文件,可刪除。
python想學(xué)習(xí)GUI開(kāi)發(fā)小的程序?qū)W習(xí)哪個(gè)比較好
如果只是最簡(jiǎn)單、最基本的功能,不考慮界面布局和美觀程度的話,可以使用Python自帶的GUI標(biāo)準(zhǔn)庫(kù)tkinter,如果考慮復(fù)雜一些,可以使用wxPython,PyQt等第三方模塊,下面我分別簡(jiǎn)單介紹一下,感興趣的朋友可以嘗試一下:
01
tkinter
這是Python自帶的一個(gè)GUI標(biāo)準(zhǔn)庫(kù),輕巧靈活、免費(fèi)開(kāi)源、可以跨平臺(tái)使用,基本組件和容器可以完全滿足日常小型桌面軟件開(kāi)發(fā)需求,如果你對(duì)界面美觀程序要求不高,功能要求不復(fù)雜的話,可以使用一下這個(gè)模塊,非常不錯(cuò),易學(xué)易懂,也非常適合入門:
02
wxPython
這是Python一個(gè)優(yōu)秀的GUI開(kāi)發(fā)庫(kù),免費(fèi)、開(kāi)源、跨平臺(tái),相比較前面的tkinter來(lái)說(shuō),提供了更為豐富的組件和容器,不管是在開(kāi)發(fā)效率還是界面設(shè)計(jì)上來(lái)說(shuō),都有了十足的長(zhǎng)進(jìn),如果你需要開(kāi)發(fā)一個(gè)功能稍微復(fù)雜的桌面軟件,可以考慮使用一下這個(gè)模塊,非常不錯(cuò),也非常容易學(xué)習(xí)和掌握:
03
PyQt
這是Python一個(gè)功能強(qiáng)大的GUI開(kāi)發(fā)庫(kù),基于Qt接口封裝而來(lái),組件容器眾多,可以直接拖拽設(shè)計(jì)GUI界面,而且可以基于CSS、JS進(jìn)行界面美化,如果你有一定的Qt基礎(chǔ),或者本身學(xué)習(xí)過(guò)C++技術(shù),可以考慮使用一下這個(gè)模塊,非常不錯(cuò),不管是功能和界面來(lái)說(shuō),都值得考究:
目前,就分享這3個(gè)非常不錯(cuò)的PythonGUI開(kāi)發(fā)庫(kù)吧,對(duì)于日常小型桌面開(kāi)發(fā)來(lái)說(shuō),完全夠用了,當(dāng)然,還有許多其他第三方GUI開(kāi)發(fā)庫(kù),像EasyGUI,Kivy等也都非常不錯(cuò),只要你熟悉一下使用過(guò)程,很快就能掌握的,網(wǎng)上也有相關(guān)教程和資料,介紹的非常詳細(xì),感興趣的話,可以搜一下,希望以上分享的內(nèi)容能對(duì)你有所幫助吧,也歡迎大家評(píng)論、留言進(jìn)行補(bǔ)充。
想學(xué)python桌面編程,有哪些教學(xué)資料適合學(xué)習(xí)
你說(shuō)的是python的桌面GUI編程吧,目前來(lái)說(shuō),比較流行的有3種方式,分別是tkinter,wxpython和pyqt,下面我簡(jiǎn)單介紹一下這3種方式,實(shí)驗(yàn)環(huán)境win7+python3.6+pycharm5.0,主要內(nèi)容如下:
1.tkinter:這個(gè)是python自帶的一個(gè)簡(jiǎn)單的開(kāi)發(fā)桌面GUI程序的包,對(duì)于一些簡(jiǎn)單的應(yīng)用來(lái)說(shuō),可以考慮使用這個(gè)包,簡(jiǎn)單快捷、容易上手,這里學(xué)習(xí)的話,可以參考網(wǎng)上的一些教程,但如果想深入了解的話,建議學(xué)習(xí)一下官方的文檔https://docs.python.org/2/library/tkinter.html,比較詳細(xì):
tkinter測(cè)試代碼:
程序運(yùn)行截圖如下:
2.wxpython:這是一個(gè)跨平臺(tái)的pythonGUI開(kāi)發(fā)工具包,對(duì)于中小型項(xiàng)目來(lái)說(shuō),使用這個(gè)包完全可以,有許多現(xiàn)成的控件可供使用,網(wǎng)上也有許多相關(guān)的教程和資料,像https://www.yiibai.com/wxpython/,官方文檔https://wxpython.org/pages/overview/等,比較詳細(xì),安裝命令“pipinstallwxpython”:
wxpython測(cè)試代碼:
程序運(yùn)行截圖如下:
3.pyqt:如果接觸過(guò)Qt,想必對(duì)于pyqt來(lái)說(shuō),一定不陌生,這個(gè)是Qt提供給python的一個(gè)接口包,可以快速的借助Qt開(kāi)發(fā)桌面GUI程序,對(duì)于比較大型的項(xiàng)目來(lái)說(shuō),可以考慮使用pyqt,簡(jiǎn)單易學(xué),可以直接拖拽Qt自帶的控件,很簡(jiǎn)單,官網(wǎng)文檔http://pyqt.sourceforge.net/Docs/PyQt5/index.html,安裝命令“pipinstallpyqt5”:
測(cè)試代碼,一個(gè)簡(jiǎn)單的計(jì)算器代碼:
程序運(yùn)行截圖如下:
至此,這里就簡(jiǎn)單介紹了python的3種GUI桌面編程??偟膩?lái)說(shuō),這3種方式都挺簡(jiǎn)單的,網(wǎng)上也有相關(guān)資料和教程,熟悉一下,再參考一下官方文檔,很快就能學(xué)會(huì)的,不過(guò),利用python做桌面GUI開(kāi)發(fā),不是一個(gè)很好的選擇,建議C#,Qt等,能更快捷、方便些,希望以上分享的內(nèi)容能對(duì)你有所幫助吧。
python如何進(jìn)行桌面開(kāi)發(fā)有哪些資料可供參考
這里介紹3個(gè)python桌面開(kāi)發(fā)的包,分別是tkinter,wxpython和pyqt,這3個(gè)包都可以快速的開(kāi)發(fā)出桌面應(yīng)用,下面我簡(jiǎn)單介紹一下這3個(gè)包的安裝和使用,實(shí)驗(yàn)環(huán)境win10+python3.6+pycharm5.0,主要內(nèi)容如下:
1.tkinter:這個(gè)是python自帶的開(kāi)發(fā)桌面GUI的標(biāo)準(zhǔn)庫(kù),不需要安裝,跨平臺(tái)、可移植性高,支持主流的操作系統(tǒng),像Windows,Linux,Mac等,python自帶的IDLE就是采用這個(gè)包開(kāi)發(fā),簡(jiǎn)單易學(xué),容易上手,適合小型項(xiàng)目的開(kāi)發(fā),入門GUI開(kāi)發(fā)的話,可以試一下這個(gè)包,官網(wǎng)資料https://docs.python.org/2/library/tkinter.html:
程序運(yùn)行如下:
2.wxpython:這是python一個(gè)優(yōu)秀、成熟的跨平臺(tái)GUI包,但不是自帶的標(biāo)準(zhǔn)庫(kù),需要單獨(dú)安裝,支持的組件眾多,可以幫助程序員快速的創(chuàng)建功能齊全、界面友好的GUI界面,應(yīng)用廣泛,非常適合中小型項(xiàng)目的開(kāi)發(fā),官網(wǎng)資料https://docs.wxpython.org/,可以參考學(xué)習(xí)一下,下面我簡(jiǎn)單介紹一下安裝和使用:
安裝,這里直接在cmd窗口輸入命令“pipinstallwxpython”就行,如下:
安裝成功后,就可以進(jìn)行簡(jiǎn)單的測(cè)試了,代碼如下,一個(gè)簡(jiǎn)單編輯器:
程序運(yùn)行截圖如下:
3.pyqt:這個(gè)是Qt提供給python的一個(gè)接口包,Qt功能強(qiáng)大,組件眾多,可以快速構(gòu)建用戶GUI界面,所以pyqt的功能也十分強(qiáng)大,借助于Qt,我們可以構(gòu)建桌面應(yīng)用,下面我簡(jiǎn)單介紹一下pyqt的安裝和使用,官網(wǎng)資料http://pyqt.sourceforge.net/Docs/PyQt5/:
安裝pyqt5,這個(gè)直接在cmd窗口輸入“pipinstallpyqt5”就行,如下:
測(cè)試代碼如下,一個(gè)簡(jiǎn)單的計(jì)算器:
程序運(yùn)行截圖如下:
當(dāng)然,你也可以借助designer.exe直接拖拽控件,完成GUI界面開(kāi)發(fā),如下,最后打包成py文件就行:
目前,就介紹這3個(gè)包吧,網(wǎng)上也有許多這方面的教程,感興趣的話,可以搜搜,希望以上分享的內(nèi)容能對(duì)你有所幫助吧。
python可以寫,桌面應(yīng)用程序不需要依賴python么python是不是,類似.net framework
python可以寫桌面應(yīng)用程序,上一個(gè)回答已經(jīng)說(shuō)的很清晰了,我主要說(shuō)一下程序打包和依賴方面的事情。
python程序打包有很多,我一般使用pyinstaller程序進(jìn)行,常用的是打包成一個(gè)文件或者一個(gè)運(yùn)行的文件夾,具體的用法可以百度。打包成文件夾比打包成單個(gè)文件的好處就是可以將擴(kuò)展庫(kù)都放進(jìn)去,這個(gè)下邊會(huì)說(shuō)到。
按照程序員的邏輯,這個(gè)問(wèn)題分為以下幾種情況:
如果在編程序的本機(jī)使用程序,可以不進(jìn)行打包,直接python+代碼.py就可以運(yùn)行程序,不需要啟動(dòng)ide。
如果在其他安裝有python環(huán)境的機(jī)器,需要確認(rèn)是否具備開(kāi)發(fā)程序所使用的庫(kù),比如wxPython或者pyQT之類的,如果有責(zé)可以直接運(yùn)行程序,如果沒(méi)有的話需要安裝上相關(guān)的類庫(kù)之后才可以直接運(yùn)行。運(yùn)行源碼或者運(yùn)行打包后的程序都可以正常的執(zhí)行。這其中最簡(jiǎn)單的方法是將開(kāi)發(fā)節(jié)點(diǎn)上的python安裝路徑打個(gè)包,放到運(yùn)行的節(jié)點(diǎn)上,這樣配置一下環(huán)境變量之后就肯定能夠直接運(yùn)行。
如果其他機(jī)器上沒(méi)有python環(huán)境,單純拷貝過(guò)去源碼是不能夠執(zhí)行的。需要使用python打包工具進(jìn)行打包,并且打包的時(shí)候需要將所有引用到的擴(kuò)展庫(kù)都打包進(jìn)去,比如pyQT的話需要將C:\Python36\Lib\site-packages\PyQt5\Qt\plugins\platforms里邊的文件夾都打包進(jìn)去。打包擴(kuò)展庫(kù)有兩種方法,一種是打包成單個(gè)文件的時(shí)候增加參數(shù)--pathC:/Python36/Lib/site-packages/PyQt5/Qt/plugins/platforms(注意在命令里的'\'最好都替換成'/'或者'\\',防止被轉(zhuǎn)義),另外一種是打包成一個(gè)文件夾的方式,需要將C:\Python36\Lib\site-packages\PyQt5\Qt\plugins\platforms文件夾下的所有dll文件拷貝到打包目錄下邊,程序才能夠正常運(yùn)行。
打包包含所有的庫(kù)文件會(huì)造成打包后的可執(zhí)行程序或者文件夾體積比較大,比如pyQT,打包后由30M以上的空間,這是需要注意的地方,在開(kāi)發(fā)的過(guò)程中如果對(duì)文件體積有要求的話需要仔細(xì)考慮一下。
OK,本文到此結(jié)束,希望對(duì)大家有所幫助。
本文鏈接:http://xinin56.com/kaifa/3575.html