資料介紹
本書內(nèi)容易于理解,而且讀起來生動(dòng)有趣,是編程和Python初學(xué)者不可多得的優(yōu)秀教程。書中首先介紹了Python的基礎(chǔ)知識(shí),然后逐漸深入多種主題,結(jié)合教程和攻略式風(fēng)格來講解Python 3中的概念。每章結(jié)尾的練習(xí)可以幫助你鞏固所學(xué)的知識(shí)。
本書會(huì)為你學(xué)習(xí)Python打下堅(jiān)實(shí)的基礎(chǔ),包括測試、調(diào)試、代碼復(fù)用的最佳實(shí)踐以及其他開發(fā)技巧。同時(shí)還會(huì)告訴你如何在商業(yè)、科學(xué)和藝術(shù)領(lǐng)域使用Python,并教會(huì)你使用多種Python工具和開源包。
通過閱讀本書,你將能夠:
學(xué)習(xí)簡單的數(shù)據(jù)類型,以及基本的數(shù)學(xué)和文本操作
學(xué)習(xí)用Python內(nèi)置的數(shù)據(jù)結(jié)構(gòu)來處理數(shù)據(jù)
掌握Python的代碼結(jié)構(gòu)和函數(shù)的用法
使用模塊和包編寫大規(guī)模Python程序
深入理解對(duì)象、類和其他面向?qū)ο筇匦?/p>
學(xué)習(xí)使用普通文件、關(guān)系數(shù)據(jù)庫和NoSQL數(shù)據(jù)庫來存儲(chǔ)數(shù)據(jù)
使用Python構(gòu)建Web客戶端、服務(wù)器、API和服務(wù)
管理系統(tǒng)任務(wù),比如程序、進(jìn)程和線程
理解并發(fā)和網(wǎng)絡(luò)編程的基礎(chǔ)知識(shí)
目錄
前言 xiv
第1章 Python初探 1
1.1 真實(shí)世界中的Python 5
1.2 Python與其他語言 5
1.3 為什么選擇Python 7
1.4 何時(shí)不應(yīng)該使用Python 8
1.5 Python 2與Python 3 8
1.6 安裝Python 9
1.7 運(yùn)行Python 9
1.7.1 使用交互式解釋器 9
1.7.2 使用Python文件 10
1.7.3 下一步 11
1.8 禪定一刻 11
1.9 練習(xí) 11
第2章 Python基本元素:數(shù)字、字符串和變量 13
2.1 變量、名字和對(duì)象 13
2.2 數(shù)字 16
2.2.1 整數(shù) 17
2.2.2 優(yōu)先級(jí) 20
2.2.3 基數(shù) 21
2.2.4 類型轉(zhuǎn)換 22
2.2.5 一個(gè)int型有多大 23
2.2.6 浮點(diǎn)數(shù) 24
2.2.7 數(shù)學(xué)函數(shù) 24
2.3 字符串 24
2.3.1 使用引號(hào)創(chuàng)建 25
2.3.2 使用str()進(jìn)行類型轉(zhuǎn)換 27
2.3.3 使用\ 轉(zhuǎn)義 27
2.3.4 使用+ 拼接 28
2.3.5 使用* 復(fù)制 28
2.3.6 使用[] 提取字符 28
2.3.7 使用[start:end:step]分片 29
2.3.8 使用len()獲得長度 31
2.3.9 使用split()分割 32
2.3.10 使用join()合并 32
2.3.11 熟悉字符串 32
2.3.12 大小寫與對(duì)齊方式 33
2.3.13 使用replace()替換 34
2.3.14 更多關(guān)于字符串的內(nèi)容 35
2.4 練習(xí) 35
第3章 Python容器:列表、元組、字典與集合 36
3.1 列表和元組 36
3.2 列表 37
3.2.1 使用[] 或list()創(chuàng)建列表 37
3.2.2 使用list()將其他數(shù)據(jù)類型轉(zhuǎn)換成列表 37
3.2.3 使用[offset]獲取元素 38
3.2.4 包含列表的列表 39
3.2.5 使用[offset]修改元素 39
3.2.6 指定范圍并使用切片提取元素 40
3.2.7 使用append()添加元素至尾部 40
3.2.8 使用extend()或+=合并列表 40
3.2.9 使用insert()在指定位置插入元素 41
3.2.10 使用del刪除指定位置的元素 41
3.2.11 使用remove()刪除具有指定值的元素 42
3.2.12 使用pop()獲取并刪除指定位置的元素 42
3.2.13 使用index()查詢具有特定值的元素位置 42
3.2.14 使用in判斷值是否存在 42
3.2.15 使用count()記錄特定值出現(xiàn)的次數(shù) 43
3.2.16 使用join()轉(zhuǎn)換為字符串 43
3.2.17 使用sort()重新排列元素 44
3.2.18 使用len()獲取長度 44
3.2.19 使用= 賦值,使用copy()復(fù)制 45
3.3 元組 46
3.3.1 使用()創(chuàng)建元組 46
3.3.2 元組與列表 47
3.4 字典 47
3.4.1 使用{}創(chuàng)建字典 48
3.4.2 使用dict()轉(zhuǎn)換為字典 48
3.4.3 使用[key]添加或修改元素 49
3.4.4 使用update()合并字典 50
3.4.5 使用del刪除具有指定鍵的元素 51
3.4.6 使用clear()刪除所有元素 51
3.4.7 使用in 判斷是否存在 51
3.4.8 使用[key]獲取元素 52
3.4.9 使用keys()獲取所有鍵 52
3.4.10 使用values()獲取所有值 53
3.4.11 使用items()獲取所有鍵值對(duì) 53
3.4.12 使用= 賦值,使用copy()復(fù)制 53
3.5 集合 53
3.5.1 使用set()創(chuàng)建集合 54
3.5.2 使用set()將其他類型轉(zhuǎn)換為集合 54
3.5.3 使用in測試值是否存在 55
3.5.4 合并及運(yùn)算符 56
3.6 比較幾種數(shù)據(jù)結(jié)構(gòu) 58
3.7 建立大型數(shù)據(jù)結(jié)構(gòu) 59
3.8 練習(xí) 60
第4章 Python外殼:代碼結(jié)構(gòu) 61
4.1 使用# 注釋 61
4.2 使用\ 連接 62
4.3 使用if、elif 和else進(jìn)行比較 63
4.4 使用while進(jìn)行循環(huán) 66
4.4.1 使用break跳出循環(huán) 66
4.4.2 使用continue跳到循環(huán)開始 67
4.4.3 循環(huán)外使用else 67
4.5 使用for迭代 68
4.5.1 使用break跳出循環(huán) 69
4.5.2 使用continue跳到循環(huán)開始 69
4.5.3 循環(huán)外使用else 69
4.5.4 使用zip()并行迭代 70
4.5.5 使用range()生成自然數(shù)序列 71
4.5.6 其他迭代方式 71
4.6 推導(dǎo)式 72
4.6.1 列表推導(dǎo)式 72
4.6.2 字典推導(dǎo)式 74
4.6.3 集合推導(dǎo)式 74
4.6.4 生成器推導(dǎo)式 74
4.7 函數(shù) 75
4.7.1 位置參數(shù) 79
4.7.2 關(guān)鍵字參數(shù) 79
4.7.3 指定默認(rèn)參數(shù)值 79
4.7.4 使用*收集位置參數(shù) 80
4.7.5 使用**收集關(guān)鍵字參數(shù) 81
4.7.6 文檔字符串 82
4.7.7 一等公民:函數(shù) 82
4.7.8 內(nèi)部函數(shù) 84
4.7.9 閉包 84
4.7.10 匿名函數(shù):lambda()函數(shù) 85
4.8 生成器 86
4.9 裝飾器 87
4.10 命名空間和作用域 89
4.11 使用try和except處理錯(cuò)誤 91
4.12 編寫自己的異常 93
4.13 練習(xí) 94
第5章 Python盒子:模塊、包和程序 95
5.1 獨(dú)立的程序 95
5.2 命令行參數(shù) 96
5.3 模塊和import語句 96
5.3.1 導(dǎo)入模塊 96
5.3.2 使用別名導(dǎo)入模塊 98
5.3.3 導(dǎo)入模塊的一部分 98
5.3.4 模塊搜索路徑 98
5.4 包 99
5.5 Python 標(biāo)準(zhǔn)庫 99
5.5.1 使用setdefault()和defaultdict()處理缺失的鍵 100
5.5.2 使用Counter()計(jì)數(shù) 101
5.5.3 使用有序字典OrderedDict()按鍵排序 103
5.5.4 雙端隊(duì)列:棧+隊(duì)列 103
5.5.5 使用itertools迭代代碼結(jié)構(gòu) 104
5.5.6 使用pprint()友好輸出 105
5.6 獲取更多Python代碼 105
5.7 練習(xí) 106
第6章 對(duì)象和類 107
6.1 什么是對(duì)象 107
6.2 使用class定義類 108
6.3 繼承 109
6.4 覆蓋方法 111
6.5 添加新方法 112
6.6 使用super從父類得到幫助 112
6.7 self的自辯 113
6.8 使用屬性對(duì)特性進(jìn)行訪問和設(shè)置 114
6.9 使用名稱重整保護(hù)私有特性 117
6.10 方法的類型 118
6.11 鴨子類型 119
6.12 特殊方法 120
6.13 組合 123
6.14 何時(shí)使用類和對(duì)象而不是模塊 124
6.15 練習(xí) 126
第7章 像高手一樣玩轉(zhuǎn)數(shù)據(jù) 127
7.1 文本字符串 127
7.1.1 Unicode 127
7.1.2 格式化 134
7.1.3 使用正則表達(dá)式匹配 137
7.2 二進(jìn)制數(shù)據(jù) 144
7.2.1 字節(jié)和字節(jié)數(shù)組 144
7.2.2 使用struct轉(zhuǎn)換二進(jìn)制數(shù)據(jù) 145
7.2.3 其他二進(jìn)制數(shù)據(jù)工具 148
7.2.4 使用binascii()轉(zhuǎn)換字節(jié)/ 字符串 149
7.2.5 位運(yùn)算符 149
7.3 練習(xí) 149
第8章 數(shù)據(jù)的歸宿 152
8.1 文件輸入/輸出 152
8.1.1 使用write()寫文本文件 153
8.1.2 使用read()、readline()或者readlines()讀文本文件 154
8.1.3 使用write()寫二進(jìn)制文件 156
8.1.4 使用read()讀二進(jìn)制文件 157
8.1.5 使用with自動(dòng)關(guān)閉文件 157
8.1.6 使用seek()改變位置 157
8.2 結(jié)構(gòu)化的文本文件 159
8.2.1 CSV 159
8.2.2 XML 161
8.2.3 HTML 163
8.2.4 JSON 163
8.2.5 YAML 165
8.2.6 安全提示 166
8.2.7 配置文件 167
8.2.8 其他交換格式 168
8.2.9 使用pickle序列化 168
8.3 結(jié)構(gòu)化二進(jìn)制文件 169
8.3.1 電子數(shù)據(jù)表 169
8.3.2 層次數(shù)據(jù)格式 169
8.4 關(guān)系型數(shù)據(jù)庫 170
8.4.1 SQL 170
8.4.2 DB-API 172
8.4.3 SQLite 172
8.4.4 MySQL 174
8.4.5 PostgreSQL 174
8.4.6 SQLAlchemy 174
8.5 NoSQL數(shù)據(jù)存儲(chǔ) 179
8.5.1 dbm family 180
8.5.2 memcached 180
8.5.3 Redis 181
8.5.4 其他的NoSQL 189
8.6 全文數(shù)據(jù)庫 189
8.7 練習(xí) 190
第9章 剖析Web 191
9.1 Web 客戶端 192
9.1.1 使用telnet進(jìn)行測試 193
9.1.2 Python的標(biāo)準(zhǔn)Web庫 194
9.1.3 拋開標(biāo)準(zhǔn)庫:requests 195
9.2 Web 服務(wù)端 196
9.2.1 最簡單的Python Web服務(wù)器 196
9.2.2 Web服務(wù)器網(wǎng)關(guān)接口 198
9.2.3 框架 198
9.2.4 Bottle 198
9.2.5 Flask 201
9.2.6 非Python的Web服務(wù)器 204
9.2.7 其他框架 206
9.3 Web服務(wù)和自動(dòng)化 207
9.3.1 webbrowser模塊 207
9.3.2 Web API和表述性狀態(tài)傳遞 208
9.3.3 JSON 209
9.3.4 抓取數(shù)據(jù) 209
9.3.5 用BeautifulSoup來抓取HTML 209
9.4 練習(xí) 210
第10章 系統(tǒng) 212
10.1 文件 212
10.1.1 用open()創(chuàng)建文件 212
10.1.2 用exists()檢查文件是否存在 213
10.1.3 用isfile()檢查是否為文件 213
10.1.4 用copy()復(fù)制文件 213
10.1.5 用rename()重命名文件 214
10.1.6 用link()或者symlink()創(chuàng)建鏈接 214
10.1.7 用chmod()修改權(quán)限 214
10.1.8 用chown()修改所有者 214
10.1.9 用abspath()獲取路徑名 215
10.1.10 用realpath()獲取符號(hào)的路徑名 215
10.1.11 用remove()刪除文件 215
10.2 目錄 215
10.2.1 使用mkdir()創(chuàng)建目錄 215
10.2.2 使用rmdir()刪除目錄 215
10.2.3 使用listdir()列出目錄內(nèi)容 216
10.2.4 使用chdir()修改當(dāng)前目錄 216
10.2.5 使用glob()列出匹配文件 216
10.3 程序和進(jìn)程 217
10.3.1 使用subprocess創(chuàng)建進(jìn)程 218
10.3.2 使用multiprocessing創(chuàng)建進(jìn)程 219
10.3.3 使用terminate()終止進(jìn)程 219
10.4 日期和時(shí)間 220
10.4.1 datetime模塊 221
10.4.2 使用time模塊 223
10.4.3 讀寫日期和時(shí)間 225
10.4.4 其他模塊 227
10.5 練習(xí) 228
第11章 并發(fā)和網(wǎng)絡(luò) 229
11.1 并發(fā) 230
11.1.1 隊(duì)列 231
11.1.2 進(jìn)程 231
11.1.3 線程 232
11.1.4 綠色線程和gevent 234
11.1.5 twisted 236
11.1.6 asyncio 238
11.1.7 Redis 238
11.1.8 隊(duì)列之上 241
11.2 網(wǎng)絡(luò) 241
11.2.1 模式 242
11.2.2 發(fā)布-訂閱模型 242
11.2.3 TCP/IP 245
11.2.4 套接字 246
11.2.5 ZeroMQ 250
11.2.6 scapy 253
11.2.7 網(wǎng)絡(luò)服務(wù) 253
11.2.8 Web服務(wù)和API 255
11.2.9 遠(yuǎn)程處理 256
11.2.10 大數(shù)據(jù)和MapReduce 260
11.2.11 在云上工作 261
11.3 練習(xí) 264
第12章 成為真正的Python開發(fā)者 265
12.1 關(guān)于編程 265
12.2 尋找Python代碼 265
12.3 安裝包 266
12.3.1 使用pip 266
12.3.2 使用包管理工具 267
12.3.3 從源代碼安裝 267
12.4 集成開發(fā)環(huán)境 268
12.4.1 IDLE 268
12.4.2 PyCharm 268
12.4.3 IPython 269
12.5 命名和文檔 269
12.6 測試代碼 270
12.6.1 使用pylint、pyflakes和pep8檢查代碼 270
12.6.2 使用unittest進(jìn)行測試 272
12.6.3 使用doctest進(jìn)行測試 276
12.6.4 使用nose進(jìn)行測試 277
12.6.5 其他測試框架 278
12.6.6 持續(xù)集成 278
12.7 調(diào)試Python代碼 278
12.8 使用pdb進(jìn)行調(diào)試 279
12.9 記錄錯(cuò)誤日志 284
12.10 優(yōu)化代碼 286
12.10.1 測量時(shí)間 286
12.10.2 算法和數(shù)據(jù)結(jié)構(gòu) 288
12.10.3 Cython、NumPy和C擴(kuò)展 289
12.10.4 PyPy 289
12.11 源碼控制 289
12.11.1 Mercurial 290
12.11.2 Git 290
12.12 復(fù)制本書代碼 292
12.13 更多內(nèi)容 293
12.13.1 書 293
12.13.2 網(wǎng)站 293
12.13.3 社區(qū) 293
12.13.4 大會(huì) 294
12.14 后續(xù)內(nèi)容 294
附錄A Python的藝術(shù) 295
附錄B 工作中的Python 307
附錄C Python的科學(xué) 320
附錄D 安裝Python 3 339
附錄E 習(xí)題解答 349
附錄F 速查表 380
作者介紹 383
封面介紹 383
- 現(xiàn)代無線電實(shí)驗(yàn)的PDF電子書免費(fèi)下載 285次下載
- 半導(dǎo)體收音機(jī)淺談的PDF電子書免費(fèi)下載 171次下載
- 深度學(xué)習(xí)入門:基于Python的理論與實(shí)現(xiàn)電子書 32次下載
- 光學(xué)諧振腔的圖解分析與設(shè)計(jì)方法的PDF電子書免費(fèi)下載 132次下載
- MATLAB函數(shù)速查手冊(cè)PDF電子書免費(fèi)下載 150次下載
- 電子管數(shù)據(jù)手冊(cè)合集PDF電子書免費(fèi)下載 82次下載
- 高級(jí)語言程序設(shè)計(jì)從菜鳥到大師深入C語言程序設(shè)計(jì)PDF電子書免費(fèi)下載 182次下載
- 寫給文科生看的編程入門Python管窺PDF電子書免費(fèi)下載 7次下載
- python入門教材電子書合集免費(fèi)下載 31次下載
- Java基礎(chǔ)教程PDF電子書免費(fèi)下載 66次下載
- 51單片機(jī)C語言程序100例電子書免費(fèi)下載 987次下載
- 電冰箱快速維修PDF電子書免費(fèi)下載 51次下載
- 家電維修1128例PDF電子書免費(fèi)下載 207次下載
- STM8 C語言精品編程100例PDF版電子書免費(fèi)下載 0次下載
- 數(shù)字信號(hào)處理算法C語言實(shí)現(xiàn)PDF版電子書免費(fèi)下載 0次下載
- 使用Python進(jìn)行自然語言處理 481次閱讀
- Python中Excel轉(zhuǎn)PDF的實(shí)現(xiàn)步驟 1209次閱讀
- 電子書閱讀器內(nèi)置鋰電池供電自動(dòng)切換電路 2030次閱讀
- Python怎么批量生成PDF文檔 1168次閱讀
- Python的下載與安裝 1398次閱讀
- 如何使用Python直接給微信推送消息 2105次閱讀
- Python語言中的云端系統(tǒng)知識(shí) 2537次閱讀
- Python語言的發(fā)展歷程和特點(diǎn) 9622次閱讀
- 機(jī)器學(xué)習(xí)入門寶典《統(tǒng)計(jì)學(xué)習(xí)方法》的介紹 4682次閱讀
- 淺談Python語言 1608次閱讀
- Python和其他語言相較如何? 2997次閱讀
- 機(jī)器學(xué)習(xí)和數(shù)據(jù)科學(xué)必讀的10本免費(fèi)在線電子書和書的詳細(xì)介紹 6745次閱讀
- Python語言在人工智能中的功能及優(yōu)勢 1.1w次閱讀
- 最新電子書拆解評(píng)測系列報(bào)道(一):打開你的眼界 1.2w次閱讀
- r語言中有哪些取整運(yùn)算_python和r語言的區(qū)別對(duì)比_python與r語言哪個(gè)好 3398次閱讀
下載排行
本周
- 1電子電路原理第七版PDF電子教材免費(fèi)下載
- 0.00 MB | 1491次下載 | 免費(fèi)
- 2單片機(jī)典型實(shí)例介紹
- 18.19 MB | 95次下載 | 1 積分
- 3S7-200PLC編程實(shí)例詳細(xì)資料
- 1.17 MB | 27次下載 | 1 積分
- 4筆記本電腦主板的元件識(shí)別和講解說明
- 4.28 MB | 18次下載 | 4 積分
- 5開關(guān)電源原理及各功能電路詳解
- 0.38 MB | 11次下載 | 免費(fèi)
- 6100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 7基于單片機(jī)和 SG3525的程控開關(guān)電源設(shè)計(jì)
- 0.23 MB | 4次下載 | 免費(fèi)
- 8基于AT89C2051/4051單片機(jī)編程器的實(shí)驗(yàn)
- 0.11 MB | 4次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費(fèi)
- 2PADS 9.0 2009最新版 -下載
- 0.00 MB | 66304次下載 | 免費(fèi)
- 3protel99下載protel99軟件下載(中文版)
- 0.00 MB | 51209次下載 | 免費(fèi)
- 4LabView 8.0 專業(yè)版下載 (3CD完整版)
- 0.00 MB | 51043次下載 | 免費(fèi)
- 5555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33562次下載 | 免費(fèi)
- 6接口電路圖大全
- 未知 | 30320次下載 | 免費(fèi)
- 7Multisim 10下載Multisim 10 中文版
- 0.00 MB | 28588次下載 | 免費(fèi)
- 8開關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21539次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935053次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537793次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191183次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183277次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138039次下載 | 免費(fèi)
評(píng)論