激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

腳本之家,腳本語言編程技術及教程分享平臺!
分類導航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

香港云服务器
服務器之家 - 腳本之家 - Python - 肝了一夜,我用Python做了一個垃圾分類器!

肝了一夜,我用Python做了一個垃圾分類器!

2020-11-16 22:12菜鳥學Python菜鳥哥 Python

前段時間,小編所在的城市藍鯨也開始了垃圾分類,每次去扔垃圾都在要提前科普查詢一下:你這個是什么垃圾!!好麻煩啊,既然是玩Python,不如動手寫一個程序進行垃圾分類的學習,肝了一夜終于完成了。

 肝了一夜,我用Python做了一個垃圾分類器!

自2019年7月,上海市率先實現垃圾分類政策開始,很多城市陸續推出垃圾分類的政策,積極響應國家號召,為建設成綠色環保的新城市而努力。預估在2020年底,先行先試的46個重點城市!

前段時間,小編所在的城市藍鯨也開始了垃圾分類,每次去扔垃圾都在要提前科普查詢一下:你這個是什么垃圾!!好麻煩啊,既然是玩Python,不如動手寫一個程序進行垃圾分類的學習,肝了一夜終于完成了。

01、垃圾分類的數據獲取

 

肝了一夜,我用Python做了一個垃圾分類器!

根據《上海市生活垃圾管理條例》,城市生活垃圾主要分為以下四類:

  • 可回收物,是指廢紙張、廢塑料、廢玻璃制品、廢金屬、廢織物等適宜回收、可循環利用的生活廢棄物;
  • 有害垃圾,是指廢電池、廢燈管、廢藥品、廢油漆及其容器等對人體健康或者自然環境造成直接或者潛在危害的生活廢棄物;
  • 濕垃圾,即易腐垃圾,是指食材廢料、剩菜剩飯、過期食品、瓜皮果核、花卉綠植、中藥藥渣等易腐的生物質生活廢棄物;
  • 干垃圾,即其它垃圾,是指除可回收物、有害垃圾、濕垃圾以外的其它生活廢棄物。

為了獲取垃圾分類數據集,小編經過資料的查詢,在碼云中小編找到一個垃圾分類數據庫,數據庫中總共包含了可回收垃圾、有害垃圾、濕垃圾、干垃圾、大件垃圾五種類別,每種類別的垃圾數目如下表所示:

肝了一夜,我用Python做了一個垃圾分類器!

02、垃圾分類學習器設計

 

1).整體設計思路

垃圾分類學習器包含了學習模塊和測試模塊兩部分,用戶可以根據需求對垃圾類別進行學習,在經過一定的學習后,通過測試模塊對自己的學習成果進行檢驗,檢驗自己能否將垃圾正確分類。

整個學習器的設計過程包含了數據處理、學習模塊搭建、測試模塊搭建三個部分,接下來小編將對每一個模塊進行編程的實現。

肝了一夜,我用Python做了一個垃圾分類器!

2).數據處理

這里使用大名鼎鼎的pandas進行數據處理,通過pd.read_csv可以獲取原始表格數據,通過dfdf["class"] == 2中修改參數數字2獲取不同種類垃圾的list,到此,就可以獲取所有種類的垃圾以及不同種類垃圾的list數據,是不是很簡單呢。

肝了一夜,我用Python做了一個垃圾分類器!

3).學習模塊搭建

學習模塊總共包含了垃圾分類意義的顯示,四種常見垃圾的圖標顯示,以及不同種類垃圾的滑動文本框顯示,下面將對程序展開具體介紹。

肝了一夜,我用Python做了一個垃圾分類器!

上面代碼是垃圾分類意義的顯示和四種常見垃圾的圖標顯示程序,由程序可以看出,顯示設計的思路大致為:

  • 首先在root主窗口中建立相應的tk.Frame,并確定其在主窗口的位置;
  • 然后利用tk.Label標簽顯示文字信息,鑲嵌在tk.Frame的具體位置進行顯示
  • 對于圖片的顯示卻不太簡單,需要在root主窗口中建立新的tk.Canvas,并根據設計好的大小對圖像進行Resize操作,canvas2.create_image創建圖片才得以顯示;

4).垃圾的分類

對于枚舉類垃圾的顯示則更為復雜,下面會詳細介紹:

肝了一夜,我用Python做了一個垃圾分類器!

為了實現對不同類別垃圾的展示學習,需要調用按鍵回調函數,獲取枚舉類的信息,再根據獲取的信息進行相應類別垃圾信息的顯示。

  • 我們先建立了垃圾類的list,通過OptionMenu部件進行枚舉類的顯示;
  • 為了實現對類別的實時更新,調用按鍵的回調函數garbage_process,對scrolledtext.ScrolledText滾動文本框進行寫入;
  • 這里需要注意的是,如果將scrolledtext.ScrolledText安放在root主界面上,會產生位置錯位的情況;
  • 小編這里新建了canvas3畫布,將scrolledtext.ScrolledText放在了canvas3畫布進行顯示;

到這里便完成了學習模塊界面的設計,顯示效果如下:

肝了一夜,我用Python做了一個垃圾分類器!

03、測試模塊搭建

 

對于測試模塊,其搭建的思想和垃圾枚舉類的搭建類似,但是加入了單選按鈕模塊,使用用戶可以進行自我測試,檢測自己學習的成果。

肝了一夜,我用Python做了一個垃圾分類器!

在上面的代碼中,可以看到,獲取所有的垃圾名字作為枚舉類OptionMenu對象創建下拉選項,用戶可以數據庫中選擇垃圾品種進行自我測試。

當選擇完垃圾后,對垃圾進行分類,利用單選按鈕Radiobutton部件選擇垃圾種類,選擇完成之后,左鍵按下選擇練習按鍵,調用ceshi_process函數與數據庫中信息進行比對,對結果進行輸出。若正確,給予鼓勵,否則進行糾正。整體界面顯示如下:

肝了一夜,我用Python做了一個垃圾分類器!

最后我們來演示一下,整個過程:

肝了一夜,我用Python做了一個垃圾分類器!

原創真的不容易,從這個點子的產生,到代碼的設計,數據的采集,最后進行編寫調試,小編辛苦了一個周末才完成。看著自己完成的小工具,也蠻有成就感的!后面我會錄制視頻放在我們的B站(搜索:菜鳥玩Python)上面,到時源碼視頻一起奉上!

希望大家都加入到垃圾分類的隊伍中來,保護環境從你我做起,讓水更清天更藍,貢獻一小份力量吧!

延伸 · 閱讀

精彩推薦
587
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25
主站蜘蛛池模板: 欧美一区成人 | 欧美日韩精品一区二区三区在线观看 | 一区二区三区欧美在线观看 | 国产美女视频一区二区三区 | 国内成人自拍视频 | 欧美精品欧美极品欧美激情 | 免费视频99 | 久久久精品视频国产 | 欧美一二在线 | 成人黄视频在线观看 | 亚洲第一成人在线观看 | 日韩视频在线视频 | 高潮娇喘嗯啊~文字 | av免费在线免费观看 | 久久国产精品久久精品国产演员表 | 老女人碰碰在线碰碰视频 | 欧美黄色一级生活片 | 国产在线精品一区二区三区 | 亚洲午夜在线观看 | sesee99| 久久精品中文字幕一区二区 | 欧美爱爱视频免费看 | 在线天堂中文在线资源网 | 国产午夜精品一区二区三区不卡 | 视频一区国产 | 久久成人精品视频 | 法国性xxx精品hd专区 | 草操影院| 日日做夜夜操 | 羞羞答答www网站进入 | 青青操精品| 欧美日韩在线影院 | 成人精品aaaa网站 | 久久久大片 | 国产亚洲高清在线精品不卡 | 27xxoo无遮挡动态视频 | 国产1区2区3区在线观看 | 91精品动漫在线观看 | 粉嫩粉嫩一区二区三区在线播放 | 国产精品视频免费在线观看 | 久久久午夜电影 |