愛她就給她做個小工具吧
前幾天給媳婦買的糧食廠的無線熱點又壞了,沒辦法,只能用筆記本自己開熱點了,macbook 開win虛擬機 QQ遠程,一頓命令行,熱點開起來了,妥妥的
第二天,無線默認關閉的,只需一行命令就可以開啟,又是一遍開虛擬機,開QQ遠程......
這不是個辦法,要自動,順便能騙個10分鐘捶腿什麼的
1.寫個Windows 批處理, 可以實現比較簡單,執行以下黑乎乎的一閃 (不太友好,會遭嫌棄的)
2.Python寫個GUI圖像界面的工具編譯成.exe的,這還像點樣子(稍微有點正常工具的樣子了)
批處理 vs 圖形界面
選擇框架
pyQT 好看,但是比較重
wxpython 我選的這個,比較好安裝,pip 就可以了
Tkinter 自帶,畫風稍微差點
要實現的功能
就跑一行代碼就好了"netsh wlan start hostednetwork"
代碼部分
#coding=utf-8
importwx
importos
classMyFrame(wx.Frame):
def__init__(self,parent,title):
wx.Frame.__init__(self,parent,title=title,size=(200,200))
panel=wx.Panel(self)
self.box=wx.BoxSizer(wx.VERTICAL)
self.wifi_on=wx.Button(panel,label="開啟熱點")
self.wifi_off=wx.Button(panel,label="關閉熱點")
self.wifi_on.Bind(wx.EVT_BUTTON,self.on)
self.wifi_off.Bind(wx.EVT_BUTTON,self.off)
self.text=wx.TextCtrl(panel,style=wx.TE_MULTILINE)
self.box.Add(self.wifi_on,,wx.EXPAND)
self.box.Add(self.wifi_off,,wx.EXPAND)
self.box.Add(self.text,1,wx.EXPAND)
panel.SetSizer(self.box)
self.Show()
defon(self,e):
os.system("netsh wlan start hostednetwork")
self.text.SetValue("開啟熱點")
defoff(self,e):
os.system("netsh wlan stop hostednetwork")
self.text.SetValue("關閉熱點")
app=wx.App(False)
MyFrame(None,"WiFi開關")
app.MainLoop()
效果圖
雖然不漂亮單起碼是圖形界面了
簡單的解析一下代碼
繼承wx.Fram 類
創建個面板panel
創建個布局wx.BoxSizer() 參數為垂直
創建2個按鈕wifi_on wifi_off
給2個按鈕綁定事件函數,執行開關dos命令
創建個文本框,用來顯示信息
把按鈕和文本框添加到布局裡
把布局作用到面板上
主程序:生成實例,進入主循環
最後使用Windows平台 pyinstaller 編譯成.exe 選一個她的美照作為ico,搞定
結束語
給你自己喜歡的人用Python做一些小工具吧,開啟身為程序員的浪漫,成功了在她那的聲望會暴漲哦, 說不定會每人出4塊5去購物呢(幸福臉)


TAG:python學習手冊 |