# <font face='consolas'><font size=5 color=#000080><center>**文山社大2018春季班《Python入門到進階》小專題**</center></font> <span class='font130'>王春桂專題:[輕鬆學拼音](https://hackmd.io/s/SyQsHBMhz "輕鬆學拼音")</span> <span class='font130'>高明志專題:[人臉辨識系統](https://goo.gl/GY1kYo "人臉辨識系統")</span> <span class='font130'>黃志光專題:[家庭或個人記帳系統](https://goo.gl/wv2ADf "家庭或個人記帳系統")</span> 說明: 1. 有興趣、有時間的同學自由參加。 2. 原則上分組合作,一組最多5人,亦可一人單獨成組。 3. 最好自己決定題目。如無適合題目,可從下列題庫中按難易程度和興趣挑選。 4. 須在課餘時間進行。遇到困難請先嘗試自行解決,無法解決可和老師或助教討論。 5. 進度請隨時貼到學員專頁(如單人成組)或專題專頁(數人一組時助教會協助建立專題專頁),讓老師和助教了解並給予意見。 6. 有些題目看似很難,但大家不必害怕。Python的資源非常豐富,很多複雜功能都已經有人開發成libraries,我們剛學的wxPython就是其中之一。只要找到適當的library,一些本來非常困難的主題可以輕易達成。 7. 時程: * 04.27上課之前確定題目並主動告知助教。 * 04.27上課期初報告,內容為題目介紹及預期功能。每組5分鐘以內。 * 06.08上課期中報告,內容為進度說明及問題討論。每組5-10分鐘。 * 最後一次上課期末成果展示。每組10-15分鐘。 --- 題庫: <span class='r'>紅色</span>表該專題可能要使用資料庫。 <span class='classA'>`★入門(A級)`</span> * [RGB色盤程式。輸入R, G, B值,輸出由該三者組合出來的顏色。](https://www.rapidtables.com/web/color/RGB_Color.html) * 數位時鐘、鬧鐘、碼表及倒數計時程式。 * 購物或用餐結帳系統。 * [數字轉換國字大寫程式。](http://0123456789.tw/?p=2767) * [度量衡換算程式。](http://www.mold.net.tw/classroom/unit.htm) * 緊急聯絡簿程式。 * 簡單日記簿。 * [萬花筒程式。](https://www.youtube.com/watch?v=KjkFWLCKJ94) * [滾球撞壁隨機反彈程式(一個球即可)。](http://img.debugrun.com/pic/2018/1/31/b6c01b864bc60bcb380568e51e82464b.gif) * 抽籤程式。 * [密碼產生器。](https://www.ez2o.com/App/Coder/RandomPassword) * [短網址產生器。](https://ppt.cc/) * [國民身分證編號檢查/產生器。](https://zh.wikipedia.org/wiki/%E4%B8%AD%E8%8F%AF%E6%B0%91%E5%9C%8B%E5%9C%8B%E6%B0%91%E8%BA%AB%E5%88%86%E8%AD%89) * [QR code產生器。](http://qr.calm9.com/tw/) * 您自己的Windows螢幕保護程式。 <span class='classB'>`★★進階(B級)`</span> * <span class='r'>家庭或個人記帳系統</span>。資料用Excel或SQLite儲存。 * <span class='r'>個人健康及運動系統</span>。儲存並能以圖表分析各項指標,如身高、體重、視力、聽力、血壓、血糖、膽固醇、肝功能、每周運動時間和項目等。 * 輕量級的<span class='r'>職業運動(例如NBA)紀錄查詢系統</span>。 * 實作完整的Windows記事本(NotePad)。進階版則為類似NotePad++或Windows的WordPad等程式,當然功能可以簡化。 * 模仿Windows小算盤的計算機程式。外觀盡量和小算盤相近,功能則可酌量儉樸。 * 實作Windows小畫家(mspaint)模擬程式。功能基本款即可。 * 實作入門版的Windows檔案總管。 * 設計一個簡單的<span class='r'>秘錄機程式</span>。 * <span class='r'>影視檔案播放程式</span>。要能選擇欲播放的檔案以及設定播放工具。 * 開發一個簡單的解壓縮系統。入門版只要能解zip和rar即可,挑戰版則可解更多壓縮格式。 * [視窗版的MasterMind猜數字程式](https://zh.wikipedia.org/wiki/%E7%8C%9C%E6%95%B0%E5%AD%97),入門版是由使用者去猜電腦的答案。AI版則由電腦去猜使用者(或另一電腦)的答案。 * 做個協助視力障礙朋友的放大鏡工具,可將螢幕的字無段縮放。 * 開發一個smart input程式。使用者在鍵盤輸入時可以按`<Esc>`跳離,也可以按`<F1>`顯示程式操作說明。其他function keys也各有用途,例如按`<F9>`時顯示某圖片,按`<F3>`會Beep一聲,`<F12>`執行某個自定函數等。 * <span class='r'>天氣預告程式</span>。須抓取氣象RESTful API資料即時更新。 * <span class='r'>簡單的測驗系統</span>。主管可匯入測驗題目(可單/複選),考生做完測驗後可立即知道分數。 <span class='classC'>`★★★專家(C級)`</span> * 簡易<span class='r'>萬年曆程式</span>。標準版只需公元日曆/國定假日,進階版則可考慮加入農曆、節氣等資料。 * <span class='r'>電梯模擬系統</span>。大樓層數、電梯部數、速度及承載量等均為可設定的參數。 * 陽春版的<span class='r'>卡拉OK系統</span>。 * 簡單的<span class='r'>動畫遊戲</span>。主題自行決定。 * csv檔案的parser。要能不透過standard library中的csv模組而正確剖析csv檔案。 * JSON的viewer。要能不透過standard library中的json模組,自行開發一個JSON文件的檢驗程式。 * 視窗版的Python third party library安裝程式。核心呼叫pip,其實就是將pip包裝成視窗版而已。 * 簡便版<span class='r'>email收發程式</span>。功能多少視同學時間和能力而定。 * 入門版的<span class='r'>網路瀏覽器(browser)</span>。功能多少視同學時間和能力而定。 * 利用OpenCV開發一個初級的<span class='r'>人臉辨識系統</span>。 * 簡易的<span class='r'>OCR系統</span>。第一階段辨識英數即可,進一步能辨識中文更佳。 * 開發一個固網(市內)電話的<span class='r'>自動撥號且利用語音辨識技術判斷是否為空號的程式</span>。Hint:利用modem撥號。只要自動撥出門號及判幾空號即可,不必傳輸資料。 * Pep8文件整理研究。本專題基本上不用寫程式,只要花時間整理Pep8文件,並提出自己的意見以及取捨建議。 * 整理regular expression(正規表達式)的主要語法,並介紹如何在Python上應用。 * Python語法及其type system(型別機制)和其他主要語言如Java, c, c++, c#, JavaScript, PHP, R, ...等比較整理。 --- <style type="text/css"> body { } #r{ color: #8B0000; } #b{ color: #00008B; } #dk{ color: #1E90FF; } .t{ color: #FF6347; font-size: 110%; font-weight: bold; } .r{ color: red; font-weight: bold; } .font150{ font-weight: bold; font-size: 150%; } .font125{ font-weight: bold; font-size: 125%; } .font130{ font-weight: bold; font-size: 130%; } #cg120{ color: #008248; font-weight: bold; font-size: 120%; } .classA{ color: #66E141; font-weight: bold; font-size: 130%; } .classB{ color: #41C6E1; font-weight: bold; font-size: 130%; } .classC{ color: #E1B141; font-weight: bold; font-size: 130%; } } </style>