1.概述
? ? ? ? ?本文主要講述利用Python來(lái)編寫一個(gè)可以計(jì)算跳過(guò)帶有特定數(shù)字的車位數(shù)量小程序。并且又利用第三方庫(kù)wxPython做出GUI界面,打包成可執(zhí)行文件。
????????現(xiàn)實(shí)中有這樣的實(shí)際案例,某樓盤的地下車庫(kù)的數(shù)量有2000多個(gè)車位,車位分成了5個(gè)分區(qū),每個(gè)分區(qū)有400-500個(gè)車位數(shù)量不等。并且車位的編號(hào)已經(jīng)在圖上一一編好了,比如起始號(hào)是001,終止號(hào)是720。但是營(yíng)銷人員在編寫車位號(hào)碼時(shí)避開了帶有數(shù)字4和數(shù)字18的車位號(hào),例如4、14、18、24、40、118、114等等,這樣我們就不能直接用終止號(hào)減起始號(hào)再加一的算法來(lái)算出來(lái)車位的數(shù)量了。
????????因此為了方便統(tǒng)計(jì)這種跳號(hào)的車位總數(shù),我寫了這么一段簡(jiǎn)單的代碼。本代碼利用的是python非?;A(chǔ)的知識(shí),例如字符串的操作、列表的操作、for循環(huán)、input函數(shù)、自定義函數(shù)等等,由淺入深逐步完善整個(gè)代碼。非常適合Python小白剛學(xué)完列表和字符串相關(guān)操作后練手使用。wxPython部分的應(yīng)用也是非常基礎(chǔ)的用法,主要是用戶輸入文本框、靜態(tài)文本以及按鈕控件的基礎(chǔ)知識(shí)。
? ? ? ? 為了方便給不會(huì)使用Python,電腦上也沒(méi)有Python開發(fā)環(huán)境的人使用這個(gè)小工具,就需要我們做出GUI界面,并且打包成可執(zhí)行文件。
2.代碼實(shí)現(xiàn)
(1)Python環(huán)境代碼實(shí)現(xiàn)
????????此部分內(nèi)容詳見本人另一篇文章:Python編寫的計(jì)算跳過(guò)帶有特定數(shù)字的車位數(shù)量小程序,并利用wxPython做成GUI界面打包成可執(zhí)行文件(Part1)
(2)wxPython創(chuàng)建GUI界面?
①wxPython簡(jiǎn)介
????????wxPython是Python語(yǔ)言的一套優(yōu)秀的GUI圖形庫(kù)。允許Python程序員很方便的創(chuàng)建完整的、功能鍵全的GUI用戶界面。(# 來(lái)源于百度百科)
②安裝wxPython
?????????wxPython是Python的第三方庫(kù),需要用pip安裝,如下代碼:
pip install wxpython
③創(chuàng)建一個(gè)簡(jiǎn)單的窗口
????????如下代碼是創(chuàng)建一個(gè)窗口的基本代碼,具體可詳見代碼中注釋內(nèi)容:
import wx # 導(dǎo)入wxpython模塊
class MyFrame(wx.Frame): # 定義一個(gè)wx.Frame的子類,以便我們更容量控制窗口的內(nèi)容和外觀
def __init__(self): # 定義初始化方法
# 設(shè)置框架的標(biāo)題和尺寸
wx.Frame.__init__(self, None, -1, title='計(jì)算車位數(shù)小程序', size=(400, 300))
# 以主程序運(yùn)行
if __name__ == '__main__':
app = wx.App() # 創(chuàng)建一個(gè)應(yīng)用程序?qū)嵗? frame = MyFrame() # 創(chuàng)建窗口的實(shí)例
frame.Show() # 使窗口可見
app.MainLoop() # 調(diào)用應(yīng)用程序?qū)嵗腗ainLoop()方法,進(jìn)入主事件循環(huán)
????????上述代碼運(yùn)行后會(huì)創(chuàng)建一個(gè)窗口,如下圖所示:
文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-838970.html
④在窗口上增加控件?? ?? ??
????????接下來(lái)我們?cè)谶@個(gè)窗口上添加控件,添加控件需要先添加畫布,把所有的控件都布局到畫布中,添加畫布的代碼如下,其中-1為ID值,可以自定義,也可以用-1由wxPython自動(dòng)生成一個(gè)新的ID。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-838970.html
panel = wx.Panel(self, -1)
wx.StaticText(panel, -1, '請(qǐng)輸入起始車位號(hào)', pos=(30, 30))
到了這里,關(guān)于(Part2)Python編寫的計(jì)算跳過(guò)帶有特定數(shù)字的車位數(shù)量小程序,并利用wxPython做成GUI界面打包成可執(zhí)行文件的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!