Python程序設(shè)計基礎(chǔ)與應用
定 價:49 元
叢書名:高等教育規(guī)劃教材
- 作者:董付國
- 出版時間:2018/9/1
- ISBN:9787111606178
- 出 版 社:機械工業(yè)出版社
- 中圖法分類:TP311.561
- 頁碼:
- 紙張:膠版紙
- 版次:
- 開本:16開
《Python程序設(shè)計基礎(chǔ)與應用》是一本系統(tǒng)介紹Python程序開發(fā)與應用的教程。本書共15章,主要包括Python編程基礎(chǔ)(1~11章)和Python開發(fā)應用(12~15章)兩部分內(nèi)容,編程基礎(chǔ)部分通過眾多案例對Python程序設(shè)計的概念加以解釋,開發(fā)應用部分介紹了tkinter編程、網(wǎng)絡(luò)爬蟲、數(shù)據(jù)分析和數(shù)據(jù)可視化4個方面的Python核心應用。本書全部代碼適用于Python 3.5、Python 3.6以及更高版本。
本書可以作為非計算機專業(yè)研究生、本科、?瞥绦蛟O(shè)計課程教材,也可作為計算機專業(yè)本、專科程序設(shè)計基礎(chǔ)課程教材,以及Python愛好者自學用書。
《Python程序設(shè)計基礎(chǔ)與應用》配有教學資源(包括PPT、源碼、大綱、教案、習題答案),需要的教師可登錄www.cmpedu.com免費注冊,審核通過后下載,或聯(lián)系編輯索。≦Q:2966938356,電話:010-88379739)。
知名Python教育者董付國老師新作
《Python程序設(shè)計基礎(chǔ)與應用》內(nèi)容言簡意賅,案例豐富,內(nèi)容涵蓋python編程基礎(chǔ)及核心應用,配套資源超全(包括教學PPT、源碼、大綱、教案、習題答案),部分內(nèi)容全彩呈現(xiàn)。
《Python程序設(shè)計基礎(chǔ)與應用》全部代碼適用于Python 3.5、Python 3.6以及更高版本。
Python入門,有這一本就夠了!
前 言
Python是由Guido van Rossum于1991年推出的第一個公開發(fā)行版本,迅速得到了各行業(yè)人士的青睞。經(jīng)過20多年的發(fā)展,已經(jīng)滲透到統(tǒng)計分析、移動終端開發(fā)、科學計算可視化、系統(tǒng)安全、逆向工程、軟件測試與軟件分析、圖形圖像處理、人工智能、機器學習、深度學習、游戲設(shè)計與策劃、網(wǎng)站開發(fā)、數(shù)據(jù)爬取與大數(shù)據(jù)處理、密碼學、系統(tǒng)運維、音樂編程、影視特效制作、計算機輔助教育、醫(yī)藥輔助設(shè)計、天文信息處理、化學與生物信息處理、神經(jīng)科學與心理學、自然語言處理、電子電路設(shè)計、電子取證、樹莓派等幾乎所有專業(yè)和領(lǐng)域,在黑客領(lǐng)域更是多年來一直擁有霸主地位。與此同時,Python語言在各大編程語言排行榜上的位次也是逐年上升,被TIOBE網(wǎng)站評為2010年年度語言;在IEEESpectrum 2017編程語言排行榜上則名列榜首,排在了第一位。
Python是一門免費、開源、跨平臺的高級動態(tài)編程語言,支持命令式編程、函數(shù)式編程,完全支持面向?qū)ο蟪绦蛟O(shè)計,擁有大量功能強大的內(nèi)置對象、標準庫,以及涉及各行業(yè)領(lǐng)域的擴展庫,使得各領(lǐng)域的工程師、科研人員、策劃人員和管理人員能夠快速實現(xiàn)和驗證自己的思路、創(chuàng)意或者推測,還有更多人喜歡用Python寫個小腳本來完成自己工作中的一些小任務(wù)。在有些編程語言中需要編寫大量代碼才能實現(xiàn)的功能,在Python中只需要幾行代碼,大幅度減少了代碼量,更加容易維護。Python用戶只需要把主要精力放在業(yè)務(wù)邏輯的設(shè)計與實現(xiàn)上,在開發(fā)速度和運行效率之間達到了完美的平衡,其精妙之處令人擊節(jié)贊嘆。
一個好的Python程序不僅是正確的,更是簡潔的、直觀的、漂亮的、優(yōu)雅的、方便人們閱讀的,整個代碼處處體現(xiàn)著美,讓人賞心悅目。Python代碼對布局要求非常嚴格,尤其是使用縮進來體現(xiàn)代碼的邏輯關(guān)系,這一點硬性要求非常有利于學習者和程序員養(yǎng)成一個良好的、嚴謹?shù)牧晳T。除了能夠快速解決問題之外,代碼布局要求嚴格也是Python被廣泛選作教學語言的重要原因。
早在多年前Python就已經(jīng)成為卡耐基梅隆大學、麻省理工學院、加州大學伯克利分校、哈佛大學、多倫多大學等國外很多大學計算機專業(yè)或非計算機專業(yè)的程序設(shè)計入門教學語言。近幾年來國內(nèi)有幾百所高等院校的多個專業(yè)陸續(xù)開設(shè)了Python程序設(shè)計有關(guān)課程,并且這個數(shù)量還在持續(xù)快速增加。目前來看,選擇使用Python作為程序設(shè)計入門教學語言或者作為各專業(yè)擴展課程,無疑是一個非常明智的選擇。
內(nèi)容組織與閱讀建議
本書共15章,主要包括Python編程基礎(chǔ)(1~11章)和Python開發(fā)應用(12~15章)兩部分內(nèi)容,編程基礎(chǔ)部分通過眾多案例對Python程序設(shè)計的概念加以解釋,開發(fā)應用部分介紹了tkinter編程、網(wǎng)絡(luò)爬蟲、數(shù)據(jù)分析和數(shù)據(jù)可視化4個方面的Python核心應用。全部代碼適用于Python 3.5、Python 3.6以及更高版本。
第1章 概述。簡單介紹Python語言與版本、編程規(guī)范,擴展庫安裝方法,以及標準庫對象與擴展庫對象的導入與使用。
第2章 內(nèi)置對象運算符、表達式、關(guān)鍵字。講解Python常用內(nèi)置對象、運算符與表達式、常用內(nèi)置函數(shù)和Python關(guān)鍵字。
第3章 Python序列結(jié)構(gòu)。講解列表、列表推導式、切片操作,元組與生成器表達式,字典,集合和序列解包。
第4章 選擇結(jié)構(gòu)與循環(huán)結(jié)構(gòu)。講解條件表達式的常見形式,單分支、雙分支、多分支選擇結(jié)構(gòu)以及嵌套的選擇結(jié)構(gòu),for循環(huán)與while循環(huán),break與continue語句。
第5章 函數(shù)。講解函數(shù)定義與調(diào)用語法,不同類型的函數(shù)參數(shù),參數(shù)傳遞的序列解包,變量作用域,lambda表達式,生成器函數(shù)。
第6章 面向?qū)ο蟪绦蛟O(shè)計。講解類的定義與使用,數(shù)據(jù)成員與成員方法、屬性,繼承,特殊方法與運算符重載。
第7章 字符串。講解字符串編碼格式,轉(zhuǎn)義字符與原始字符串,字符串格式化的不同形式,字符串常用方法與操作,字符串常量,以及擴展庫jieba和pypinyin的用法等。
第8章 正則表達式。講解正則表達式語法,正則表達式模塊re的用法和match對象等。
第9章 文件內(nèi)容操作。講解文件操作基本知識,文本文件內(nèi)容操作方法,常用的二進制文件讀寫模塊,以及Excel、Word等常見類型文件的操作。
第10章 文件與文件夾操作。講解os、os.path與shutil這3個模塊的用法,以及遞歸遍歷并處理文件夾的原理。
第11章 異常處理結(jié)構(gòu)。介紹異常的常見表現(xiàn)形式,常用異常處理結(jié)構(gòu),以及斷言語句與上下文管理語句。
第12章 tkinter編程案例。通過模擬用戶登錄、選擇類組件應用、簡單畫圖程序、電子時鐘、屏幕顏色選擇器、抽獎式提問程序、簡易計算器程序、定時自動關(guān)閉的窗口等案例演示Python標準庫tkinter的用法。
第13章 網(wǎng)絡(luò)爬蟲入門與應用。介紹HTML和JavaScript基礎(chǔ),標準庫urllib以及擴展庫scrapy、BeautifulSoup4、requests和selenium在網(wǎng)絡(luò)爬蟲程序設(shè)計中的應用。
第14章 Python數(shù)據(jù)分析與處理。講解使用pandas庫進行數(shù)據(jù)分析的基本操作,數(shù)據(jù)分析案例與pandas的應用。
第15章 數(shù)據(jù)可視化。介紹使用Python擴展庫matplotlib進行數(shù)據(jù)可視化相關(guān)的技術(shù),包括折線圖、散點圖、餅狀圖、柱狀圖和雷達圖的繪制,以及坐標軸、圖例等設(shè)置。
本書適用讀者
本書可以作為(但不限于):
? 非計算機專業(yè)研究生、本科、?瞥绦蛟O(shè)計課程教材。
? 計算機專業(yè)程序設(shè)計基礎(chǔ)課程教材。
? Python愛好者自學用書。
配套資源
本書為選用教材的老師提供教學PPT、源碼、大綱、教案、習題答案等全套教學資源,可通過微信公眾號Python小屋獲取,或發(fā)送郵件至dongfuguo2005@126.com與作者聯(lián)系獲;也可通過機械工業(yè)出版社相應渠道獲。ㄒ姲鏅(quán)頁內(nèi)容簡介)。
致謝
首先感謝父母的養(yǎng)育之恩,在當年那么艱苦的條件下還堅決支持我讀書,沒有讓我像其他同齡的孩子一樣輟學。感謝姐姐、姐夫多年來對我的愛護以及在老家對父母的照顧,感謝善良的弟弟、弟媳在老家對父母的照顧。當然,最應該感謝的是妻子和孩子對我這個工作狂人的理解和體諒。
感謝每一位讀者,感謝您在茫茫書海中選擇了本書,衷心祝愿您能夠從本書中受益,學到真正需要的知識。同時也期待每一位讀者的熱心反饋,隨時歡迎您指出書中的不足,并通過微信公眾號Python小屋或電子郵箱dongfuguo2005@126.com與作者溝通和交流。
董付國 于山東煙臺
2018年3月
目 錄
前言
第1章 Python概述1
1.1 Python語言簡介1
1.2 Python版本簡介2
1.3 Python開發(fā)環(huán)境安裝與配置2
1.3.1 IDLE2
1.3.2 Anaconda33
1.4 Python編程規(guī)范5
1.5 擴展庫安裝方法6
1.6 標準庫與擴展庫中對象的導入與使用7
1.6.1 import 模塊名 [as 別名]7
1.6.2 from 模塊名 import 對象名[ as 別名]7
1.6.3 from 模塊名 import *8
1.7 Python程序的__name__屬性8
習題9
第2章 內(nèi)置對象、運算符、表達式、關(guān)鍵字10
2.1 Python常用內(nèi)置對象10
2.1.1 常量與變量11
2.1.2 數(shù)字類型12
2.1.3 字符串13
2.1.4 列表、元組、字典、集合14
2.2 Python運算符與表達式14
2.2.1 算術(shù)運算符15
2.2.2 關(guān)系運算符16
2.2.3 成員測試運算符17
2.2.4 集合運算符17
2.2.5 邏輯運算符18
2.2.6 補充說明18
2.3 Python常用內(nèi)置函數(shù)用法18
2.3.1 類型轉(zhuǎn)換與判斷20
2.3.2 最值與求和22
2.3.3 基本輸入/輸出23
2.3.4 排序與逆序23
2.3.5 枚舉與迭代24
2.3.6 map()函數(shù)、reduce()函數(shù)、filter()函數(shù)24
2.3.7 range()函數(shù)26
2.3.8 zip()函數(shù)27
2.4 Python關(guān)鍵字簡要說明28
習題29
第3章 Python序列結(jié)構(gòu)30
3.1 Python序列概述30
3.2 列表31
3.2.1 列表創(chuàng)建與刪除31
3.2.2 列表元素訪問32
3.2.3 列表常用方法32
3.2.4 列表對象支持的運算符34
3.2.5 內(nèi)置函數(shù)對列表的操作35
3.2.6 列表推導式35
3.2.7 切片38
3.3 元組與生成器表達式39
3.3.1 元組創(chuàng)建與元素訪問39
3.3.2 元組與列表的異同點40
3.3.3 生成器表達式40
3.4 字典41
3.4.1 字典創(chuàng)建與刪除42
3.4.2 字典元素的訪問42
3.4.3 元素的添加、修改與刪除43
3.4.4 字典應用案例44
3.5 集合45
3.5.1 集合對象的創(chuàng)建與刪除45
3.5.2 集合操作與運算46
3.5.3 集合應用案例47
3.6 序列解包50
習題51
第4章 選擇結(jié)構(gòu)與循環(huán)結(jié)構(gòu)53
4.1 條件表達式53
4.2 選擇結(jié)構(gòu)55
4.2.1 單分支選擇結(jié)構(gòu)55
4.2.2 雙分支選擇結(jié)構(gòu)56
4.2.3 多分支選擇結(jié)構(gòu)57
4.2.4 選擇結(jié)構(gòu)的嵌套58
4.3 循環(huán)結(jié)構(gòu)58
4.3.1 for循環(huán)與while循環(huán)58
4.3.2 break與continue語句59
4.4 綜合案例解析60
習題65
第5章 函數(shù)67
5.1 函數(shù)定義與使用67
5.1.1 基本語法67
5.1.2 遞歸函數(shù)68
5.2 函數(shù)參數(shù)69
5.2.1 位置參數(shù)70
5.2.2 默認值參數(shù)70
5.2.3 關(guān)鍵參數(shù)70
5.2.4 可變長度參數(shù)71
5.2.5 傳遞參數(shù)時的序列解包71
5.3 變量作用域73
5.4 lambda表達式74
5.5 生成器函數(shù)74
5.6 綜合案例解析75
習題87
第6章 面向?qū)ο蟪绦蛟O(shè)計88
6.1 類的定義與使用88
6.2 數(shù)據(jù)成員與成員方法89
6.2.1 私有成員與公有成員89
6.2.2 數(shù)據(jù)成員90
6.2.3 成員方法90
6.2.4 屬性92
6.3 繼承94
6.4 特殊方法96
6.5 綜合案例解析98
習題105
第7章 字符串106
7.1 字符串概述106
7.2 字符串編碼格式106
7.3 轉(zhuǎn)義字符與原始字符串107
7.4 字符串格式化109
7.4.1 使用%符號進行格式化109
7.4.2 使用format()方法進行字符串格式化110
7.4.3 格式化的字符串常量111
7.5 字符串常用方法與操作111
7.5.1 find()、rfind()、index()、rindex()、count()111
7.5.2 split()、rsplit()、partition()、rpartition()112
7.5.3 join()113
7.5.4 lower()、upper()、capitalize()、title()、swapcase()114
7.5.5 replace()、maketrans()、translate()114
7.5.6 strip()、rstrip()、lstrip()115
7.5.7 startswith()、endswith()116
7.5.8 isalnum()、isalpha()、isdigit()、isspace()、isupper()、islower()116
7.5.9 center()、ljust()、rjust()116
7.5.10 字符串支持的運算符117
7.5.11 適用于字符串的內(nèi)置函數(shù)118
7.5.12 字符串切片119
7.6 字符串常量119
7.7 中英文分詞119
7.8 漢字到拼音的轉(zhuǎn)換120
7.9 綜合案例解析121
習題123
第8章 正則表達式124
8.1 正則表達式語法124
8.1.1 正則表達式基本語法124
8.1.2 正則表達式擴展語法126
8.2 正則表達式模塊re127
8.3 match對象128
8.4 綜合案例解析129
習題131
第9章 文件內(nèi)容操作132
9.1 文件的概念及分類132
9.2 文件操作基本知識133
9.2.1 內(nèi)置函數(shù)open()133
9.2.2 文件對象常用方法134
9.2.3 上下文管理語句with134
9.3 文本文件內(nèi)容操作案例135
9.4 二進制文件操作136
9.4.1 使用pickle模塊讀寫二進制文件136
9.4.2 使用struct模塊讀寫二進制文件137
9.4.3 使用shelve模塊操作二進制文件138
9.4.4 使用marshal模塊操作二進制文件138
9.5 Excel與Word文件操作案例139
習題143
第10章 文件與文件夾操作144
10.1 os模塊144
10.2 os.path模塊146
10.3 shutil模塊147
10.4 綜合案例解析148
習題150
第11章 異常處理結(jié)構(gòu)151
11.1 異常的概念及常見表現(xiàn)形式151
11.2 常用異常處理結(jié)構(gòu)152
11.2.1 try…except…結(jié)構(gòu)152
11.2.2 try…except…else…結(jié)構(gòu)153
11.2.3 try…except…finally…154
11.2