本書分為6章,系統(tǒng)全面地介紹了Python語言的基礎(chǔ)語法、基本數(shù)據(jù)類型與組合數(shù)據(jù)類型;緮(shù)據(jù)類型包括整數(shù)、浮點(diǎn)數(shù)、字符串、布爾值和空值;組合數(shù)據(jù)類型包括序列類型(字符串、列表和元組)、字典類型和集合類型。
本書包括IT行業(yè)的14個故事與話題,例如伊莉莎程序、身份證的數(shù)字化、計(jì)算機(jī)加密算法等;設(shè)計(jì)了110個案例,例如猜數(shù)游戲、繪制小花朵、計(jì)算機(jī)造句等;列舉了4個算法分析的案例,分別是凱撒加密法、換位加密法、英文小說的詞頻統(tǒng)計(jì)以及字典加密器。
1. 14個IT行業(yè)的趣味故事,讓孩子輕松走進(jìn)編程的世界;
2. 110個案例,提供代碼及視頻資源,調(diào)試運(yùn)行一目了然;
3. 44個課后習(xí)題,附帶參考答案,鞏固練習(xí),舉一反三;
4. 6章配套PPT文件,重點(diǎn)內(nèi)容全覆蓋,培訓(xùn)上課好幫手。
1.14個IT行業(yè)的趣味故事,讓孩子輕松走進(jìn)編程的世界;
2.110個案例,提供代碼及視頻資源,調(diào)試運(yùn)行一目了然;
3.44個課后習(xí)題,附帶參考答案,鞏固練習(xí),舉一反三;
4.6章配套PPT文件,重點(diǎn)內(nèi)容全覆蓋,培訓(xùn)上課好幫手。
張霞,現(xiàn)就職于深圳職業(yè)技術(shù)學(xué)院人工智能學(xué)院,副教授,長期從事Java和Python編程語言教學(xué)工作。作為主講教師,參加了校精品課程、省部級資源共享課、國家精品課程的教學(xué)工作;作為軟件專業(yè)骨干教師,連續(xù)多年為企業(yè)和全國高校教師進(jìn)行IT技術(shù)培訓(xùn)。有軟件著作權(quán)3項(xiàng),發(fā)表了多篇教研論文和科研核心期刊論文,編寫了Java、Android、Python等編程類教材6本。曾獲全國教育教學(xué)信息化大獎賽二等獎,廣東省計(jì)算機(jī)教育軟件評審活動二等獎。所指導(dǎo)的學(xué)生曾獲“藍(lán)橋杯”大賽國家三等獎、廣東省一等獎,以及全國高職高!鞍l(fā)明杯”大學(xué)生創(chuàng)新創(chuàng)業(yè)大賽銅獎等獎項(xiàng)。
劉穎,現(xiàn)就職于深圳職業(yè)技術(shù)學(xué)院人工智能學(xué)院,講師,負(fù)責(zé)多門專業(yè)課程的教學(xué)工作,廣受學(xué)生好評。曾發(fā)表多篇與高職教育學(xué)有關(guān)的教研論文,其中《淺析中國高職教育的部分發(fā)展問題及解決辦法》獲得2004年廣東省高教學(xué)會科研成果三等獎。
第1章 打開編程之門 1
1.1 為什么要學(xué)編程 1
1.1.1 什么是編程 1
1.1.2 為什么要學(xué)Python編程 3
1.2 Python語言的誕生 4
1.2.1 Python語言的由來 4
1.2.2 Python應(yīng)用的流行領(lǐng)域 4
1.3 創(chuàng)建Python基礎(chǔ)開發(fā)環(huán)境 6
1.3.1 安裝Python 6
1.3.2 Python解釋器 9
1.3.3 交互模式 9
1.3.4 代碼編輯器 10
1.4 編寫Python程序 12
1.4.1 編寫.py程序 12
1.4.2 查看日期和時間 13
1.4.3 定位和修復(fù)錯誤 14
1.4.4 更多Python開發(fā)工具 16
1.4.5 Python在線幫助文檔 18
1.5 你學(xué)到了什么 19
第 2章 有趣的人機(jī)對話與猜數(shù)游戲 20
2.1 有趣的人機(jī)對話 20
2.1.1 編程IPO方法 20
2.1.2 人機(jī)對話程序 21
2.1.3 程序背后的故事—ELIZA 23
2.1.4 變量 24
2.1.5 縮進(jìn) 26
2.1.6 字符串類型 27
2.1.7 替換函數(shù)replace() 28
2.1.8 數(shù)值類型 29
2.1.9 輸出函數(shù)print() 31
2.1.10 輸入函數(shù)input() 32
2.1.11 輸出的格式問題 33
2.1.12 while循環(huán)結(jié)構(gòu) 34
2.2 請輸入密碼 39
2.2.1 程序背后的故事—計(jì)算機(jī)密碼 39
2.2.2 if分支語句 40
2.2.3 多分支結(jié)構(gòu) 41
2.2.4 表達(dá)式 43
2.3 猜數(shù)游戲 45
2.3.1 猜數(shù)游戲程序 46
2.3.2 程序背后的故事—隨機(jī)數(shù) 47
2.3.3 再談while循環(huán) 48
2.4 相關(guān)知識閱讀 49
2.4.1 字符編碼 49
2.4.2 字符串轉(zhuǎn)義符 50
2.4.3 布爾值 51
2.4.4 注釋 51
2.4.5 常見的打字錯誤 52
2.4.6 讓代碼盡可能簡單 52
2.5 你學(xué)到了什么 53
第3章 一切皆可運(yùn)算 54
3.1 看看身份證 54
3.1.1 身份證號碼 54
3.1.2 程序背后的故事—身份證的數(shù)字化 55
3.1.3 序列 55
3.1.4 索引 55
3.1.5 切片 57
3.2 輸出漂亮的唐詩 58
3.2.1 程序背后的故事—一切皆可運(yùn)算 59
3.2.2 成員運(yùn)算符in 60
3.2.3 for循環(huán) 60
3.2.4 3個引號 62
3.2.5 函數(shù)str() 62
3.2.6 比較字符大小 64
3.3 字母替代游戲 65
3.3.1 程序背后的故事—凱撒加密法 66
3.3.2 加密算法 68
3.3.3 解密算法 69
3.3.4 查找函數(shù)find() 69
3.3.5 解密程序 70
3.3.6 暴力破譯法 70
3.4 相關(guān)語法閱讀 71
3.4.1 空格處理 71
3.4.2 常用字母轉(zhuǎn)換 71
3.4.3 對應(yīng)的字母判斷方法 72
3.4.4 字符串格式化 72
3.5 你學(xué)到了什么 72
第4章 列表,還是列表 74
4.1 解同余式 74
4.1.1 程序背后的故事—韓信點(diǎn)兵 74
4.1.2 計(jì)數(shù)函數(shù)range() 75
4.1.3 列表類型 77
4.1.4 遍歷列表 81
4.1.5 循環(huán)嵌套 82
4.2 評委打分 84
4.2.1 程序背后的故事—計(jì)算機(jī)模擬 86
4.2.2 列表排序 86
4.2.3 家人與朋友列表 89
4.2.4 神奇的食物列表 91
4.2.5 有趣的計(jì)算機(jī)造句 92
4.3 換位加密 93
4.3.1 換位加密算法 95
4.3.2 列表的運(yùn)算符 96
4.3.3 連接函數(shù)join() 97
4.3.4 math庫 98
4.3.5 換位解密算法 99
4.3.6 程序背后的故事—加密算法 100
4.4 相關(guān)知識閱讀 101
4.4.1 序列類型 101
4.4.2 元組 102
4.5 你學(xué)到了什么 102
第5章 程序也會搭積木 103
5.1 繪制小花朵 103
5.1.1 程序背后的故事—Python標(biāo)準(zhǔn)庫 104
5.1.2 turtle繪圖庫 105
5.1.3 調(diào)用函數(shù)繪制小花朵 106
5.1.4 定義函數(shù)與調(diào)用函數(shù) 107
5.1.5 函數(shù)的參數(shù)傳遞 109
5.1.6 蟒蛇繪制 110
5.2 向列表中的每個人發(fā)出問候 112
5.2.1 傳遞一個列表作為參數(shù) 113
5.2.2 參數(shù)的默認(rèn)值 114
5.2.3 有返回值的函數(shù) 115
5.2.4 全局變量和局部變量 116
5.3 繪制科赫雪花 117
5.3.1 繪制科赫雪花 118
5.3.2 程序背后的故事—分形幾何學(xué) 119
5.3.3 遞歸函數(shù) 120
5.3.4 繪制分型樹 121
5.4 程序模塊化 123
5.4.1 制作模塊文件 123
5.4.2 導(dǎo)入模塊文件 124
5.5 相關(guān)知識閱讀 125
5.5.1 匿名函數(shù)lambda() 125
5.5.2 將lambda()函數(shù)賦值給一個變量 126
5.6 你學(xué)到了什么 127
第6章 字典是個寶 128
6.1 字典 128
6.1.1 創(chuàng)建字典 129
6.1.2 刪除字典 131
6.1.3 字典背后—鍵值對與數(shù)據(jù)結(jié)構(gòu) 132
6.1.4 遍歷字典 135
6.1.5 排序問題 138
6.1.6 字典和列表對比 144
6.2 文件的讀與寫 145
6.2.1 文件的打開與讀寫 146
6.2.2 pickle庫與數(shù)據(jù)存儲 150
6.2.3 Python的異常處理 151
6.3 英文小說的詞頻統(tǒng)計(jì) 154
6.3.1 詞頻統(tǒng)計(jì)的IPO描述 154
6.3.2 詞頻統(tǒng)計(jì)的算法 155
6.3.3 詞頻統(tǒng)計(jì)的完整程序 156
6.3.4 統(tǒng)計(jì)人物出場次數(shù) 157
6.4 創(chuàng)建一個加密字典 158
6.4.1 創(chuàng)建自己的加密器 159
6.4.2 用字典實(shí)現(xiàn)加密算法 160
6.4.3 解密和解密字典 160
6.4.4 加密一個文本文件 161
6.4.5 程序背后的故事—算法與圖靈獎 162
6.5 爬蟲之自制英漢字典 163
6.5.1 創(chuàng)建一個單詞字典 163
6.5.2 爬蟲的背后—大受歡迎的第三方庫 164
6.5.3 第三方庫的安裝 166
6.5.4 爬蟲之?dāng)?shù)據(jù)提取自動化 167
6.5.5 爬蟲之?dāng)?shù)據(jù)存儲自動化 171
6.6 集合類型 173
6.6.1 組合數(shù)據(jù)類型 173
6.6.2 集合 174
6.7 你學(xué)到了什么 178
附錄A Python關(guān)鍵字和內(nèi)置函數(shù) 179
附錄B 習(xí)題參考答案 181
附錄C Python科學(xué)繪圖樣本 199