Python程序設(shè)計(jì)與應(yīng)用

-
【作 者】主編 張廣淵
【I S B N 】978-7-5170-7480-9
【責(zé)任編輯】張玉玲
【適用讀者群】本專通用
【出版時(shí)間】2019-03-20
【開 本】16開
【裝幀信息】平裝(光膜)
【版 次】第1版第1次印刷
【頁 數(shù)】220
【千字?jǐn)?shù)】335
【印 張】13.75
【定 價(jià)】¥38
【叢 書】應(yīng)用型高等院校教學(xué)改革創(chuàng)新教材
【備注信息】
簡(jiǎn)介
本書特色
前言
章節(jié)列表
精彩閱讀
下載資源
相關(guān)圖書
本書是一本基礎(chǔ)性強(qiáng)、可讀性好、適合入門的Python語言教學(xué)教材。讀者通過本書的學(xué)習(xí),能夠快速掌握Python語言的入門知識(shí),并通過項(xiàng)目實(shí)踐學(xué)習(xí),了解項(xiàng)目的基本開發(fā)流程和常用第三方庫的使用。
本書內(nèi)容分為兩大部分:第一部分是Python語言編程基礎(chǔ)知識(shí),共10章,第1章是緒論,第2章是Python編程環(huán)境搭建,第3章是Python程序設(shè)計(jì)入門,第4章是程序控制,第5章是列表、元組、字典、集合,第6章是函數(shù),第7章是模塊,第8章是面向?qū)ο蟪绦蛟O(shè)計(jì),第9章是文件,第10章是異常處理;第二部分是項(xiàng)目實(shí)踐,共有4個(gè)小項(xiàng)目,分別是根據(jù)函數(shù)繪制曲線,分析微信好友數(shù)據(jù),網(wǎng)頁數(shù)據(jù)下載與處理,Django+MySQL Web開發(fā)。
本書既面向計(jì)算機(jī)軟件編程零基礎(chǔ)和剛?cè)腴T的讀者,也適用于具備一定基礎(chǔ)、開始學(xué)習(xí)第三方庫的使用和初級(jí)項(xiàng)目實(shí)施的讀者,還可作為參加全國(guó)計(jì)算機(jī)等級(jí)考試Python語言考試的參考用書。
可讀性好——通過淺顯易懂的語言結(jié)合豐富的配圖,使得編程初學(xué)者能夠快速入門掌握 Python 語言。
注重實(shí)踐——通過設(shè)計(jì)項(xiàng)目實(shí)踐環(huán)節(jié),使初學(xué)者能夠使用編程思維解決問題,并通過項(xiàng)目實(shí)踐了解項(xiàng)目的基本開發(fā)流程和常用第三方庫的使用。
適應(yīng)面廣——既面向計(jì)算機(jī)軟件編程零基礎(chǔ)和剛?cè)腴T的讀者,也適用于具備一定基礎(chǔ)、開始學(xué)習(xí)第三方庫的使用和初級(jí)項(xiàng)目實(shí)施的讀者。
前 言
Python語言已成為目前最受歡迎的計(jì)算機(jī)語言之一,其生態(tài)鏈應(yīng)用也越來越廣泛,從繪制圖形到詞頻統(tǒng)計(jì),從圖像處理到Web開發(fā),從科學(xué)計(jì)算到嵌入式開發(fā),越來越多的場(chǎng)景可以使用Python語言來解決。尤其是人工智能時(shí)代的到來,調(diào)用方便、科學(xué)計(jì)算功能強(qiáng)大的Python依舊在AI領(lǐng)域擁有最強(qiáng)大的競(jìng)爭(zhēng)力,可以說,Python語言就是人工智能領(lǐng)域的BASIC語言。
本書的編寫旨在推動(dòng)Python語言教學(xué)作為應(yīng)用型本科大學(xué)相關(guān)專業(yè)的公共基礎(chǔ)課程來進(jìn)行教授。本書內(nèi)容分為兩大部分:第一部分是Python語言編程基礎(chǔ)知識(shí),通過淺顯易懂的語言結(jié)合豐富的配圖,使得編程初學(xué)者能夠快速入門掌握Python語言;第二部分是項(xiàng)目實(shí)踐,通過設(shè)計(jì)項(xiàng)目實(shí)踐環(huán)節(jié),初步展現(xiàn)解決問題的過程和方法,使初學(xué)者能夠使用編程思維解決問題,并通過項(xiàng)目實(shí)施了解簡(jiǎn)單項(xiàng)目的開發(fā)流程,掌握一些常用第三方庫的使用。因此,本書既面向計(jì)算機(jī)軟件編程零基礎(chǔ)和剛?cè)腴T的讀者,也適用于具備一定基礎(chǔ)、開始學(xué)習(xí)第三方庫的使用和初級(jí)項(xiàng)目實(shí)施的讀者。
本書依據(jù)全國(guó)計(jì)算機(jī)等級(jí)考試Python語言考試大綱在內(nèi)容上做了對(duì)應(yīng)的編排,覆蓋了大綱所要求掌握的內(nèi)容范圍,在基礎(chǔ)知識(shí)部分各章的后面都附有大量的習(xí)題可供練習(xí),可作為參加全國(guó)計(jì)算機(jī)等級(jí)考試Python語言考試的參考用書。
本書第一部分基礎(chǔ)知識(shí)共分10章。第1章闡述了計(jì)算機(jī)的基本概念、軟硬件的發(fā)展歷史和現(xiàn)狀,并對(duì)Python語言的基本概念和特點(diǎn)作了介紹;第2章介紹了Python編程環(huán)境的搭建,主要包括Anaconda、IDLE和PyCharm三種常用環(huán)境的搭建和使用;第3章介紹了Python語言基本內(nèi)容,主要包括標(biāo)識(shí)符、基本運(yùn)算、賦值、字符串操作和內(nèi)置函數(shù)的介紹;第4章主要介紹選擇和循環(huán)等程序控制結(jié)構(gòu);第5章介紹了Python語言常用的四種結(jié)構(gòu),包括列表、元組、字典和集合;第6章介紹了函數(shù)的使用、參數(shù)的傳遞以及全局變量和局部變量的使用;第7章介紹了模塊、包和第三方庫的引入和使用;第8章對(duì)面向?qū)ο蟪绦蛟O(shè)計(jì)方法進(jìn)行了描述;第9章介紹了文件的基本操作,并對(duì)CSV文件和Excel文件在Python中的讀寫調(diào)用進(jìn)行了詳細(xì)敘述;第10章專門圍繞異常處理進(jìn)行了詳細(xì)描述。
第二部分項(xiàng)目實(shí)踐分4個(gè)項(xiàng)目進(jìn)行練習(xí)。項(xiàng)目一主要是圍繞如何繪制圖形以及如何進(jìn)行項(xiàng)目發(fā)布的任務(wù)來進(jìn)行turtle、matplotlib和項(xiàng)目打包發(fā)布介紹;項(xiàng)目二設(shè)計(jì)實(shí)現(xiàn)對(duì)微信好友數(shù)據(jù)進(jìn)行分析和繪制圖表的任務(wù);項(xiàng)目三設(shè)計(jì)了一個(gè)網(wǎng)頁爬蟲任務(wù),通過項(xiàng)目實(shí)施實(shí)現(xiàn)對(duì)urllib、etree、xpath、time、Pandas、jieba、wordCloud等第三方庫的介紹和使用;項(xiàng)目四基于Django框架和MySQL數(shù)據(jù)庫,實(shí)現(xiàn)了一個(gè)簡(jiǎn)單的基于動(dòng)態(tài)數(shù)據(jù)展示的Web應(yīng)用。
本書第1、10章由張廣淵編寫,第2、9章、項(xiàng)目1和項(xiàng)目2由倪燃編寫,第3、4章由吳昌平編寫,第5、8章和項(xiàng)目3由李鳳云編寫,第6、7章和項(xiàng)目4由朱振方編寫,全書由張廣淵統(tǒng)稿。
本書內(nèi)容基于Python 3編寫,所有源程序代碼均在Python 3編程環(huán)境下運(yùn)行通過。Python計(jì)算生態(tài)和資源可從https://github.com/vinta/awesome-Python獲得。
由于編者水平有限,在本書編寫過程中難免出現(xiàn)錯(cuò)誤和疏漏,懇請(qǐng)廣大讀者批評(píng)指正。
編 者
2018年12月
前言
第一部分 基礎(chǔ)知識(shí)
第1章 緒論 1
1.1 計(jì)算機(jī)發(fā)展歷史 1
1.1.1 計(jì)算機(jī)的歷史 1
1.1.2 個(gè)人計(jì)算機(jī)的歷史 2
1.2 軟硬件基本知識(shí) 3
1.2.1 馮•諾依曼結(jié)構(gòu) 3
1.2.2 計(jì)算機(jī)軟件發(fā)展 7
1.3 常用編程語言介紹 9
1.3.1 機(jī)器語言 9
1.3.2 匯編語言 10
1.3.3 高級(jí)程序設(shè)計(jì)語言 10
1.4 Python語言簡(jiǎn)介 11
1.4.1 Python語言的歷史 11
1.4.2 Python語言的特點(diǎn) 12
1.4.3 Python語言應(yīng)用 12
練習(xí)一 13
第2章 Python編程環(huán)境搭建 15
2.1 Anaconda安裝與Python編程界面 15
2.1.1 Anaconda安裝過程 15
2.1.2 Anaconda中的Python編輯器Spyder 19
2.2 Anaconda其他常用功能 24
2.2.1 常用應(yīng)用程序及pip模塊安裝命令 24
2.2.2 常用科學(xué)包介紹 25
2.3 了解IDLE開發(fā)環(huán)境 30
2.3.1 啟動(dòng)IDLE 31
2.3.2 使用IDLE編寫Python程序 32
2.4 使用PyCharm編輯器 33
2.4.1 下載安裝 34
2.4.2 新建項(xiàng)目 34
2.4.3 配置PyCharm 36
練習(xí)二 40
第3章 Python程序設(shè)計(jì)入門 41
3.1 標(biāo)識(shí)符、關(guān)鍵字和數(shù)據(jù)類型 41
3.1.1 標(biāo)識(shí)符、關(guān)鍵字 41
3.1.2 標(biāo)準(zhǔn)數(shù)據(jù)類型 43
3.2 常量與變量 43
3.2.1 常量 43
3.2.2 變量 45
3.3 運(yùn)算符與表達(dá)式 46
3.3.1 算術(shù)運(yùn)算符 46
3.3.2 關(guān)系運(yùn)算符 47
3.3.3 邏輯運(yùn)算符 47
3.3.4 位運(yùn)算符 48
3.3.5 賦值運(yùn)算符 48
3.3.6 成員運(yùn)算符 49
3.3.7 標(biāo)識(shí)(身份)運(yùn)算符 49
3.3.8 運(yùn)算符優(yōu)先級(jí) 49
3.4 源程序書寫風(fēng)格 50
3.4.1 注釋 50
3.4.2 縮進(jìn) 50
3.4.3 語句換行 50
3.4.4 必要的空格與空行 51
3.5 賦值語句 51
3.6 基本輸入/輸出 51
3.6.1 Python基本輸入 51
3.6.2 Python基本輸出 52
3.7 字符串操作 56
3.7.1 字符串的存儲(chǔ)方式 56
3.7.2 字符串切片 56
3.7.3 字符串運(yùn)算符 57
3.8 Python內(nèi)置函數(shù) 58
3.8.1 Python數(shù)學(xué)函數(shù) 58
3.8.2 字符串函數(shù) 59
3.8.3 類型判斷和類型間轉(zhuǎn)換 61
練習(xí)三 62
第4章 程序控制 66
4.1 選擇結(jié)構(gòu) 66
4.2 循環(huán)結(jié)構(gòu) 70
4.2.1 while語句 70
4.2.2 for語句 71
4.2.3 break語句、continue語句和
pass語句 73
4.2.4 循環(huán)嵌套 74
練習(xí)四 75
第5章 列表、元組、字典、集合 78
5.1 列表 78
5.1.1 列表的創(chuàng)建與刪除 79
5.1.2 列表元素的訪問 79
5.1.3 用列表的基本操作實(shí)現(xiàn)案例任務(wù) 81
5.1.4 列表的高級(jí)操作 82
5.1.5 用列表的高級(jí)操作實(shí)現(xiàn)案例任務(wù) 82
5.2 元組 83
5.2.1 元組的創(chuàng)建與刪除 83
5.2.2 訪問元組的元素 84
5.2.3 元組的高級(jí)操作 84
5.2.4 用元組實(shí)現(xiàn)案例任務(wù) 85
5.3 字典 86
5.3.1 字典的創(chuàng)建和刪除 86
5.3.2 字典元素的基本操作 87
5.3.3 用字典實(shí)現(xiàn)案例任務(wù) 88
5.3.4 字典的高級(jí)操作 90
5.4 集合 90
5.4.1 集合的基本操作 91
5.4.2 用集合實(shí)現(xiàn)案例任務(wù) 91
5.4.3 集合運(yùn)算 92
5.5 列表、元組、字典、集合的應(yīng)用小結(jié) 93
練習(xí)五 94
第6章 函數(shù) 97
6.1 函數(shù)的基本結(jié)構(gòu) 97
6.1.1 一個(gè)最簡(jiǎn)單的函數(shù) 97
6.1.2 函數(shù)的語法結(jié)構(gòu) 97
6.1.3 函數(shù)的調(diào)用 98
6.1.4 return [表達(dá)式] 98
6.2 函數(shù)調(diào)用過程中的參數(shù)傳遞 99
6.2.1 必選參數(shù) 99
6.2.2 關(guān)鍵字參數(shù) 100
6.2.3 默認(rèn)參數(shù) 100
6.2.4 不定長(zhǎng)參數(shù) 101
6.3 匿名函數(shù) 102
6.3.1 匿名函數(shù)的定義 102
6.3.2 匿名函數(shù)的特征 102
6.3.3 匿名函數(shù)使用 103
6.4 局部變量和全局變量 104
6.4.1 變量的作用域 104
6.4.2 局部變量和全局變量 104
6.4.3 global和nonlocal關(guān)鍵字 105
6.5 系統(tǒng)內(nèi)置函數(shù)介紹 106
練習(xí)六 109
第7章 模塊 112
7.1 模塊概述 112
7.2 模塊的導(dǎo)入 113
7.2.1 直接使用import導(dǎo)入模塊 113
7.2.2 通過sys模塊導(dǎo)入自定義模塊
的path 115
7.2.3 通過pth文件找到自定義模塊 115
7.3 第三方庫的使用 116
7.4 包 116
7.4.1 引入包的原因 116
7.4.2 導(dǎo)入和使用包 117
練習(xí)七 118
第8章 面向?qū)ο蟪绦蛟O(shè)計(jì) 119
8.1 面向?qū)ο蟮某绦蛟O(shè)計(jì)思想 119
8.2 類的定義和使用 120
8.2.1 創(chuàng)建類和對(duì)象 120
8.2.2 數(shù)據(jù)成員 121
8.2.3 方法 122
8.3 類的繼承與方法重載 124
8.3.1 派生類的定義和使用 125
8.3.2 方法重載 126
8.4 面向?qū)ο蟪绦蛟O(shè)計(jì)應(yīng)用小結(jié) 127
練習(xí)八 128
第9章 文件 129
9.1 文件的基本操作 129
9.1.1 文件與文件對(duì)象 129
9.1.2 打開和關(guān)閉文件 130
9.1.3 文件寫入 132
9.1.4 順序讀取寫入文件的內(nèi)容 133
9.1.5 隨機(jī)讀取文件內(nèi)容的方法 136
9.1.6 綜合實(shí)例——使用文件來保存游戲 138
9.2 讀取存儲(chǔ)CSV格式 142
9.2.1 CSV文件格式 142
9.2.2 常規(guī)CSV文件存取過程 142
9.2.3 使用CSV模塊讀寫文件 144
9.3 其他類型文件的讀取與寫入 145
9.3.1 xlrd模塊讀取Excel文件 145
9.3.2 xlwt模塊寫Excel文件 146
9.4 使用OS模塊處理文件和目錄 146
9.4.1 os模塊常用方法 147
9.4.2 遍歷目錄及子目錄 147
9.5 文件使用綜合實(shí)例 148
練習(xí)九 150
第10章 異常處理 152
10.1 什么是異常? 152
10.2 如何處理異常? 154
10.3 處理多個(gè)異常 155
練習(xí)十 156
第二部分 項(xiàng)目實(shí)踐
項(xiàng)目1 根據(jù)函數(shù)繪制曲線 158
11.1 主要問題 158
11.1.1 turtle模塊繪制坐標(biāo)系 158
11.1.2 使用NumPy模塊獲得散點(diǎn)數(shù)列 160
11.1.3 2D繪圖模塊turtle動(dòng)畫展示曲線 160
11.2 項(xiàng)目實(shí)施 161
11.2.1 程序流程 161
11.2.2 數(shù)據(jù)代碼 162
11.2.3 運(yùn)行結(jié)果 164
11.3 項(xiàng)目擴(kuò)展 165
11.3.1 使用matplotlib顯示靜態(tài)曲線 165
11.3.2 打包成exe文件 166
項(xiàng)目2 分析微信好友數(shù)據(jù) 168
12.1 項(xiàng)目準(zhǔn)備 168
12.1.1 微信模塊wxpy 168
12.1.2 繪圖模塊matplotlib.pyplot 171
12.2 項(xiàng)目實(shí)施 174
12.2.1 程序流程 174
12.2.2 數(shù)據(jù)處理 175
12.2.3 全部代碼 176
12.2.4 運(yùn)行結(jié)果 177
項(xiàng)目3 網(wǎng)頁數(shù)據(jù)下載與處理 179
13.1 使用urllib爬取數(shù)據(jù) 179
13.2 相關(guān)知識(shí)點(diǎn) 180
13.2.1 網(wǎng)絡(luò)請(qǐng)求與響應(yīng) 180
13.2.2 字符編碼與解碼 181
13.2.3 HTML 182
13.3 用etree和xpath提取數(shù)據(jù) 183
13.4 將提取數(shù)據(jù)的數(shù)據(jù)存到列表中 186
13.5 將列表中的數(shù)據(jù)存為CSV文件和
TXT文件 186
13.5.1 用time庫獲取日期時(shí)間 187
13.5.2 使用Pandas庫實(shí)現(xiàn)數(shù)據(jù)處理 187
13.6 分詞數(shù)據(jù)和詞云數(shù)據(jù)分析 189
13.6.1 使用jieba庫實(shí)現(xiàn)分詞 190
13.6.2 使用wordcloud庫生成詞云 190
13.6.3 使用matplotlib庫實(shí)現(xiàn)詞云
的可視化 191
項(xiàng)目4 Django+MySQL Web開發(fā) 193
14.1 概述 193
14.2 Django簡(jiǎn)介 195
14.2.1 框架介紹 195
14.2.2 架構(gòu)設(shè)計(jì) 195
14.2.3 工作機(jī)制 196
14.2.4 部署 197
14.2.5 文檔 197
14.3 MVC框架介紹 197
14.4 Python Django的安裝 198
14.5 使用PyCharm和Django創(chuàng)建簡(jiǎn)單的
Web服務(wù)器 198
14.5.1 軟件安裝 199
14.5.2 PyCharm新建Django工程 199
14.5.3 項(xiàng)目啟動(dòng) 200
14.5.4 Web工程添加頁面 201
14.5.5 動(dòng)態(tài)數(shù)據(jù)顯示 203
14.5.6 數(shù)據(jù)庫準(zhǔn)備 204
14.5.7 連接數(shù)據(jù)庫 207
附錄 全國(guó)計(jì)算機(jī)等級(jí)考試二級(jí)Python語言
程序設(shè)計(jì)考試大綱(2018年版) 211
- 嵌入式人工智能技術(shù)應(yīng)用(數(shù)字教材) [主編 胡娜 楊國(guó)勇 晏廷榮]
- Java面向?qū)ο蟪绦蛟O(shè)計(jì) [主編 姜春磊 陳虹潔]
- C語言程序設(shè)計(jì)實(shí)驗(yàn)指導(dǎo)與實(shí)訓(xùn)(第二版) [主編 倪燃]
- Python程序設(shè)計(jì)及實(shí)踐教程 [肖朝暉]
- C語言程序設(shè)計(jì) [魏琴 劉祖珉 趙仕波 肖陽春]
- C語言程序設(shè)計(jì)實(shí)驗(yàn)教程 [張小剛 司春景]
- 電氣控制與PLC程序設(shè)計(jì)(第二版) [胡冠山]
- Java Web項(xiàng)目化設(shè)計(jì)實(shí)踐教程 [邱云 曾陳萍]
- 人工智能開發(fā)框架應(yīng)用 [主編 王明超 蘆婭云]
- C語言程序設(shè)計(jì)(第三版) [主編 丁紅 王立新 蔡開立]
- 民航客艙服務(wù)實(shí)用英語教程 [主編 田靜 徐亞玲]
- Python數(shù)據(jù)分析 [主編 馮志輝 趙磊 李放]
- 大學(xué)信息技術(shù) [曾翰穎 編著]
- Python程序設(shè)計(jì)與應(yīng)用(第二版) [主編 張廣淵]
- 多維視域下的高校籃球教學(xué)創(chuàng)新研究 [張利超 李寧 著]
- 創(chuàng)新創(chuàng)業(yè)訓(xùn)練實(shí)踐教程 [主編 王日華 陳武 黃喆誠(chéng)]
- 實(shí)用運(yùn)籌學(xué) [主編 邢育紅 于晉臣]
- 電子技術(shù)(第二版) [主編 覃愛娜 李飛]
- C程序設(shè)計(jì)實(shí)踐教程 [劉衛(wèi)國(guó)]
- C程序設(shè)計(jì)(慕課版) [劉衛(wèi)國(guó)]
- 程序設(shè)計(jì)基礎(chǔ)實(shí)踐教程(C/C++語言版) [張桂芬 葛麗娜]
- C++案例項(xiàng)目精講 [主編 楊國(guó)興]
- 勞動(dòng)爭(zhēng)議處理實(shí)務(wù) [主編 王秀卿 羅靜]
- 工程數(shù)學(xué) [主編 郭立娟 王海]
- 語音識(shí)別理論與實(shí)踐 [主編 莫宏偉]
- 武術(shù)基礎(chǔ)教程 [主編 李代勇 謝志民]
- 計(jì)算機(jī)網(wǎng)絡(luò)實(shí)訓(xùn)教程 [主編 張浩軍 趙玉娟]
- 畫法幾何與機(jī)械制圖習(xí)題集(多學(xué)時(shí)) [主編 趙軍]
- SwiftUI完全開發(fā) [李智威 著]
- 電工電子技術(shù)基礎(chǔ) [主編 劉 軍 楊國(guó)龍 劉天成]
- 用戶名: 密碼:
- 匿名?
- 注冊(cè)
- 生活經(jīng)管more>>
- 電氣控制與PLC程序設(shè)計(jì)(第二版)
- 信電類專門用途英語教程
- 機(jī)械制圖
- 高等數(shù)學(xué)(下冊(cè))
- 網(wǎng)頁設(shè)計(jì)與制作
- 交通類專門用途英語教程
- 土木類專門用途英語教程
- 計(jì)算機(jī)輔助設(shè)計(jì)與繪圖(第二版)
- Python程序設(shè)計(jì)應(yīng)用教程
- 計(jì)算機(jī)組成原理
- 大學(xué)英語4
- 高等數(shù)學(xué)(上冊(cè))
- C程序設(shè)計(jì)實(shí)用教程——基于問題驅(qū)動(dòng)模
- 土木工程CAD教程
- C語言程序設(shè)計(jì)實(shí)驗(yàn)指導(dǎo)與實(shí)訓(xùn)
- 大學(xué)英語3