本書特色
●以初學者學習面撰寫,內容淺顯易懂,從「運算思維」的主軸,說明程式設計的設計策略。
●實務與理論兼備,結合圖表與實例的運用,生動的方式,帶領讀者身歷其境,增添學習趣味性。
●「Python程式設計」說明搭配實地操作,增進運算思維的能力。並引導讀者運用Python開發專題。
●內容包括視覺化、人機互動、YouTube影片下載器、音樂MP3播放器與試題分析等。具備基礎的程式設計者,可獲許多啟發豁然開朗。
※本書範例資料檔,請至作者個人網站:http://cat.nptu.edu.tw,下載使用。
或至五南圖書網頁:https://www.wunan.com.tw,輸入書號1H2B,即可找到下載處。
值此資訊科技高度發展的時代,如何尋求創新與突破實屬極重要的課題;面對現代生活的日新月異,「Python程式設計」正式引領我們開創「運算思維」的新紀元,實為「程式設計」的重大變革。
在程式設計上,經由本書介紹,不僅大大提升相關知識;生活化圖解的運用,搭配文字解說。透過實作,在運算思維的架構下,身歷其境更加凸顯Python程式設計的重要性。再版更新Python與相關軟體版本,並新增微軟開發、跨平台免費編輯器開發Python程式。為初學者與具Python程式設計基礎者,最佳實用工具書。
作者簡介:
陳新豐
現職
國立屏東大學教育學系教授
學歷
國立政治大學教育學系博士
經歷
嘉南藥理科技大學幼兒保育學系助理教授
美國馬里蘭大學EDMS(Measurement, Statistics, and Evaluation)研究學者一年
章節試閱
Chapter01 程式設計與Python
1.1 程式語言
程式語言是用來命令電腦執行各種作業的指令,是人類與電腦溝通的中間橋梁,當電腦藉由輸入設備把程式碼讀入之後,會儲存在主記憶體內,然後指令會依序被控制單元提取並解碼或翻譯成電腦可以執行的信號,並把信號送到各個裝置上,以及執行指令所指派的動作,也就是說,程式語言可以說是人類與電腦溝通的語言。
1980 年後出生,其成長歷程與網路、智慧型手機及平板電腦等科技產品緊緊相依的年輕族群,時常被視為擅長運用數位科技的世代,然而這些數位原生(Digital Natives)的年輕族群可不代表就是『精通』數位科技。所謂精通數位科技,並不是單指人們與新科技「互動」的能力,而是「創造」新科技的能力,而想要創造新科技,就必須學習撰寫程式語言。
程式語言的分類一般可分為低階語言與高階語言,其中的低階語言較接近電腦的語言,執行速度快但是編寫不易,例如機器語言或者是組合語言;另外高階語言則比較接近人類的日常用語,程式比較容易編寫與閱讀,但是必需編譯成機器語言才能夠執行,執行效率較低階語言差,例如C、JAVA、Python 等。
組合語言或者是高階語言所撰寫的原始程式,翻譯成機器語言可供電腦執行的過程可分為組譯(Assembler)、直譯(Interpreter)與編譯(Compiler)。組合語言是利用組譯的過程,C 與JAVA 則是利用編譯的過程,至於本書中所討論的Python 則是利用直譯的過程,將原始程式的指令逐一翻譯並執行,每次執行時需要重新翻譯。
1.2 Python 語言簡介
Python 是個非常強大的程式語言,具有眾多的第三方函式庫,簡潔而友好的語法,特別容易上手,以下將從Python 程式語言的發展歷史及其特色說明如下。
1.2.1 Python 程式語言的發展歷史
TIOBE 在2018 年01 月中程式語言流行趨勢的排行榜中,Python 排名第4,前三名分別是JAVA、C 與C++,與2017 年01 月相較,Python 流行趨勢的排名增加1.21%,增加的幅度是除了C 語言外的第二高。Python 至今被譽為「初學者最佳學習的程式語言」,無論網頁程式設計、手機程式設計、遊戲程式設計、自動控制程式⋯⋯等各行各業,Python 都占有一席之地,可見得Python 在目前程式語言的學習中,扮演著相當重要的角色。
Python 程式語言是1989 年12 月,Guido van Rossum 於荷蘭國家數學及計算機科學研究所研發而成。1991 年02 月Python 0.9 版發布在新聞論壇,從此之後Python 受到廣大程式設計者的喜愛。Python 擁有C 程式語言的強大功能,並且容易學習,又具備良好的擴展性,因此1994 年01 月,Python 1.0 正式版公布後,奠定了Python 蓬勃發展的第一步。
Python 3.0 版於2008 年12 月公布,此時Python 的開發小組投下了一顆震撼彈,Python 3.0 的語法與前一個Python 2.6 版本幾乎完全不相容,Python 開發小組忍痛廢掉Python 2.x 的架構重新發展Python。
本書撰寫時,Python 已經釋放出3.10.2 的版本,並且自3.5 版之後,不再支援Windows XP 的作業系統平臺。
1.2.2 Python 程式語言的特色
Python 的官方網站(https://www.python.org)宣稱Python 程式語言是功能強大、快速、容易使用並且是開放式的免費軟體,而這也是為何程式設計師要選擇Python 為開發應用軟體系統的程式語言,簡單地說Python 程式語言主要的特色有下列幾點。
1. 簡單且易於學習
Python 非常適合初次接觸程式語言的學習者,其語言簡單易學,Python 使用優雅的語法,使得編寫的程式碼更容易閱讀。
2. 完全採物件導向
Python 的函式、數字、字串都是物件,完全支援繼承、重載、衍生與多重繼承,有益於增強原始碼的複用性。
3. 豐富的擴充模組
Python 本身被設計為可擴充的,並非所有的特性和功能都整合到語言核心,Python 提供了豐富的API 和工具,以便程式設計師能夠輕鬆地使用C、C++ 來編寫擴充模組,Python 編譯器本身也可以被整合到其他需要腳本語言的程式內,第3 方的程式庫包括Web and Internet Development、Database Access、Desktop GUIs、Scientific & Numeric、Education、Network Programming、Software & Game Development 等。
4. 免費的開發環境
Python 可以免費下載與使用,或將其包括在個人所開發的應用程式中,Python 屬於開放性原始碼專案,沒有專利問題,允許被使用者自由地修改與重新發布。
5. 跨多平臺的特性
Python 程式常常不需要修改,即可同時在Linux 與Windows 等作業系統平臺上執行,即使撰寫圖形使用者介面(Graphical User Interface, GUI)程式也是具有可移植性。
Chapter01 程式設計與Python
1.1 程式語言
程式語言是用來命令電腦執行各種作業的指令,是人類與電腦溝通的中間橋梁,當電腦藉由輸入設備把程式碼讀入之後,會儲存在主記憶體內,然後指令會依序被控制單元提取並解碼或翻譯成電腦可以執行的信號,並把信號送到各個裝置上,以及執行指令所指派的動作,也就是說,程式語言可以說是人類與電腦溝通的語言。
1980 年後出生,其成長歷程與網路、智慧型手機及平板電腦等科技產品緊緊相依的年輕族群,時常被視為擅長運用數位科技的世代,然而這些數位原生(Digital Natives)的年輕...
作者序
再版序
《Python 程式設計入門與應用》這本書共分為 12 章,分別是〈程式設計與 Python〉、〈變數與資料型態〉、〈基本敘述〉、〈串列、元組、集合、字典〉、〈函式〉、〈套件〉、〈排序與搜尋〉、〈檔案與例外〉、〈圖形使用者介面〉、〈專題開發〉、〈Arduino〉與〈micro:bit〉等。全書的結構是以初學者學習程式設計的撰寫流程來加以安排,第 2 版除了更新 Python 與相關軟體至本書再版時最新之版本,新增微軟開發且跨平臺免費編輯器開發 Python 程式以及修正第 1 版中勘誤之處。
再版第 1 章的內容是簡介程式設計,並介紹視覺化 Python 語言之開發環境。接下來第 2 章介紹程式設計中的變數與相關的資料型態,包括數值與字串等。第 3 章則是開始說明撰寫 Python 的基本敘述,例如判斷式與迴圈。第 4 章則是說明串列、元組、集合與字典等資料型態在使用時需要注意的事項。第 5 章則是程式設計中的函式加以說明如何定義以及使用 Python 內定的數值與字串函式。第 6 章則是說明擴展 Python 功能的套件之使用,並介紹時間、亂數與繪圖套件的匯入與使用。第 7 章是說明程式設計演算法中相當重要的排序、搜尋與遞迴。第 8 章是介紹 Python 如何讀取與寫入檔案,並且若有例外情形時該如何截取訊息做適當的處理。第 9 章則是說明如何利用圖形使用者介面來增加程式中人機互動的部分。第 10 章則由前述 9 章中所介紹的語法及函式中,以 YouTube 影片下載器、音樂 MP3 播放器與試題分析等 3 個專題來說明,如何利用 Python 開發專題,並且包括如何將專題包裝成執行檔。第 11 章則是如何利用 Python 來操弄 Arduino 的感測器與相關元件。最後第 12 章則是以MicroPython 來開發與應用 micro:bit 的相關元件。綜括而論,本書介紹Python程式語言在程式設計中的應用,並且配合實例來加以說明。
運算思維是面對問題以及解決問題的策略與方針,本書是以實務及理論兼容的方式來介紹程式語言,並且各章節均用淺顯易懂的文字與範例來說明程式設計中的設計策略。基本理念即是以「運算思維」為主軸,透過 Python 程式設計相關知能的學習,培養邏輯思考、系統化思考等運算思維;由範例 Python 程式設計與實作,增進運算思維的應用能力、解決問題能力、團隊合作以及創新思考能力。對於初次接觸程式設計的讀者,一定會有實質上的助益,對於已有相當基礎的程式設計者,這本書讀來仍會有許多令人豁然開朗之處。不過囿於個人知識能力有限,必有不少偏失及謬誤之處,願就教於先進學者,若蒙不吝指正,筆者必虛心學習,並於日後補正。
最後,要感謝家人讓我有時間在繁忙的研究、教學與服務之餘,還能夠全心地撰寫此書。
陳新豐 謹識
2022 年 03 月於國立屏東大學教育學系
再版序
《Python 程式設計入門與應用》這本書共分為 12 章,分別是〈程式設計與 Python〉、〈變數與資料型態〉、〈基本敘述〉、〈串列、元組、集合、字典〉、〈函式〉、〈套件〉、〈排序與搜尋〉、〈檔案與例外〉、〈圖形使用者介面〉、〈專題開發〉、〈Arduino〉與〈micro:bit〉等。全書的結構是以初學者學習程式設計的撰寫流程來加以安排,第 2 版除了更新 Python 與相關軟體至本書再版時最新之版本,新增微軟開發且跨平臺免費編輯器開發 Python 程式以及修正第 1 版中勘誤之處。
再版第 1 章的內容是簡介程式設計,並介紹...
目錄
Chapter01 程式設計與 Python
1.1 程式語言
1.2 Python 語言簡介
1.3 Python 開發環境
1.4 執行 Python 相關程式
1.5 Python 雲端開發環境
習題
Chapter02 變數與資料型態
2.1 變數
2.2 輸出與輸入
2.3 資料型態
2.4 運算式
習題
Chapter03 基本敘述
3.1 Python 程式碼
3.2 程式註解
3.3 判斷式
3.4 迴圈
習題
Chapter04 串列、元組、集合、字典
4.1 使用串列
4.2 讀取串列
4.3 搜尋串列
4.4 增刪串列
4.5 排序串列
4.6 串列常用方法
4.7 元組
4.8 集合
4.9 字典
習題
Chapter05 函式
5.1 自訂函式
5.2 數值函式
5.3 字串函式
習題
Chapter06 套件
6.1 套件
6.2 時間套件
6.3 亂數套件
6.4 繪圖套件
習題
Chapter07 排序與搜尋
7.1 演算法
7.2 排序
7.3 搜尋
7.4 遞迴
習題
Chapter08 檔案與例外
8.1 檔案
8.2 例外處理
習題
Chapter09 圖形使用者介面
9.1 GUI 程式介面
9.2 GUI 元件排列
9.3 GUI 選項建立
9.4 GUI 對話方塊
9.5 GUI 功能表
9.6 Canvas 繪製圖形
習題
Chapter10 專題開發
10.1 YouTube 影片下載器
10.2 音樂播放器
10.3 試題分析
10.4 建立執行檔
習題
Chapter11 Arduino
11.1 Arduino 基本介紹
11.2 Firmata 通訊協定
11.3 pySerial 函式庫
11.4 安裝 pyFirmata
11.5 觸發 LED 專案
習題
Chapter12 micro:bit
12.1 micro:bit 基本介紹
12.2 micro:bit 功能說明
12.3 micro:bit 開發工具
12.4 PythonEditor
12.5 MicroPython 指令
習題
Chapter01 程式設計與 Python
1.1 程式語言
1.2 Python 語言簡介
1.3 Python 開發環境
1.4 執行 Python 相關程式
1.5 Python 雲端開發環境
習題
Chapter02 變數與資料型態
2.1 變數
2.2 輸出與輸入
2.3 資料型態
2.4 運算式
習題
Chapter03 基本敘述
3.1 Python 程式碼
3.2 程式註解
3.3 判斷式
3.4 迴圈
習題
Chapter04 串列、元組、集合、字典
4.1 使用串列
4.2 讀取串列
4.3 搜尋串列
4.4 增刪串列
4.5 排序串列
4.6 串列常用方法
4.7 元組
4.8 集合
4.9 字典
習題
Chapter05 函式
5.1 自訂函式
5.2 數...
購物須知
退換貨說明:
會員均享有10天的商品猶豫期(含例假日)。若您欲辦理退換貨,請於取得該商品10日內寄回。
辦理退換貨時,請保持商品全新狀態與完整包裝(商品本身、贈品、贈票、附件、內外包裝、保證書、隨貨文件等)一併寄回。若退回商品無法回復原狀者,可能影響退換貨權利之行使或須負擔部分費用。
訂購本商品前請務必詳閱退換貨原則。