python自己做课程表_Kivy做一个课程表App(上)
從HFUTER停止維護以來,有一段艱難的時光,沒有表白墻可以刷,校園網崩了就不能看課表,于是我決心照著HFUTER做個類似的App,名字都想好了:HfutCommunity,奈何太菜又太懶,不想學java,最后了解到了kivy,開始了一段奇妙的編程旅程(開始入坑).
kivy是python的一個庫,用于開發具有用戶界面和多點觸控應用程序。它可以在Android,iOS,Linux,OS X和Windows執行
看這簡介,有沒有心動,能跨平臺運行!就是說寫一份代碼,頂1.2.3.4.5,頂5份!最重要的跨Android和iOS!多么神奇的庫!
入門kivy
安裝過程可百度,kivy依賴pygame,cython等庫,安裝過程很順利
看,一個簡單的App就出爐了,只有一個界面,一個Label。
一般來說,邏輯與界面最好分開,邏輯放在.py里,界面放在.kv里。如下
了解css的我,寫起.kv還是比較輕松的
注:github有很多kivy的例程,可以自行下載學習
進階Kivy
來看些大神的作品,界面還是很好看的,比如
但是現在離HfutCommunity還遠著
大師級Kivy
pydelhi
可以自行運行查看,就是有個坑,kivy不支持中文!就算在注釋里添加中文也不行,編碼格式包含GBK也會報錯。支持中文的方法就是添加中文字體,下面會談到
好,終于來了個正經的error:UnicodeDecodeError: 'gbk' codec can't decode byte 0x93 in position 522: illegal multibyte sequence
奇怪了,檢查了代碼里沒有中文,怎么還報gbk的錯誤?還是來看看錯誤吧
還是很好找的,從藍色文件鏈接上看,第二個main.py是程序入口,一個一個查看,最終定位到\network\__init__.py
目測是open()函數讀取文件時沒有用utf-8編碼,加上encoding='utf-8'
好,再運行,成功了
這個項目對我幫助還是挺大的,就他這個頁面管理的機制很合理,方便修改,數據存儲,所以我就照著pydelhi的結構,開始構建我的HfutCommunity
然而只完成了一小部分就停了,原因下篇更新,到此成果如下
就不放更多的圖了,請暫時無視界面美觀性。哈哈,當然先寫組件和功能,再整理UI啦
總結
以上是生活随笔為你收集整理的python自己做课程表_Kivy做一个课程表App(上)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 什么是原型,原型链
- 下一篇: 安装weblogic并部署jpress项