序 21世纪以来,资讯科技一再推陈出新,启动一连串社会和文化变革。对教育的冲击已逐渐成形,应用资讯科技及处理资讯是未来人才之基本条件。未来人才应是能有效使用资讯工具进行深度学习、能应用工具发挥创造力以分析、评断、表达与解决问题,同时具生产力与责任的数位公民。面对科技高度智慧化环境快速变迁,跨领域及问题解决能力亦是未来人才培育关键,因此未来除学生专业技术能力外,更重视提升学生跨领域学习整合能力、问题解决能力与自主学习能力。
本书以Python作为实作语言,展现利用运算思维解决问题方法的实现,通过这种跨学科应用问题求解的学习和实践,希望培养学生主动在各专业学习中利用运算思维的方法和技能,进行问题求解的能力和习惯,并能应用Python大量的第三方函式库动手解决具有一定难度的实际问题。因此,本书由资料处理能力开始,介绍与实作利用Python进行各种开放资料格式间的转换,包括PDF、CSV、JSON、XML、YAML、SQLite;接着介绍如何利用Python进行网页资料撷取与转换,介绍与实作Python存取网站方式(静态爬虫、动态爬虫)的各种工具,包括urllib与re、requests、BeautifulSoup、Selenium;接着介绍资料分析能力,运用Python的内置模组与强大的NumPy、Pandas第三方函式库进行各种资料分析;最后介绍将结果展现的资料视觉化能力,运用Matplotlib呈现各精美图形。
本书在选择应用领域和案例时,着重在那些易于理解、不需要掌握演算法和程式设计就能解决的问题上,因此,本书不会深入讲解演算法,而是着重于如何利用运算思维理解和解决问题,展现运算思维在问题求解、系统构造、理解人类行为等方面发挥的重要作用。
本书适用于大学一年级新生或对成为未来人才有兴趣的读者,不要求有电脑程式设计经验,并且也不是以程式设计为主要内容,而是要求学生/读者专注于理解求解问题的方法和技能。最前面的Anaconda工具与Python语言基础知识的介绍是帮助读者阅读和理解书中给出的Python程式,并能在理解的基础上,对这些程式进行小修改就能实现自己的问题求解方法。
欢迎大家协助指教与讨论
曹祥云