關(guān)于我們
書單推薦
新書推薦
|
Python開(kāi)發(fā)實(shí)例大全 上卷
本書內(nèi)容齊全,通過(guò)實(shí)例循序漸進(jìn)地講解了開(kāi)發(fā)Python應(yīng)用程序的知識(shí)。本書主要內(nèi)容包括:搭建開(kāi)發(fā)環(huán)境、基礎(chǔ)語(yǔ)法、標(biāo)準(zhǔn)庫(kù)函數(shù)、進(jìn)程通信和聯(lián)網(wǎng)操作、結(jié)構(gòu)化標(biāo)記處理、數(shù)據(jù)持久化操作、特殊文本格式處理、圖形化界面開(kāi)發(fā)等知識(shí)。
本書既適合零基礎(chǔ)的Python讀者或已經(jīng)了解了Python語(yǔ)言基礎(chǔ)語(yǔ)法的讀者閱讀,也適合希望進(jìn)一步提高自己Python開(kāi)發(fā)水平的讀者閱讀,還可作為程序員的參考書。
1.通過(guò)實(shí)例循序漸進(jìn)地講解Python應(yīng)用程序開(kāi)發(fā)技術(shù),易于閱讀。
2.實(shí)例涵蓋了常用的Python應(yīng)用領(lǐng)域,幫助讀者快速掌握Python的強(qiáng)大功能。
3.貼心提示和注意事項(xiàng)提醒,幫助讀者理解相關(guān)知識(shí)點(diǎn)及概念,更快地掌握Python的應(yīng)用技巧。
4.提供QQ群答疑服務(wù),可以隨時(shí)與作者互動(dòng),輔助讀者順利學(xué)習(xí)Python開(kāi)發(fā)。
5.是學(xué)習(xí)Python開(kāi)發(fā)的實(shí)用教程,適合Python開(kāi)發(fā)初學(xué)者、軟件工程師、測(cè)試和自動(dòng)化框架開(kāi)發(fā)人員。
王翠萍 云機(jī)器學(xué)習(xí)小組研發(fā)工程師,軟件大數(shù)據(jù)實(shí)驗(yàn)室數(shù)據(jù)挖掘?qū)<摇>–語(yǔ)言、Java、C++、PHP、Python等開(kāi)發(fā)語(yǔ)言,現(xiàn)在負(fù)責(zé)云計(jì)算的研發(fā)和架構(gòu)工作。從2014年起便開(kāi)始研究機(jī)器學(xué)習(xí)課題,是國(guó)內(nèi)最早從事相關(guān)研究的專家之一。
第 1章 搭建開(kāi)發(fā)環(huán)境實(shí)戰(zhàn) 1
1.1 安裝Python環(huán)境 2
實(shí)例01-01:在Windows操作系統(tǒng)中下載并安裝Python 2
實(shí)例01-02:在macOS操作系統(tǒng)中下載并安裝Python 3
實(shí)例01-03:在Linux操作系統(tǒng)中下載并安裝Python 4
1.2 安裝開(kāi)發(fā)工具 4
實(shí)例01-04:使用Python自帶工具IDLE 4
實(shí)例01-05:安裝PyCharm 5
實(shí)例01-06:安裝Eclipse 8
1.3 編寫并運(yùn)行Python程序 12
實(shí)例01-07:使用IDLE編寫并運(yùn)行Python程序 12
實(shí)例01-08:使用命令行運(yùn)行Python程序 12
實(shí)例01-09:交互式運(yùn)行Python程序 13
實(shí)例01-10:使用PyCharm編寫并運(yùn)行Python程序 13
實(shí)例01-11:使用Eclipse編寫并運(yùn)行Python程序 16
第 2章 基礎(chǔ)語(yǔ)法實(shí)戰(zhàn) 20
2.1 使用列表 21
實(shí)例02-01:創(chuàng)建數(shù)字列表 21
實(shí)例02-02:訪問(wèn)列表中的值 21
實(shí)例02-03:刪除列表中的重復(fù)元素并保持順序不變 22
實(shí)例02-04:找出列表中出現(xiàn)次數(shù)最多的元素 23
實(shí)例02-05:對(duì)類的實(shí)例進(jìn)行排序 23
實(shí)例02-06:使用列表推導(dǎo)式 24
實(shí)例02-07:命名切片操作 25
2.2 使用元組 26
實(shí)例02-08:創(chuàng)建并訪問(wèn)元組 26
實(shí)例02-09:修改元組的值 26
實(shí)例02-10:刪除元組 27
實(shí)例02-11:使用內(nèi)置方法操作元組 27
實(shí)例02-12:將序列分解為單獨(dú)的變量 28
實(shí)例02-13:將序列的最后幾項(xiàng)作為歷史記錄 29
實(shí)例02-14:實(shí)現(xiàn)優(yōu)先級(jí)隊(duì)列 29
2.3 使用字典 31
實(shí)例02-15:創(chuàng)建并訪問(wèn)字典 31
實(shí)例02-16:向字典中添加數(shù)據(jù) 32
實(shí)例02-17:修改字典中的數(shù)據(jù) 32
實(shí)例02-18:刪除字典中的元素 32
實(shí)例02-19:創(chuàng)建一鍵多值字典 33
實(shí)例02-20:使用OrderedDict類創(chuàng)建和修改有序字典 34
實(shí)例02-21:獲取字典中的最大值和最小值 35
實(shí)例02-22:獲取兩個(gè)字典中的相同鍵值對(duì) 35
實(shí)例02-23:使用函數(shù)itemgetter()對(duì)字典進(jìn)行排序 36
實(shí)例02-24:使用字典推導(dǎo)式 37
實(shí)例02-25:根據(jù)字段進(jìn)行分組 38
實(shí)例02-26:轉(zhuǎn)換并換算數(shù)據(jù) 39
實(shí)例02-27:將多個(gè)映射合并為單個(gè)映射 40
2.4 變量 41
實(shí)例02-28:實(shí)現(xiàn)變量賦值 41
實(shí)例02-29:使用局部變量 42
實(shí)例02-30:使用全局變量 42
實(shí)例02-31:體驗(yàn)關(guān)鍵字global的作用 43
實(shí)例02-32:定義常量功能類_const 44
2.5 條件語(yǔ)句和循環(huán)流程控制 45
實(shí)例02-33:使用條件語(yǔ)句判斷年齡 45
實(shí)例02-34:使用for循環(huán)遍歷單詞“Python”中的各個(gè)字母 46
實(shí)例02-35:使用range()循環(huán)輸出列表中的元素 47
實(shí)例02-36:循環(huán)輸出10~20的各數(shù)是否是質(zhì)數(shù) 47
實(shí)例02-37:獲取兩個(gè)整數(shù)之間的所有素?cái)?shù) 48
實(shí)例02-38:輸出九九乘法表 48
實(shí)例02-39:使用while循環(huán)輸出整數(shù)0~4 49
實(shí)例02-40:while循環(huán)的死循環(huán)問(wèn)題 49
實(shí)例02-41:輸出10以內(nèi)的所有素?cái)?shù) 50
實(shí)例02-42:在for循環(huán)和while循環(huán)中使用break語(yǔ)句 50
實(shí)例02-43:在for循環(huán)和while循環(huán)中使用continue語(yǔ)句 51
實(shí)例02-44:輸出指定英文單詞中的每個(gè)英文字母 52
2.6 函數(shù) 52
實(shí)例02-45:使用函數(shù)計(jì)算序列內(nèi)元素的和 52
實(shí)例02-46:創(chuàng)建一個(gè)可以接受任意數(shù)量參數(shù)的函數(shù) 53
實(shí)例02-47:減少函數(shù)的參數(shù) 54
實(shí)例02-48:家政公司的打掃服務(wù) 54
2.7 類和對(duì)象 55
實(shí)例02-49:創(chuàng)建并使用類和對(duì)象 55
實(shí)例02-50:定義并使用類方法 56
實(shí)例02-51:我的寵物狗 56
實(shí)例02-52:使用屬性函數(shù)創(chuàng)建可以擴(kuò)展功能的屬性 57
實(shí)例02-53:使用Python描述符實(shí)現(xiàn)延遲初始化 59
實(shí)例02-54:在寶馬汽車中使用繼承 60
實(shí)例02-55:在子類中擴(kuò)展屬性 61
實(shí)例02-56:模仿Linux操作系統(tǒng)中的文件讀寫接口 62
2.8 迭代器和生成器 63
實(shí)例02-57:創(chuàng)建并使用迭代器 63
實(shí)例02-58:創(chuàng)建并使用生成器 64
實(shí)例02-59:實(shí)現(xiàn)委托迭代處理 64
實(shí)例02-60:使用生成器創(chuàng)建新迭代模式 65
實(shí)例02-61:使用生成器函數(shù)實(shí)現(xiàn)一個(gè)迭代協(xié)議 66
實(shí)例02-62:使用函數(shù)reversed()實(shí)現(xiàn)反轉(zhuǎn)迭代 67
實(shí)例02-63:實(shí)現(xiàn)有額外狀態(tài)的生成器函數(shù) 68
實(shí)例02-64:實(shí)現(xiàn)迭代器切片處理 69
實(shí)例02-65:迭代出所有可能的組合 69
實(shí)例02-66:使用函數(shù)enumerate()創(chuàng)建索引迭代序列 70
實(shí)例02-67:使用函數(shù)zip()或zip_longest()迭代多個(gè)序列 71
第3章 標(biāo)準(zhǔn)庫(kù)函數(shù)實(shí)戰(zhàn) 72
3.1 字符串處理函數(shù) 73
實(shí)例03-01:使用函數(shù)split()分割指定的字符串 73
實(shí)例03-02:使用函數(shù)re.split()分割指定字符串 73
實(shí)例03-03:字符串開(kāi)頭和結(jié)尾處理 73
實(shí)例03-04:實(shí)現(xiàn)字符串匹配處理 74
實(shí)例03-05:文本模式匹配和查找 75
實(shí)例03-06:文本查找和替換 76
實(shí)例03-07:實(shí)現(xiàn)最短文本匹配 78
實(shí)例03-08:處理Unicode字符串 78
實(shí)例03-09:刪除字符串中的字符 79
實(shí)例03-10:字符過(guò)濾和清理 80
實(shí)例03-11:字符串對(duì)齊處理 81
實(shí)例03-12:字符串連接 81
實(shí)例03-13:重新格式化字符串 83
實(shí)例03-14:在字符串中處理HTML和XML標(biāo)記 84
實(shí)例03-15:在字節(jié)串中實(shí)現(xiàn)基本文本處理 84
3.2 文件和I/O處理函數(shù) 85
實(shí)例03-16:刷新緩沖區(qū) 85
實(shí)例03-17:檢測(cè)文件是否連接到一個(gè)終端設(shè)備 86
實(shí)例03-18:返回文件各行內(nèi)容 86
實(shí)例03-19:返回文件3個(gè)字節(jié)的內(nèi)容 87
實(shí)例03-20:返回文件中所有行 87
實(shí)例03-21:重復(fù)讀取文件中的第 1行內(nèi)容 88
實(shí)例03-22:獲取當(dāng)前文件位置 88
實(shí)例03-23:截取文件中前3個(gè)字符 88
實(shí)例03-24:向文件中寫入多行字符串 89
實(shí)例03-25:獲取文件操作權(quán)限 89
實(shí)例03-26:修改當(dāng)前工作目錄到指定路徑 90
實(shí)例03-27:修改文件或目錄權(quán)限 90
實(shí)例03-28:遍歷顯示某個(gè)目錄中所有文件夾和文件列表 90
實(shí)例03-29:修改一個(gè)目錄名字 91
實(shí)例03-30:讀取兩個(gè)文本文件內(nèi)容 91
實(shí)例03-31:字符串I/O 操作 92
實(shí)例03-32:讀寫壓縮文件 92
實(shí)例03-33:對(duì)二進(jìn)制文件做內(nèi)存映射 93
實(shí)例03-34:檢測(cè)某個(gè)文件或目錄是否存在 94
實(shí)例03-35:獲取某個(gè)目錄中的文件列表信息 94
實(shí)例03-36:獲取目錄的詳細(xì)信息 95
實(shí)例03-37:繞過(guò)文件名編碼設(shè)置編碼格式 95
實(shí)例03-38:創(chuàng)建并讀取臨時(shí)文件信息 96
實(shí)例03-39:實(shí)現(xiàn)數(shù)據(jù)序列化 97
3.3 數(shù)字處理函數(shù) 98
實(shí)例03-40:使用函數(shù)abs()返回絕對(duì)值 98
實(shí)例03-41:返回最小整數(shù) 98
實(shí)例03-42:返回參數(shù)指數(shù)值 99
實(shí)例03-43:返回參數(shù)的絕對(duì)值 99
實(shí)例03-44:返回指定數(shù)字的下舍整數(shù) 99
實(shí)例03-45:計(jì)算指定數(shù)字自然對(duì)數(shù) 99
實(shí)例03-46:計(jì)算指定數(shù)字以10為基數(shù)的對(duì)數(shù) 100
實(shí)例03-47:獲取參數(shù)最大值 100
實(shí)例03-48:獲取參數(shù)最小值 100
實(shí)例03-49:獲取參數(shù)的整數(shù)部分和小數(shù)部分 101
實(shí)例03-50:計(jì)算x的y次方的結(jié)果 101
實(shí)例03-51:計(jì)算指定數(shù)字的四舍五入值 101
實(shí)例03-52:使用格式化方式設(shè)置數(shù)字精度 102
實(shí)例03-53:計(jì)算指定數(shù)字的平方根 102
實(shí)例03-54:分別實(shí)現(xiàn)無(wú)窮大數(shù)和NaN驗(yàn)證處理 102
實(shí)例03-55:實(shí)現(xiàn)誤差運(yùn)算和精確運(yùn)算 103
實(shí)例03-56:將整數(shù)轉(zhuǎn)換為二進(jìn)制、八進(jìn)制或十六進(jìn)制數(shù)據(jù) 104
實(shí)例03-57:實(shí)現(xiàn)復(fù)數(shù)運(yùn)算 104
實(shí)例03-58:使用fractions模塊處理分?jǐn)?shù) 105
實(shí)例03-59:使用NumPy模塊分別創(chuàng)建一維數(shù)組和二維數(shù)組 106
實(shí)例03-60:使用函數(shù)choice()創(chuàng)建隨機(jī)數(shù) 106
3.4 日期和時(shí)間函數(shù) 106
實(shí)例03-61:使用函數(shù)time.clock()處理時(shí)間 106
實(shí)例03-62:使用函數(shù)time.tzset()操作時(shí)間 107
實(shí)例03-63:使用calendar模塊函數(shù)操作日期 107
實(shí)例03-64:使用類date的實(shí)例方法和屬性實(shí)現(xiàn)日期操作 109
實(shí)例03-65:使用類time實(shí)現(xiàn)日期操作 110
實(shí)例03-66:使用類datetime實(shí)現(xiàn)日期操作 110
實(shí)例03-67:使用類datetime格式化日期 110
實(shí)例03-68:使用類datetime實(shí)現(xiàn)時(shí)間換算 111
實(shí)例03-69:獲取某一周中某一天的日期 112
實(shí)例03-70:輸出當(dāng)月每一天的日期 113
實(shí)例03-71:循環(huán)輸出當(dāng)月每一天的日期 113
實(shí)例03-72:將字符串轉(zhuǎn)換為日期 114
第4章 進(jìn)程通信和聯(lián)網(wǎng)操作實(shí)戰(zhàn) 115
4.1 使用Socket網(wǎng)絡(luò)接口庫(kù) 116
實(shí)例04-01:分別創(chuàng)建簡(jiǎn)單Socket服務(wù)器和客戶端 116
實(shí)例04-02:使用Socket建立TCP“客戶端/服務(wù)器”連接 116
實(shí)例04-03:TCP“客戶端/服務(wù)器”模式的機(jī)器人聊天程序 117
實(shí)例04-04:實(shí)現(xiàn)一個(gè)文件上傳系統(tǒng) 118
實(shí)例04-05:使用Socket建立UDP“客戶端/服務(wù)器”連接 119
4.2 實(shí)現(xiàn)安全Socket編程 120
實(shí)例04-06:創(chuàng)建SSL Socket連接 120
實(shí)例04-07:實(shí)現(xiàn)客戶端和服務(wù)器SSL安全交互 121
4.3 實(shí)現(xiàn)I/O多路復(fù)用 123
實(shí)例04-08:使用select同時(shí)監(jiān)聽(tīng)多個(gè)端口 123
實(shí)例04-09:模擬多線程并實(shí)現(xiàn)讀寫分離 125
實(shí)例04-10:使用select實(shí)現(xiàn)一個(gè)可并發(fā)的服務(wù)器 126
實(shí)例04-11:實(shí)現(xiàn)一個(gè)可并發(fā)的服務(wù)器 126
實(shí)例04-12:實(shí)現(xiàn)高級(jí)I/O多路復(fù)用 127
4.4 實(shí)現(xiàn)異步I/O處理 128
實(shí)例04-13:使用asyncio實(shí)現(xiàn)Hello world代碼 128
實(shí)例04-14:使用asyncio獲取網(wǎng)站首頁(yè)信息 129
實(shí)例04-15:以動(dòng)畫的方式顯示文本式旋轉(zhuǎn)指針 130
4.5 實(shí)現(xiàn)異步Socket處理 131
實(shí)例04-16:使用模塊asyncore實(shí)現(xiàn)一個(gè)基本的HTTP客戶端 131
實(shí)例04-17:使用模塊asyncore響應(yīng)客戶端發(fā)送數(shù)據(jù) 132
4.6 實(shí)現(xiàn)內(nèi)存映射 133
實(shí)例04-18:讀取文件test.txt的內(nèi)容 133
實(shí)例04-19:讀取整個(gè)文件test.txt的內(nèi)容 134
實(shí)例04-20:逐步讀取文件test.txt中的指定字節(jié)數(shù)內(nèi)容 134
4.7 socketserver編程 135
實(shí)例04-21:使用socketserver創(chuàng)建TCP“客戶端/服務(wù)器”程序 135
實(shí)例04-22:使用ThreadingTCPServer創(chuàng)建“客戶端/服務(wù)器”通信程序 135
第5章 結(jié)構(gòu)化標(biāo)記處理實(shí)戰(zhàn) 137
5.1 使用內(nèi)置模塊html 138
實(shí)例05-01:使用html.parser創(chuàng)建HTML解析器 138
實(shí)例05-02:使用html.entities解析HTML 139
5.2 使用內(nèi)置模塊解析XML 140
實(shí)例05-03:使用模塊xml.etree.ElementTree讀取XML文件 140
實(shí)例05-04:使用SAX方法解析XML文件 141
實(shí)例05-05:使用DOM解析XML文件 143
實(shí)例05-06:使用DOM獲取XML文件中指定元素 144
實(shí)例05-07:使用模塊xml.sax.saxutils創(chuàng)建一個(gè)指定元素的XML文件 146
實(shí)例05-08:使用模塊xml.parsers.expat解析XML文件 148
5.3 使用第三方庫(kù)解析HTML和XML 149
實(shí)例05-09:使用庫(kù)Beautiful Soup解析HTML代碼 149
實(shí)例05-10:使用庫(kù)Beautiful Soup解析指定HTML標(biāo)簽 150
實(shí)例05-11:將p標(biāo)簽下的所有子標(biāo)簽存入一個(gè)列表中 150
實(shí)例05-12:獲取p標(biāo)簽下的所有子節(jié)點(diǎn)內(nèi)容 151
實(shí)例05-13:處理標(biāo)簽中的兄弟節(jié)點(diǎn)和父節(jié)點(diǎn) 151
實(shí)例05-14:根據(jù)標(biāo)簽名查找文件 152
實(shí)例05-15:使用函數(shù)find_all()根據(jù)屬性查找文件 153
實(shí)例05-16:用函數(shù)find_all()根據(jù)text查找文件 153
實(shí)例05-17:使用其他標(biāo)準(zhǔn)選擇器 153
實(shí)例05-18:使用select()直接傳入CSS選擇器 154
實(shí)例05-19:使用庫(kù)bleach過(guò)濾HTML代碼 155
實(shí)例05-20:使用方法bleach.clean()不同參數(shù)實(shí)現(xiàn)過(guò)濾處理 155
實(shí)例05-21:使用方法bleach.linkify()添加指定屬性 156
實(shí)例05-22:使用callback參數(shù)刪除指定屬性 157
實(shí)例05-23:使用bleach.linkifier.Linker處理鏈接 157
實(shí)例05-24:使用bleach.linkifier.LinkifyFilter處理鏈接 158
實(shí)例05-25:使用庫(kù)cssutils處理CSS標(biāo)記 158
實(shí)例05-26:使用html5lib解析HTML代碼 159
實(shí)例05-27:使用html5lib解析HTML中的指定標(biāo)簽 159
實(shí)例05-28:使用庫(kù)MarkupSafe構(gòu)建安全HTML 160
實(shí)例05-29:使用庫(kù)MarkupSafe實(shí)現(xiàn)格式化 161
實(shí)例05-30:使用庫(kù)pyquery實(shí)現(xiàn)字符串初始化 161
實(shí)例05-31:使用pyquery解析HTML內(nèi)容 162
實(shí)例05-32:使用庫(kù)pyquery解析本地HTML文件和網(wǎng)絡(luò)頁(yè)面 163
實(shí)例05-33:使用庫(kù)pyquery實(shí)現(xiàn)基于CSS選擇器查找 163
實(shí)例05-34:使用庫(kù)pyquery查找子節(jié)點(diǎn) 164
實(shí)例05-35:使用庫(kù)pyquery查找父節(jié)點(diǎn) 165
實(shí)例05-36:使用庫(kù)pyquery獲取兄弟節(jié)點(diǎn)信息 165
第6章 應(yīng)用程序開(kāi)發(fā)實(shí)戰(zhàn) 167
6.1 使用webbrowser實(shí)現(xiàn)瀏覽器操作 168
實(shí)例06-01:分別調(diào)用IE和谷歌瀏覽器打開(kāi)百度網(wǎng)主頁(yè) 168
實(shí)例06-02:調(diào)用默認(rèn)瀏覽器每隔5s打開(kāi)一次指定網(wǎng)頁(yè) 168
6.2 使用urllib包 168
實(shí)例06-03:在百度搜索關(guān)鍵詞中得到第 一頁(yè)鏈接 168
實(shí)例06-04:使用urllib實(shí)現(xiàn)HTTP身份驗(yàn)證 169
6.3 使用內(nèi)置模塊http 170
實(shí)例06-05:訪問(wèn)指定的網(wǎng)站 170
實(shí)例06-06:使用http.client模塊中GET方式獲取數(shù)據(jù) 171
實(shí)例06-07:綜合使用模塊http和urllib 171
實(shí)例06-08:發(fā)送HTTP GET請(qǐng)求到遠(yuǎn)端服務(wù)器 172
實(shí)例06-09:使用POST方法在請(qǐng)求主體中發(fā)送查詢參數(shù) 172
實(shí)例06-10:在發(fā)出的請(qǐng)求中提供自定義的HTTP頭 173
6.4 FTP傳輸、SMTP服務(wù)器和XML-RPC服務(wù)器 173
實(shí)例06-11:創(chuàng)建一個(gè)FTP文件傳輸客戶端 174
實(shí)例06-12:使用模塊smtpd創(chuàng)建一個(gè)SMTP服務(wù)器 175
實(shí)例06-13:使用模塊xmlrpc.server實(shí)現(xiàn)XML-RPC客戶端和服務(wù)器相互通信 175
6.5 開(kāi)發(fā)電子郵件系統(tǒng) 176
實(shí)例06-14:獲取指定電子郵箱中最新兩封電子郵件的主題和發(fā)件人 176
實(shí)例06-15:向指定電子郵箱發(fā)送電子郵件 177
實(shí)例06-16:發(fā)送帶附件功能的電子郵件 178
實(shí)例06-17:使用庫(kù)envelopes向指定電子郵箱發(fā)送電子郵件 179
實(shí)例06-18:使用庫(kù)envelopes構(gòu)建Flask Web電子郵件發(fā)送程序 179
實(shí)例06-19:創(chuàng)建一個(gè)帶有HTTP REST接口的SMTP服務(wù)器 180
6.6 解析JSON數(shù)據(jù) 180
實(shí)例06-20:將Python字典轉(zhuǎn)換為JSON對(duì)象 180
實(shí)例06-21:將JSON編碼的字符串轉(zhuǎn)換為Python數(shù)據(jù)結(jié)構(gòu) 181
實(shí)例06-22:編寫自定義類解析JSON數(shù)據(jù) 181
6.7 實(shí)現(xiàn)數(shù)據(jù)編碼和解碼 185
實(shí)例06-23:實(shí)現(xiàn)數(shù)據(jù)“編碼/解碼”操作 185
實(shí)例06-24:實(shí)現(xiàn)bytes類型和base64類型的相互轉(zhuǎn)換 186
實(shí)例06-25:生成由某地址可表示的全部IP地址的范圍 187
6.8 實(shí)現(xiàn)身份驗(yàn)證 188
實(shí)例06-26:獲取指定字符串的數(shù)據(jù)指紋 188
實(shí)例06-27:利用hmac模塊實(shí)現(xiàn)簡(jiǎn)單且高效的身份驗(yàn)證 188
實(shí)例06-28:Socket服務(wù)器和客戶端的加密認(rèn)證 189
6.9 使用第三方庫(kù)處理HTTP 190
實(shí)例06-29:使用庫(kù)aiohttp實(shí)現(xiàn)異步處理 190
實(shí)例06-30:使用庫(kù)aiohttp爬取指定CSDN博客中技術(shù)文章地址 191
實(shí)例06-31:使用庫(kù)requests返回指定URL請(qǐng)求 192
實(shí)例06-32:提交的數(shù)據(jù)是向指定地址傳送的data里面的數(shù)據(jù) 192
實(shí)例06-33:使用GET和POST方式處理JSON數(shù)據(jù) 193
實(shí)例06-34:添加headers獲取知乎頁(yè)面信息 193
實(shí)例06-35:使用自定義的編碼格式進(jìn)行解碼 194
實(shí)例06-36:訪問(wèn)遠(yuǎn)程頁(yè)面信息 194
實(shí)例06-37:使用庫(kù)grequests同時(shí)處理一組請(qǐng)求 195
實(shí)例06-38:使用庫(kù)grequests提升訪問(wèn)請(qǐng)求性能 195
實(shí)例06-39:使用庫(kù)httplib2獲取網(wǎng)頁(yè)數(shù)據(jù) 196
實(shí)例06-40:使用庫(kù)httplib2處理網(wǎng)頁(yè)緩存數(shù)據(jù) 196
實(shí)例06-41:使用POST發(fā)送構(gòu)造數(shù)據(jù) 197
實(shí)例06-42:使用庫(kù)urllib3中的request()方法創(chuàng)建請(qǐng)求 198
實(shí)例06-43:在request()方法中添加head頭創(chuàng)建請(qǐng)求 198
實(shí)例06-44:使用庫(kù)urllib3中的post()方法創(chuàng)建請(qǐng)求 198
實(shí)例06-45:使用庫(kù)urllib3發(fā)送JSON數(shù)據(jù) 199
6.10 使用第三方庫(kù)處理URL 200
實(shí)例06-46:使用庫(kù)furl優(yōu)雅地處理URL分頁(yè) 200
實(shí)例06-47:使用庫(kù)furl處理URL參數(shù) 200
實(shí)例06-48:使用內(nèi)聯(lián)方法處理URL參數(shù) 201
實(shí)例06-49:使用庫(kù)purl處理3種構(gòu)造類型URL 201
實(shí)例06-50:使用庫(kù)purl返回各個(gè)URL對(duì)象 201
實(shí)例06-51:使用庫(kù)purl修改URL參數(shù)值 202
實(shí)例06-52:在當(dāng)前路徑末尾添加字段 202
實(shí)例06-53:使用庫(kù)webargs處理URL參數(shù) 203
實(shí)例06-54:在aiohttp程序中使用庫(kù)webargs 203
實(shí)例06-55:在Tornado程序中使用庫(kù)webargs 204
第7章 數(shù)據(jù)持久化操作實(shí)戰(zhàn) 205
7.1 操作SQLite3數(shù)據(jù)庫(kù) 206
實(shí)例07-01:使用方法cursor.execute()執(zhí)行指定SQL語(yǔ)句 206
實(shí)例07-02:使用方法cursor.executemany()執(zhí)行指定的SQL命令 206
實(shí)例07-03:同時(shí)執(zhí)行多個(gè)SQL語(yǔ)句 207
實(shí)例07-04:使用方法create_function()執(zhí)行指定函數(shù) 207
實(shí)例07-05:創(chuàng)建用戶定義的聚合函數(shù) 207
實(shí)例07-06:用自定義排序規(guī)則以“錯(cuò)誤方式”進(jìn)行排序 208
實(shí)例07-07:生成一個(gè) SQLite Shell 209
實(shí)例07-08:返回?cái)?shù)據(jù)庫(kù)中的列名稱列表 209
實(shí)例07-09:操作SQLite3數(shù)據(jù)庫(kù) 210
實(shí)例07-10:將自定義類Point適配SQLite3數(shù)據(jù)庫(kù) 211
實(shí)例07-11:使用函數(shù)register_adapter()注冊(cè)適配器函數(shù) 212
實(shí)例07-12:將datetime.datetime對(duì)象保存為UNIX時(shí)間戳 212
實(shí)例07-13:將自定義Python類型轉(zhuǎn)換成SQLite類型 212
實(shí)例07-14:使用默認(rèn)適配器和轉(zhuǎn)換器 213
實(shí)例07-15:使用isolation_level開(kāi)啟智能commit 214
實(shí)例07-16:手動(dòng)開(kāi)始commit(提交執(zhí)行)操作 215
實(shí)例07-17:使用模塊apsw創(chuàng)建并操作SQLite數(shù)據(jù)庫(kù)數(shù)據(jù) 215
實(shí)例07-18:同時(shí)批處理上千條數(shù)據(jù) 215
7.2 操作MySQL數(shù)據(jù)庫(kù) 217
實(shí)例07-19:顯示PyMySQL數(shù)據(jù)庫(kù)版本號(hào) 217
實(shí)例07-20:創(chuàng)建新表 218
實(shí)例07-21:向數(shù)據(jù)庫(kù)中插入數(shù)據(jù) 218
實(shí)例07-22:查詢數(shù)據(jù)庫(kù)中的數(shù)據(jù) 219
實(shí)例07-23:更新數(shù)據(jù)庫(kù)中的數(shù)據(jù) 220
實(shí)例07-24:刪除數(shù)據(jù)庫(kù)中的數(shù)據(jù) 220
實(shí)例07-25:通過(guò)執(zhí)行事務(wù)刪除表中的數(shù)據(jù) 221
實(shí)例07-26:足球俱樂(lè)部球員管理系統(tǒng) 221
7.3 使用MariaDB數(shù)據(jù)庫(kù) 224
實(shí)例07-27:搭建MariaDB數(shù)據(jù)庫(kù)環(huán)境 224
實(shí)例07-28:在Python程序中使用MariaDB數(shù)據(jù)庫(kù) 226
實(shí)例07-29:使用MariaDB創(chuàng)建MySQL數(shù)據(jù)庫(kù) 228
7.4 使用MongoDB數(shù)據(jù)庫(kù) 229
實(shí)例07-30:搭建MongoDB環(huán)境 229
實(shí)例07-31:使用PyMongo操作MongoDB數(shù)據(jù)庫(kù) 230
實(shí)例07-32:使用mongoengine操作MongoDB數(shù)據(jù)庫(kù) 232
7.5 使用ORM操作數(shù)據(jù)庫(kù) 234
實(shí)例07-33:使用SQLAlchemy操作兩種數(shù)據(jù)庫(kù) 234
實(shí)例07-34:使用Peewee操作SQLite數(shù)據(jù)庫(kù) 237
實(shí)例07-35:更新和刪除指定數(shù)據(jù)庫(kù)中數(shù)據(jù) 238
實(shí)例07-36:查詢數(shù)據(jù)庫(kù)中指定范圍內(nèi)的數(shù)據(jù) 238
實(shí)例07-37:使用Peewee在MySQL數(shù)據(jù)庫(kù)中創(chuàng)建兩個(gè)表 240
實(shí)例07-38:使用Pony創(chuàng)建一個(gè)SQLite數(shù)據(jù)庫(kù) 241
實(shí)例07-39:使用Pony向數(shù)據(jù)庫(kù)的指定表中添加新數(shù)據(jù) 242
實(shí)例07-40:使用Pony查詢并修改數(shù)據(jù)庫(kù)中指定數(shù)據(jù) 244
實(shí)例07-41:使用Pony刪除數(shù)據(jù)庫(kù)的表中的某條數(shù)據(jù) 245
實(shí)例07-42:在指定MySQL數(shù)據(jù)庫(kù)中創(chuàng)建指定的表 245
實(shí)例07-43:在MySQL數(shù)據(jù)庫(kù)中實(shí)現(xiàn)一對(duì)多和繼承操作 246
實(shí)例07-44:下載并安裝PostgreSQL 248
實(shí)例07-45:連接指定PostgreSQL數(shù)據(jù)庫(kù) 248
實(shí)例07-46:在PostgreSQL數(shù)據(jù)庫(kù)中創(chuàng)建指定表 249
實(shí)例07-47:創(chuàng)建PostgreSQL表并插入新數(shù)據(jù) 249
實(shí)例07-48:查詢顯示指定表中的數(shù)據(jù) 250
實(shí)例07-49:向PostgreSQL數(shù)據(jù)庫(kù)中插入新數(shù)據(jù)并更新數(shù)據(jù) 251
實(shí)例07-50:刪除PostgreSQL數(shù)據(jù)庫(kù)中的指定數(shù)據(jù) 252
實(shí)例07-51:創(chuàng)建PostgreSQL表并實(shí)現(xiàn)插入、查詢、更新和刪除數(shù)據(jù) 253
實(shí)例07-52:使用模塊queries查詢PostgreSQL數(shù)據(jù)庫(kù)中的數(shù)據(jù) 254
實(shí)例07-53:查詢并顯示PostgreSQL數(shù)據(jù)庫(kù)中的數(shù)據(jù) 254
7.6 連接SQL Server數(shù)據(jù)庫(kù) 255
實(shí)例07-54:連接并操作SQL Server數(shù)據(jù)庫(kù) 255
實(shí)例07-55:創(chuàng)建SQL Server表并查詢其數(shù)據(jù) 256
7.7 使用Redis存儲(chǔ) 257
實(shí)例07-56:使用Redis連接服務(wù)器 257
實(shí)例07-57:使用ConnectionPool創(chuàng)建連接池 257
實(shí)例07-58:實(shí)現(xiàn)“發(fā)布-訂閱”模式 258
實(shí)例07-59:在Redis中使用delete命令和exists命令 258
實(shí)例07-60:使用expire命令和expireat命令 259
實(shí)例07-61:使用persist命令、keys命令和move命令 259
第8章 特殊文本格式處理實(shí)戰(zhàn) 261
8.1 Tablib模塊實(shí)戰(zhàn)演練 262
實(shí)例08-01:操作數(shù)據(jù)集中的指定行和列 262
實(shí)例08-02:刪除指定數(shù)據(jù)并導(dǎo)出不同文本格式的數(shù)據(jù) 262
實(shí)例08-03:將Tablib數(shù)據(jù)集導(dǎo)出到新建Excel文件 263
實(shí)例08-04:將多個(gè)Tablib數(shù)據(jù)集導(dǎo)出到Excel文件 264
實(shí)例08-05:使用標(biāo)簽過(guò)濾Tablib數(shù)據(jù)集 266
實(shí)例08-06:將兩組數(shù)據(jù)分離導(dǎo)入Excel文件 266
8.2 Office處理實(shí)戰(zhàn) 267
實(shí)例08-07:使用openpyxl讀取Excel文件 267
實(shí)例08-08:將4組數(shù)據(jù)導(dǎo)入Excel文件中 267
實(shí)例08-09:在Excel文件中檢索某關(guān)鍵字 268
實(shí)例08-10:將數(shù)據(jù)導(dǎo)入Excel文件并生成圖表 269
實(shí)例08-11:使用pyexcel讀取并寫入CSV文件 270
實(shí)例08-12:使用pyexcel讀取Excel文件中的每個(gè)單元格內(nèi)容 271
實(shí)例08-13:按列讀取并顯示Excel文件中的每個(gè)單元格內(nèi)容 271
實(shí)例08-14:讀取并顯示Excel文件中的所有數(shù)據(jù) 272
實(shí)例08-15:將3組數(shù)據(jù)導(dǎo)入新建的Excel文件中 272
實(shí)例08-16:使用pyexcel以多種方式獲取Excel數(shù)據(jù) 273
實(shí)例08-17:將數(shù)據(jù)分別導(dǎo)入Excel文件和SQLite數(shù)據(jù)庫(kù) 274
實(shí)例08-18:使用python-docx創(chuàng)建Word文檔 274
實(shí)例08-19:在Word文檔中插入20個(gè)實(shí)心圖形 275
實(shí)例08-20:向Word文檔中添加指定段落樣式的內(nèi)容 276
實(shí)例08-21:得到英文的樣式名稱 277
實(shí)例08-22:獲取Word文檔中的文本樣式名稱 278
實(shí)例08-23:獲取Word文檔中的文本內(nèi)容 278
實(shí)例08-24:在Word文檔中創(chuàng)建表格 278
實(shí)例08-25:創(chuàng)建表格并合并其中的單元格 279
實(shí)例08-26:調(diào)整Word表格寬度 280
實(shí)例08-27:獲取python-docx內(nèi)部的表格樣式名稱 280
實(shí)例08-28:使用指定樣式修飾表格 281
實(shí)例08-29:創(chuàng)建樣式和設(shè)置字體 281
實(shí)例08-30:使用Run.font設(shè)置字體樣式 282
實(shí)例08-31:設(shè)置段落遞進(jìn)的左對(duì)齊樣式 282
實(shí)例08-32:自定義創(chuàng)建Word樣式 283
實(shí)例08-33:使用庫(kù)xlrd讀取Excel文件的內(nèi)容 284
實(shí)例08-34:將指定內(nèi)容寫入Excel文件并創(chuàng)建Excel文件 285
實(shí)例08-35:使用庫(kù)xlsxwriter創(chuàng)建一個(gè)指定內(nèi)容的Excel文件 285
實(shí)例08-36:向Excel文件中批量寫入內(nèi)容 286
實(shí)例08-37:設(shè)置表格樣式 286
實(shí)例08-38:向Excel文件中插入圖像 288
實(shí)例08-39:向Excel文件中插入數(shù)據(jù)并繪制柱狀圖 289
實(shí)例08-40:向Excel文件中插入數(shù)據(jù)并繪制散點(diǎn)圖 290
實(shí)例08-41:向Excel文件中插入數(shù)據(jù)并繪制柱狀圖和餅圖 291
8.3 PDF處理實(shí)戰(zhàn) 293
實(shí)例08-42:將PDF文件中的內(nèi)容轉(zhuǎn)換為TXT文本 293
實(shí)例08-43:解析某個(gè)在線PDF文件的內(nèi)容 295
實(shí)例08-44:使用PyPDF2讀取PDF文件 297
實(shí)例08-45:使用PyPDF2將PDF文件中寫入另一個(gè)PDF文件內(nèi)容 298
實(shí)例08-46:將兩個(gè)PDF文件合并為一個(gè)PDF文件 298
實(shí)例08-47:分割某個(gè)指定PDF文件 299
實(shí)例08-48:合并3個(gè)PDF文件 299
實(shí)例08-49:向指定PDF文件中寫入文本 300
實(shí)例08-50:向PDF文件中寫入指定樣式的文本 300
實(shí)例08-51:在PDF文件中繪制矢量圖形 301
實(shí)例08-52:在PDF文件中繪制圖像 301
實(shí)例08-53:分別在PDF文件和PNG文件中繪制餅圖 302
實(shí)例08-54:在PDF文件中分別生成條形圖和二維碼 303
第9章 圖形化界面開(kāi)發(fā)實(shí)戰(zhàn) 305
9.1 使用內(nèi)置庫(kù)tkinter 306
實(shí)例09-01:創(chuàng)建第 一個(gè)GUI程序 306
實(shí)例09-02:向窗口中添加組件 306
實(shí)例09-03:使用Frame()布局窗體界面 307
實(shí)例09-04:向窗口中添加按鈕控件 307
實(shí)例09-05:使用文本框控件 308
實(shí)例09-06:實(shí)現(xiàn)會(huì)員注冊(cè)界面效果 309
實(shí)例09-07:使用菜單控件 310
實(shí)例09-08:在窗口中創(chuàng)建標(biāo)簽 310
實(shí)例09-09:在tkinter窗口中創(chuàng)建單選按鈕和復(fù)選框 311
實(shí)例09-10:在窗口中繪制圖形 312
實(shí)例09-11:使用事件機(jī)制創(chuàng)建一個(gè)“英尺/米”轉(zhuǎn)換器 313
實(shí)例09-12:實(shí)現(xiàn)一個(gè)動(dòng)態(tài)繪圖程序 314
實(shí)例09-13:實(shí)現(xiàn)一個(gè)簡(jiǎn)單計(jì)算器程序 316
實(shí)例09-14:創(chuàng)建消息對(duì)話框 317
實(shí)例09-15:創(chuàng)建輸入對(duì)話框 318
實(shí)例09-16:創(chuàng)建打開(kāi)/保存文件對(duì)話框 319
實(shí)例09-17:創(chuàng)建選擇顏色對(duì)話框 319
實(shí)例09-18:創(chuàng)建自定義對(duì)話框 320
實(shí)例09-19:開(kāi)發(fā)一個(gè)記事本程序 321
實(shí)例09-20:使用偏函數(shù)模擬實(shí)現(xiàn)交通標(biāo)志 323
實(shí)例09-21:創(chuàng)建桌面天氣預(yù)報(bào)程序 325
實(shí)例09-22:創(chuàng)建精簡(jiǎn)版資源管理器 326
9.2 使用tkinter的擴(kuò)展小部件tkinter.tix 328
實(shí)例09-23:使用Balloon組件 328
實(shí)例09-24:使用DirList組件 329
實(shí)例09-25:使用分組列表組件 330
實(shí)例09-26:使用管理組件 332
實(shí)例09-27:實(shí)現(xiàn)一個(gè)日歷程序 333
9.3 Pmw庫(kù)開(kāi)發(fā)實(shí)戰(zhàn) 335
實(shí)例09-28:下載并安裝Pmw 335
實(shí)例09-29:使用ButtonBox組件 336
實(shí)例09-30:使用ComboBox組件 337
實(shí)例09-31:使用Counter組件 339
實(shí)例09-32:使用Group組件 340
實(shí)例09-33:使用LabeledWidget組件 341
實(shí)例09-34:使用MainMenuBar組件 342
實(shí)例09-35:使用MessageBar組件 344
實(shí)例09-36:使用OptionMenu組件 345
實(shí)例09-37:使用RadioSelect組件 345
實(shí)例09-38:使用ScrolledCanvas組件 347
實(shí)例09-39:使用AboutDialog組件 348
實(shí)例09-40:使用Balloon組件 349
實(shí)例09-41:使用PyQt創(chuàng)建第 一個(gè)GUI程序 351
實(shí)例09-42:在PyQt窗體中創(chuàng)建一個(gè)圖標(biāo) 352
實(shí)例09-43:在PyQt窗體中實(shí)現(xiàn)一個(gè)提示信息 353
實(shí)例09-44:在PyQt窗體中創(chuàng)建狀態(tài)欄信息 354
實(shí)例09-45:在PyQt窗體中同時(shí)創(chuàng)建菜單欄和狀態(tài)欄信息 354
實(shí)例09-46:在PyQt窗體中創(chuàng)建工具欄 356
實(shí)例09-47:在PyQt窗體中使用絕對(duì)定位方式 356
實(shí)例09-48:使用箱布局 357
實(shí)例09-49:使用網(wǎng)格布局模擬實(shí)現(xiàn)一個(gè)計(jì)算器界面 358
實(shí)例09-50:使用表單布局實(shí)現(xiàn)一個(gè)留言板界面 359
實(shí)例09-51:使用單擊按鈕事件處理程序 359
實(shí)例09-52:在PyQt5中使用信號(hào)和槽 360
實(shí)例09-53:重新實(shí)現(xiàn)按鍵盤按鍵后的操作功能 361
實(shí)例09-54:重新實(shí)現(xiàn)按住方向鍵后的操作功能 361
實(shí)例09-55:實(shí)現(xiàn)人機(jī)對(duì)戰(zhàn)“石頭、剪刀、布”小游戲 362
實(shí)例09-56:發(fā)送自定義信號(hào) 363
實(shí)例09-57:使用對(duì)話框獲取用戶名信息 364
實(shí)例09-58:使用顏色選擇對(duì)話框設(shè)置背景顏色 365
實(shí)例09-59:使用字體選擇對(duì)話框設(shè)置字體 366
實(shí)例09-60:使用文件選擇對(duì)話框選擇一個(gè)文件 367
實(shí)例09-61:使用QCheckBox實(shí)現(xiàn)復(fù)選框功能 368
實(shí)例09-62:使用QRadioButton實(shí)現(xiàn)單選按鈕功能 369
實(shí)例09-63:使用QPushButton實(shí)現(xiàn)切換按鈕功能 370
實(shí)例09-64:使用QSlider實(shí)現(xiàn)一個(gè)音量控制器 371
實(shí)例09-65:使用QProgressBar實(shí)現(xiàn)一個(gè)進(jìn)度條效果 372
實(shí)例09-66:使用QCalendarWidget實(shí)現(xiàn)一個(gè)日歷 373
實(shí)例09-67:在窗口中顯示一個(gè)圖片 374
實(shí)例09-68:創(chuàng)建一個(gè)單行文本編輯框 375
實(shí)例09-69:創(chuàng)建兩個(gè)分割框組件 376
實(shí)例09-70:使用Eric6提高開(kāi)發(fā)效率 377
9.4 使用pyglet庫(kù) 378
實(shí)例09-71:創(chuàng)建第 一個(gè)pyglet程序 378
實(shí)例09-72:在窗體中顯示指定圖片 378
實(shí)例09-73:使用庫(kù)pyglet處理鍵盤事件程序 379
實(shí)例09-74:在屏幕上繪制一個(gè)三角形 379
實(shí)例09-75:使用頂點(diǎn)數(shù)組繪制三角形 380
實(shí)例09-76:開(kāi)發(fā)一個(gè)Minecraft游戲 381
9.5 使用Toga庫(kù) 385
實(shí)例09-77:使用Toga創(chuàng)建第 一個(gè)GUI程序 385
實(shí)例09-78:創(chuàng)建一個(gè)溫度轉(zhuǎn)換器 386
實(shí)例09-79:使用組件ScrollContainer實(shí)現(xiàn)滾動(dòng)功能 387
實(shí)例09-80:使用繪圖組件 388
9.6 wxPython實(shí)戰(zhàn) 389
實(shí)例09-81:開(kāi)發(fā)第 一個(gè)wxPython程序 389
實(shí)例09-82:使用StaticText組件在窗體中顯示文本 389
實(shí)例09-83:創(chuàng)建4種不同樣式的文本框 391
實(shí)例09-84:使用RadioButton組件 392
9.7 GUI高級(jí)實(shí)戰(zhàn) 393
實(shí)例09-85:實(shí)現(xiàn)tkinter+ SQLite3圖書館系統(tǒng) 393
實(shí)例09-86:實(shí)現(xiàn)tkinter + SQLite3多線程計(jì)時(shí)器系統(tǒng) 395
你還可能感興趣
我要評(píng)論
|