Python語(yǔ)言程序設(shè)計(jì)
定 價(jià):49 元
叢書(shū)名:高等學(xué)校計(jì)算機(jī)專(zhuān)業(yè)規(guī)劃教材
當(dāng)前圖書(shū)已被 10 所學(xué)校薦購(gòu)過(guò)!
查看明細(xì)
- 作者:王愷 王志 李濤 朱洪文
- 出版時(shí)間:2019/2/1
- ISBN:9787111620129
- 出 版 社:機(jī)械工業(yè)出版社
- 中圖法分類(lèi):TP311.561
- 頁(yè)碼:
- 紙張:膠版紙
- 版次:
- 開(kāi)本:16開(kāi)
本書(shū)系統(tǒng)講解Python程序設(shè)計(jì)語(yǔ)言以及基本程序設(shè)計(jì)、實(shí)現(xiàn)和調(diào)試方法等基礎(chǔ)知識(shí),通過(guò)概念引入、直觀(guān)示例和錯(cuò)誤分析等方法,使讀者在全面了解Python技術(shù)歷史、現(xiàn)狀與發(fā)展趨勢(shì)的基礎(chǔ)上,能夠系統(tǒng)地掌握Python基本概念、編程思想以及程序設(shè)計(jì)技術(shù),具備熟練的Python編程技能和面向?qū)ο筌浖O(shè)計(jì)技術(shù)思想。
在Python開(kāi)發(fā)者社群流行著一句話(huà):“人生苦短,我用Python!彪m是一句戲言,但卻揭示了Python語(yǔ)言的優(yōu)勢(shì)。Python是一種體現(xiàn)簡(jiǎn)單主義思想的語(yǔ)言,可以使用盡量少的代碼完成更多工作。Python使開(kāi)發(fā)者能夠?qū)W⒂诮鉀Q問(wèn)題而不是去搞明白語(yǔ)言本身。另外,Python有簡(jiǎn)單易懂的說(shuō)明文檔和豐富的第三方庫(kù),初學(xué)者很容易上手。
除了簡(jiǎn)單易學(xué)以外,Python還具有免費(fèi)開(kāi)源、跨平臺(tái)性、高層語(yǔ)言、面向?qū)ο、豐富的庫(kù)、膠水語(yǔ)言等優(yōu)點(diǎn),因此,在系統(tǒng)編程、圖形界面開(kāi)發(fā)、科學(xué)計(jì)算、文本處理、數(shù)據(jù)庫(kù)編程、網(wǎng)絡(luò)編程、Web開(kāi)發(fā)、自動(dòng)化運(yùn)維、金融分析、多媒體應(yīng)用、游戲開(kāi)發(fā)、人工智能等方面得到廣泛應(yīng)用。不僅大量計(jì)算機(jī)專(zhuān)業(yè)人員選擇使用Python進(jìn)行快速開(kāi)發(fā),非計(jì)算機(jī)專(zhuān)業(yè)人員也紛紛選擇Python幫助自己解決專(zhuān)業(yè)問(wèn)題。根據(jù)TIOBE的最新排名,Python已超越C#,與Java、C、C++一起成為全球前四大流行語(yǔ)言。
Python的發(fā)展也給高校編程課程的教學(xué)帶來(lái)了新的方向,很多高校紛紛開(kāi)設(shè)相關(guān)課程。目前,Python的教程很多,但從高校本科教學(xué)需求出發(fā),真正體現(xiàn)通過(guò)編程解決實(shí)際問(wèn)題的理念的教程還不多。本書(shū)正是基于這樣的思路和理念,由南開(kāi)大學(xué)計(jì)算機(jī)學(xué)院的教師結(jié)合多年教學(xué)和項(xiàng)目開(kāi)發(fā)實(shí)踐經(jīng)驗(yàn)編寫(xiě)而成,希望能夠?yàn)楦咝@砉た茖W(xué)生提供一本理論和實(shí)踐兼?zhèn)涞腜ython編程入門(mén)教材。
在編寫(xiě)上,我們強(qiáng)調(diào)通過(guò)問(wèn)題的解決過(guò)程向讀者展示程序設(shè)計(jì)的本質(zhì)以及Python程序的編寫(xiě)方法,使讀者能夠在有限時(shí)間內(nèi)快速掌握Python編程并初步具備利用Python語(yǔ)言解決實(shí)際應(yīng)用問(wèn)題的能力。本書(shū)的特色包括:
1)針對(duì)每一個(gè)知識(shí)點(diǎn)提供了相關(guān)程序?qū)嵗,?shí)例的規(guī)模循序漸進(jìn),使讀者更直觀(guān)地理解Python編程語(yǔ)言的基本語(yǔ)法和程序設(shè)計(jì)方法,并逐步提升解決問(wèn)題的能力。
2)針對(duì)重點(diǎn)和難點(diǎn)知識(shí),通過(guò)大量“提示”和“注意”向讀者強(qiáng)調(diào)并詳細(xì)說(shuō)明不易理解或容易混淆的內(nèi)容。
3)大多數(shù)章節(jié)提供了課后習(xí)題,供讀者檢驗(yàn)自己的學(xué)習(xí)情況,及時(shí)發(fā)現(xiàn)學(xué)習(xí)過(guò)程中存在的問(wèn)題。
4)為學(xué)生和老師提供較為豐富的學(xué)習(xí)和教學(xué)資源,降低學(xué)習(xí)和教學(xué)的門(mén)檻。
本書(shū)共分為10章,各章主要內(nèi)容如下。
第1章首先給出程序設(shè)計(jì)和Python語(yǔ)言的簡(jiǎn)單介紹,包括編譯型語(yǔ)言和解釋型語(yǔ)言的區(qū)別、Python發(fā)展史及其特點(diǎn)和應(yīng)用領(lǐng)域。然后,以Windows和Linux平臺(tái)為例介紹了Python 3.7.0的安裝步驟。接著,通過(guò)一個(gè)簡(jiǎn)單的HelloWorld程序使讀者對(duì)Python程序的運(yùn)行方式、注釋方法、編寫(xiě)規(guī)范和標(biāo)準(zhǔn)輸入/輸出方法有初步認(rèn)識(shí)。最后,介紹了Python自帶的IDLE開(kāi)發(fā)環(huán)境的使用方法。
第2章首先給出變量的定義方法和Number、String、List等常用的Python數(shù)據(jù)類(lèi)型,通過(guò)這部分內(nèi)容,讀者可掌握利用計(jì)算機(jī)存儲(chǔ)數(shù)據(jù)的方法。然后,介紹常用的運(yùn)算符,包括占位運(yùn)算符、算術(shù)運(yùn)算符、賦值運(yùn)算符、比較運(yùn)算符、邏輯運(yùn)算符、位運(yùn)算符、身份運(yùn)算符、成員運(yùn)算符和序列運(yùn)算符。通過(guò)這部分內(nèi)容,讀者可掌握不同類(lèi)型數(shù)據(jù)所支持的運(yùn)算及運(yùn)算規(guī)則。最后,介紹條件和循環(huán)兩種語(yǔ)句結(jié)構(gòu)。通過(guò)這部分內(nèi)容,讀者可以設(shè)計(jì)程序來(lái)解決具有更復(fù)雜邏輯結(jié)構(gòu)的問(wèn)題。
第3章首先介紹函數(shù)的定義與調(diào)用方法,以及與函數(shù)定義和調(diào)用相關(guān)的參數(shù)列表、返回值等內(nèi)容。然后,介紹模塊和包的概念與作用,以及模塊和包的使用方法。接著,介紹變量的作用域,包括全局變量、局部變量的定義和使用方法以及global、nonlocal關(guān)鍵字的作用。最后,介紹函數(shù)相關(guān)的高級(jí)應(yīng)用,包括遞歸函數(shù)、高階函數(shù)、lambda函數(shù)、閉包和裝飾器。
第4章首先介紹類(lèi)與對(duì)象的概念以及它們的定義和使用方法,并給出Python類(lèi)中包括構(gòu)造方法和析構(gòu)方法在內(nèi)的常用內(nèi)置方法的作用。然后,介紹繼承與多態(tài)的概念與作用,并給出它們的具體實(shí)現(xiàn)方法。最后,介紹類(lèi)與對(duì)象相關(guān)的高級(jí)應(yīng)用,包括與類(lèi)相關(guān)的3個(gè)內(nèi)置函數(shù)(isinstance、issubclass和type)、類(lèi)方法、靜態(tài)方法、動(dòng)態(tài)擴(kuò)展類(lèi)與實(shí)例、
__slots__、@property、元類(lèi)、單例模式和鴨子類(lèi)型。
第5章首先介紹可變類(lèi)型與不可變類(lèi)型的概念和區(qū)別。然后,在第2章內(nèi)容的基礎(chǔ)上進(jìn)一步介紹列表、元組、集合和字典這些數(shù)據(jù)類(lèi)型的更多使用方法。最后,介紹關(guān)于序列、集合和字典的一些高級(jí)應(yīng)用,包括切片、列表生成表達(dá)式、生成器和迭代器。
第6章在第2章內(nèi)容的基礎(chǔ)上進(jìn)一步介紹字符串的使用方法,包括字符串常用操作、格式化方法及正則表達(dá)式。在正則表達(dá)式部分將給出一個(gè)簡(jiǎn)單的爬蟲(chóng)程序示例,供讀者參考。
第7章首先介紹os模塊的使用,通過(guò)os模塊可以方便地使用操作系統(tǒng)的相關(guān)功能,如創(chuàng)建目錄、刪除目錄等。然后,介紹文件讀寫(xiě)操作,利用文件進(jìn)行數(shù)據(jù)的長(zhǎng)期保存。接著,介紹一維數(shù)據(jù)和二維數(shù)據(jù)的概念,以及對(duì)可用于存儲(chǔ)一維/二維數(shù)據(jù)的CSV格式文件的操作方法。最后,介紹異常相關(guān)的內(nèi)容,包括異常的定義、分類(lèi)和處理。
第8章介紹Python多線(xiàn)程與多進(jìn)程編程的一些基本方法。使用多線(xiàn)程模塊threading提供的Thread、Lock、Condition、Queue、Barrier等類(lèi),實(shí)現(xiàn)多線(xiàn)程創(chuàng)建、線(xiàn)程間的同步和通信。使用多進(jìn)程模塊multiprocessing提供的Process、Pool、Queue、Pipe、Lock等類(lèi),實(shí)現(xiàn)子進(jìn)程創(chuàng)建、進(jìn)程池(批量創(chuàng)建子進(jìn)程并管理子進(jìn)程數(shù)量上限)以
王愷,南開(kāi)大學(xué)計(jì)算機(jī)控制與工程學(xué)院副教授,南開(kāi)大學(xué)計(jì)算機(jī)基礎(chǔ)教學(xué)部副主任,博士,常年從事計(jì)算機(jī)程序設(shè)計(jì)、數(shù)據(jù)結(jié)構(gòu)與算法、大學(xué)計(jì)算機(jī)基礎(chǔ)等基礎(chǔ)課程的教學(xué)工作。
前言
第1章 初識(shí)Python 1
1.1 Python的基本概念 1
1.1.1 編譯型語(yǔ)言與解釋型語(yǔ)言 1
1.1.2 Python的發(fā)展史 3
1.1.3 Python的特點(diǎn)及應(yīng)用領(lǐng)域 4
1.2 Python語(yǔ)言環(huán)境的安裝 7
1.2.1 在Windows平臺(tái)上安裝Python語(yǔ)言環(huán)境 8
1.2.2 在Linux平臺(tái)上安裝Python語(yǔ)言環(huán)境 10
1.3 第一個(gè)Python程序:HelloWorld 13
1.3.1 中文編碼 14
1.3.2 單行注釋 14
1.3.3 多行注釋 15
1.3.4 書(shū)寫(xiě)規(guī)范 15
1.3.5 輸入和輸出 16
1.4 IDLE環(huán)境 18
1.4.1 啟動(dòng)IDLE 18
1.4.2 創(chuàng)建Python腳本 18
1.4.3 常用的編輯功能 20
1.5 本章小結(jié) 21
1.6 課后習(xí)題 21
第2章 Python的基礎(chǔ)語(yǔ)法 23
2.1 變量 23
2.1.1 定義一個(gè)變量 23
2.1.2 同時(shí)定義多個(gè)變量 24
2.2 數(shù)據(jù)類(lèi)型 25
2.2.1 Number 25
2.2.2 String 26
2.2.3 List 28
2.2.4 Tuple 30
2.2.5 Set 31
2.2.6 Dictionary 32
2.3 運(yùn)算符 33
2.3.1 占位運(yùn)算符 33
2.3.2 算術(shù)運(yùn)算符 34
2.3.3 賦值運(yùn)算符 35
2.3.4 比較運(yùn)算符 36
2.3.5 邏輯運(yùn)算符 37
2.3.6 位運(yùn)算符 37
2.3.7 身份運(yùn)算符 39
2.3.8 成員運(yùn)算符 40
2.3.9 序列運(yùn)算符 41
2.3.10 運(yùn)算符優(yōu)先級(jí) 41
2.4 條件語(yǔ)句 42
2.4.1 if、elif、else 44
2.4.2 pass 45
2.5 循環(huán)語(yǔ)句 46
2.5.1 for循環(huán) 47
2.5.2 while循環(huán) 48
2.5.3 索引 49
2.5.4 break 50
2.5.5 continue 51
2.5.6 else 51
2.6 本章小結(jié) 52
2.7 課后習(xí)題 52
第3章 函數(shù) 57
3.1 函數(shù)的定義與調(diào)用 57
3.2 參數(shù)列表與返回值 58
3.2.1 形參 59
3.2.2 實(shí)參 59
3.2.3 默認(rèn)參數(shù) 60
3.2.4 關(guān)鍵字參數(shù) 61
3.2.5 不定長(zhǎng)參數(shù) 62
3.2.6 拆分參數(shù)列表 64
3.2.7 返回值 65
3.3 模塊 66
3.3.1 import 67
3.3.2 from import 70
3.3.3 包 71
3.3.4 猴子補(bǔ)丁 72
3.3.5 第三方模塊的獲取與安裝 73
3.4 變量的作用域 73
3.4.1 局部變量 74
3.4.2 全局變量 74
3.4.3 global關(guān)鍵字 75
3.4.4 nonlocal關(guān)鍵字 76
3.5 高級(jí)應(yīng)用 77
3.5.1 遞歸函數(shù) 77
3.5.2 高階函數(shù) 78
3.5.3 lambda函數(shù) 78
3.5.4 閉包 79
3.5.5 裝飾器 80
3.6 本章小結(jié) 83
3.7 課后習(xí)題 83
第4章 面向?qū)ο? 87
4.1 類(lèi)與對(duì)象 87
4.1.1 類(lèi)的定義 87
4.1.2 創(chuàng)建實(shí)例 88
4.1.3 類(lèi)屬性定義及其訪(fǎng)問(wèn) 89
4.1.4 類(lèi)中普通方法定義及調(diào)用 91
4.1.5 私有屬性 92
4.1.6 構(gòu)造方法 93
4.1.7 析構(gòu)方法 95
4.1.8 常用內(nèi)置方法 96
4.2 繼承與多態(tài) 98
4.2.1 什么是繼承 98
4.2.2 如何繼承父類(lèi) 99
4.2.3 方法重寫(xiě) 100
4.2.4 super方法 101
4.3 高級(jí)應(yīng)用 103
4.3.1 內(nèi)置函數(shù)isinstance、issubclass和type 103
4.3.2 類(lèi)方法 104
4.3.3 靜態(tài)方法 104
4.3.4 動(dòng)態(tài)擴(kuò)展類(lèi)與實(shí)例 105
4.3.5 __slots__ 106
4.3.6 @property 107
4.3.7 元類(lèi) 108
4.3.8 單例模式 109
4.3.9 鴨子類(lèi)型 111
4.4 本章小結(jié) 112
4.5 課后習(xí)題 112
第5章 序列、集合和字典 116
5.1 可變類(lèi)型與不可變類(lèi)型 116
5.2 列表 117
5.2.1 創(chuàng)建列表 117
5.2.2 拼接列表 118
5.2.3 復(fù)制列表元素 119
5.2.4 查找列表元素 120
5.2.5 插入列表元素 121
5.2.6 刪除列表元素 121
5.2.7 獲取列表中的最大元素 122
5.2.8 獲取列表中的最小元素 122
5.2.9 統(tǒng)計(jì)元素出現(xiàn)的次數(shù) 122
5.2.10 計(jì)算列表長(zhǎng)度 123
5.2.11 列表中元素排序 123
5.3 元組 124
5.3.1 創(chuàng)建元組 125
5.3.2 創(chuàng)建具有單個(gè)元素的元組 125
5.3.3 拼接元組 126
5.3.4 獲取元組中的最大元素 126
5.3.5 獲取元組中的最小元素 126
5.3.6 元組的不變性 126
5.4 集合 127
5.4.1 創(chuàng)建集合 127
5.4.2 元素唯一性 127
5.4.3 插入集合元素 127
5.4.4 交集 128
5.4.5 并集 128
5.4.6 差集 129
5.4.7 對(duì)稱(chēng)差集 129
5.4.8 子集 129
5.4.9 父集 130
5.5 字典 130
5.5.1 創(chuàng)建字典 130
5.5.2 初始化字典中的元素 130
5.5.3 修改/插入字典元素 131
5.5.4 刪除字典中的元素 132
5.5.5 計(jì)算字典中元素的個(gè)數(shù) 133
5.5.6 清除字典中的所有元素 133
5.5.7 判斷字典中是否存在鍵 133
5.5.8 拼接兩個(gè)字典 134
5.5.9 獲取字典中鍵的集合 135
5.5.10 獲取字典中值的集合 135
5.5.11 獲取字典中的元素?cái)?shù)組 135
5.5.12 淺拷貝 136
5.5.13 深拷貝 137
5.6 高級(jí)應(yīng)用 138
5.6.1 切片 138
5.6.2 列表生成表達(dá)式 138
5.6.3 生成器 139
5