序
21世紀以來,資訊科技一再推陳出新,啟動一連串社會和文化變革。對教育的衝擊已逐漸成形,應用資訊科技及處理資訊是未來人才之基本條件。未來人才應是能有效使用資訊工具進行深度學習、能應用工具發揮創造力以分析、評斷、表達與解決問題,同時具生產力與責任的數位公民。面對科技高度智慧化環境快速變遷,跨領域及問題解決能力亦是未來人才培育關鍵,因此未來除學生專業技術能力外,更重視提升學生跨領域學習整合能力、問題解決能力與自主學習能力。
本書以Python作為實作語言,展現利用運算思維解決問題方法的實現,通過這種跨學科應用問題求解的學習和實踐,希望培養學生主動在各專業學習中利用運算思維的方法和技能,進行問題求解的能力和習慣,並能應用Python大量的第三方函式庫動手解決具有一定難度的實際問題。因此,本書由資料處理能力開始,介紹與實作利用Python進行各種開放資料格式間的轉換,包括PDF、CSV、JSON、XML、YAML、SQLite;接著介紹如何利用Python進行網頁資料擷取與轉換,介紹與實作Python存取網站方式(靜態爬蟲、動態爬蟲)的各種工具,包括urllib與re、requests、BeautifulSoup、Selenium;接著介紹資料分析能力,運用Python的內置模組與強大的NumPy、Pandas第三方函式庫進行各種資料分析;最後介紹將結果展現的資料視覺化能力,運用Matplotlib呈現各精美圖形。
本書在選擇應用領域和案例時,著重在那些易於理解、不需要掌握演算法和程式設計就能解決的問題上,因此,本書不會深入講解演算法,而是著重於如何利用運算思維理解和解決問題,展現運算思維在問題求解、系統構造、理解人類行為等方面發揮的重要作用。
本書適用於大學一年級新生或對成為未來人才有興趣的讀者,不要求有電腦程式設計經驗,並且也不是以程式設計為主要內容,而是要求學生/讀者專注於理解求解問題的方法和技能。最前面的Anaconda工具與Python語言基礎知識的介紹是幫助讀者閱讀和理解書中給出的Python程式,並能在理解的基礎上,對這些程式進行小修改就能實現自己的問題求解方法。
歡迎大家協助指教與討論
曹祥雲