Python 快速入門, 3/e (The Quick Python Book, 3/e)
[美]娜奧米·塞德(Naomi Ceder)
- 出版商: 人民郵電
- 出版日期: 2019-08-01
- 定價: $534
- 售價: 8.5 折 $454
- 語言: 簡體中文
- ISBN: 7115509352
- ISBN-13: 9787115509352
-
相關分類:
Python、程式語言
- 此書翻譯自: The Quick Python Book, 3/e (Paperback)
-
相關翻譯:
Python 技術者們 - 練功!老手帶路教你精通正宗 Python 程式 (The Quick Python Book, 3/e) (繁中版)
下單後立即進貨 (約4週~6週)
買這商品的人也買了...
-
$620$527 -
$250Python 數據分析基礎教程-NumPy 學習指南, 2/e (NumPy Beginner's Guide, 2/e)
-
$650$585 -
$750$713 -
$250鳳凰計畫:一個 IT計畫的傳奇故事 (The Phoenix Project : A Novel about IT, DevOps, and Helping your business win)(沙盤特別版)
-
$403Zabbix 監控系統深度實踐, 2/e
-
$250Python 科學計算基礎教程
-
$356Go 語言實戰 (GO in Action)
-
$403Python 地理空間分析指南, 2/e (Learning Geospatial Analysis with Python, 2/e)
-
$380$300 -
$403Python 地理數據處理 (Geoprocessing with Python)
-
$450$356 -
$454DevOps 實踐指南
-
$1,510$1,435 -
$500$390 -
$520$411 -
$454TypeScript 實戰指南
-
$403Java 編程方法論:響應式 RxJava 與代碼設計實戰
-
$403OpenShift 助力 DevOps : 雲部署更簡單 (DevOps with OpenShift: Cloud Deployments Made Easy)
-
$517Linux實戰
-
$454Java 微服務測試:基於 Arquillian、Hoverfly、AssertJ、JUnit、Selenium 與 Mockito (Testing Java Microservices: Using Arquillian, Hoverfly, AssertJ, JUnit, Selenium, and Mockito)
-
$352軟件項目估算 Software Project Estimation
-
$380$300 -
$3,680$3,606 -
$1,000$780
相關主題
商品描述
這是一本Python快速入門書,基於Python 3.6編寫。本書分為4部分,第一部分講解Python的基礎知識,對Python進行概要的介紹;第二部分介紹Python編程的重點,涉及列表、元組、集合、字符串、字典、流程控制、函數、模塊和作用域、文件系統、異常等內容;第三部分闡釋Python的特性,涉及類和麵向對象、正則表達式、數據類型即對象、包、Python庫等內容;第四部分關註數據處理,涉及數據文件的處理、網絡數據、數據的保存和數據探索,最後給出了相關的案例。
本書框架結構清晰,內容編排合理,講解循序漸進,並結合大量示例和習題,讓讀者可以快速學習和掌握Python,既適合Python初學者學習,也適合作為專業程序員的簡明Python參考書。
作者簡介
作者:[美]娜奧米·塞德(Naomi Ceder)譯者:戴旭
娜奧米·塞德(Naomi Ceder)是Python軟件基金會zhu席。自2001年以來,她一直在學習、使用和教授Python。
她的編程生涯已經持續了近30年,使用過多種編程語言,做過Linux系統管理員、編程教師、開發人員和系統架構師。她從2001年開始使用Python,從此向各個層次的用戶講授Python,從12歲的孩子到專業編程人員都有。她向所有人宣傳Python,宣講加入內容豐富的社區的好處。她現在領導著Dick Blick Art Materials的一支開發團隊。
目錄大綱
第一部分開始篇
第1章關於Python 3
1.1用Python的理由3
1.2 Python的長處3
1.2.1 Python易於使用4
1.2.2 Python富有表現力4
1.2.3 Python可讀性好5
1.2.4 Python功能齊備5
1.2.5 Python跨平台6
1.2.6 Python免費6
1.3 Python的短板6
1.3.1 Python不是速度最快的語言7
1.3.2 Python的庫不算最多7
1.3.3 Python在編譯時不檢查變量類型7
1.3.4 Python對移動應用的支持不足8
1.3.5 Python對多處理器的利用不充分8
1.4學Python 3的理由8
1.5小結9
第2章入門10
2.1 Python的安裝10
2.2基礎交互模式和IDLE 12
2.2.1基礎交互模式12
2.2.2 IDLE集成開發環境13
2.2.3基礎交互模式和IDLE的適用場景13
2.3使用IDLE的Python shell窗口13
2.4第一個程序“Hello, world" 14
2.5利用交互式提示符探索Python 15
2.6小結16
第3章Python概述17
3.1 Python簡介17
3.2內置數據類型18
3.2.1數值18
3.2.2列表20
3.2.3元組21
3.2.4字符串22
3.2 .5字典23
3.2.6集合23
3.2.7文件對象23
3.3流程控制語句結構24
3.3.1布爾值和表達式24
3.3.2 if-elif-else語句25
3.3.3 while循環25
3.3.4 for循環25
3.3.5函數定義26
3.3.6異常27
3.3.7用關鍵字with控制上下文27
3.4創建模塊28
3.5面向對象編程29
3.6小結31
第二部分重點內容
第4章基礎知識35
4.1縮進和代碼塊構建35
4.2識別註釋36
4.3變量和賦值37
4.4表達式38
4.5字符串39
4.6數值40
4.6.1內置數值處理函數41
4.6.2高級數值處理函數41
4.6.3數值計算41
4.6.4複數41
4.6.5高級複數函數42
4.7 None值43
4.8獲取用戶輸入43
4.9內置操作符44
4.10基本的Python編碼風格44
4.11小結45
第5章列表、元組和集合46
5.1列表類似於數組46
5.2列表的索引機制47
5.3修改列表49
5.4對列表排序51
5.4.1自定義排序52
5.4.2 sorted()函數53
5.5其他常用的列表操作53
5.5.1用in操作符判斷列表成員53
5.5.2用+操作符拼接列表54
5.5.3用*操作符初始化列表54
5.5.4用min和max方法求列表的最小值和最大值54
5.5.5用index方法搜索列表54
5.5.6用count方法對匹配項計數55
5.5.7列表操作小結55
5.6嵌套列表和深複製56
5.7元組58
5.7.1元組的基礎知識59
5.7 .2單個元素的元組應加上逗號60
5.7.3元組的打包和拆包60
5.7.4列表和元組的相互轉換61
5.8集合62
5.8.1集合的操作62
5.8.2不可變集合63
5.9小結64
第6章字符串65
6.1將字符串理解為字符序列65
6.2基本的字符串操作66
6.3特殊字符和轉義序列66
6.3.1基本的轉義序列66
6.3.2數字格式(八進制、十六進制)和Unicode編碼的轉義序列67
6.3.3對帶特殊字符的字符串打印和求值的差異68
6.4字符串方法68
6.4.1字符串的split和join方法69
6.4.2將字符串轉換為數值70
6.4.3去除多餘的空白符71
6.4.4字符串搜索72
6.4.5字符串修改74
6.4.6利用列表修改字符串75
6.4.7其他有用的字符串方法和常量75
6.5將對象轉換為字符串77
6.6使用format方法78
6.6.1 format方法和位置參數78
6.6.2 format方法和命名參數78
6.6.3格式描述符79
6.7用%格式化字符串79
6.7.1使用格式化序列80
6.7.2命名參數和格式化序列81
6.8字符串內插82
6.9 bytes對象82
6.10小結84
第7章字典85
7.1何為字典85
7.2字典的其他操作87
7.3單詞計數90
7.4可用作字典鍵的對象90
7.5稀疏矩陣91
7.6將字典用作緩存92
7.7字典的效率93
7.8小結93
第8章流程控制94
8.1 while循環94
8.2 if-elif-else語句95
8.3 for循環96
8.3.1 range函數97
8.3.2用初值和步進值控制range函數97
8.3.3在for循環中使用break和
continue語句98
8.3.4 for循環和元組拆包98
8.3.5 enumerate函數98
8.3.6 zip函數99
8.4列表和字典推導式99
8.5語句、代碼塊和縮進101
8.6布爾值和布爾表達式103
8.6.1大多數Python對像都能用作布爾類型104
8.6.2比較操作符和布爾操作符104
8.7編寫簡單的文本文件分析程序105
8.8小結106
第9章函數107
9.1基本的函數定義107
9.2多種函數參數108
9.2.1按位置給出形參108
9.2.2按形參名稱傳遞實參109
9.2.3變長實參110
9.2.4多種參數傳遞方式的混用111
9.3將可變對像用作函數實參111
9.4局部變量、非局部變量和全局變量113
9.5將函數賦給變量115
9.6 lambda表達式115
9.7生成器函數116
9.8裝飾器117
9.9小結118
第10章模塊和作用域規則120
10.1何為模塊120
10.2編寫第一個模塊121
10.3 import語句123
10.4模塊搜索路徑124
10.5模塊內部私有名稱126
10.6庫和第三方模塊127
10.7 Python作用域規則和命名空間127
10.8小結133
第11章Python程序134
11.1創建一個很簡單的程序134
11.1.1從命令行啟動腳本135
11.1.2命令行參數135
11.1.3腳本輸入/輸出的重定
向136
11.1.4 argparse模塊137
11.1.5 fileinput模塊的使用138
11.2讓腳本在UNIX下直接運行140
11.3 macOS系統中的腳本140
11.4 Windows中多種腳本執行方式140
11.4.1從命令窗口或PowerShell中啟動腳本141
11.4.2 Windows中的其他運行方式141
11.5程序和模塊141
11.6發布Python應用程序146
11.6.1 wheel包146
11.6.2 zipapp和pex 146
11.6.3 py2exe和py2app 147
11.6.4用freeze創建可執行程序147
11.7小結147
第12章文件系統的使用149
12.1 os、os.path和pathlib的對比149
12.2路徑和路徑名150
12.2.1絕對路徑和相對路徑150
12.2.2當前工作目錄151
12.2.3用pathlib模塊訪問目錄152
12.2.4路徑名的處理152
12.2.5用pathlib處理路徑名154
12.2.6常用變量和函數155
12.3獲取文件信息156
12.4文件系統的其他操作158
12.5處理目錄樹下的所有文件161
12.6小結162
第13章文件的讀寫165
13.1打開文件及file對象165
13.2關閉文件166
13.3以寫入等模式打開文件166
13.4讀寫文本及二進制數據的函數167
13.5用pathlib讀寫文件169
13.6屏幕輸入/輸出及重定向169
13.7用struct模塊讀取結構化的二進制數據172
13.8用pickle將對象存入文件173
13.9用shelve保存對象176
13.10小結178
第14章異常179
14.1異常簡介179
14.1.1錯誤和異常處理的一般原則179
14.1.2異常較為正式的定義182
14.1.3多種異常的處理182
14.2 Python中的異常182
14.2.1 Python異常的類型183
14.2. 2引發異常185
14.2.3捕獲並處理異常185
14.2.4自定義新的異常187
14.2.5用assert語句調試程序188
14.2.6異常的繼承架構188
14.2.7示例:用Python編寫的磁盤寫入程序189
14.2.8示例:正常計算過程中的異常189
14.2.9異常的適用場合190
14.3用到with關鍵字的上下文管理器191
14.4小結192
第三部分高級特性
第15章類和麵向對象編程195
15.1定義類195
15.2實例變量196
15.3方法197
15.4類變量199
15.5靜態方法和類方法201
15.5.1靜態方法201
15.5.2類方法202
15.6繼承203
15.7類及實例變量的繼承205
15.8概括:Python類的基礎知識206
15.9私有變量和私有方法208
15.10用@property獲得更為靈活的實例變量209
15.11類實例的作用域規則和命名空間210
15.12析構函數和內存管理214
15.13多重繼承214
15.14小結216
第16章正則表達式218
16.1何為正則表達式218
16.2帶特殊字符的正則表達式219
16.3正則表達式和原始字符串220
16.4從字符串提取出匹配文本221
16.5用正則表達式替換文本224
16.6小結226
第17章數據類型即對象227
17.1類型即對象227
17.2類型的使用228
17.3類型和用戶自定義類228
17.4鴨子類型230
17.5何為特殊方法屬性231
17.6讓對象像列表一樣工作232
17.7特殊方法屬性__getitem__ 232
17.7.1工作原理233
17.7.2實現完整的列表功能234
17.8完整實現列表功能的對象235
17.9由內置類型派生子類237
17.9.1由列表類型派生子類237
17.9.2由UserList派生子類238
17.10特殊方法屬性的適用場景239
17.11小結239
第18章包240
18.1何為包240
18.2包的第一個示例240
18.3包的實際例子242
18.3.1包內的__init__.py文件243
18.3.2 mathproj包的基本用法243
18.3.3子包和子模塊的加載244
18.3.4包內的import語句245
18.4 __all__屬性246
18.5包的合理使用246
18.6小結247
第19章Python庫的使用248
19.1 "功能齊備"的標準
庫248
19.1.1各種數據類型的
管理248
19.1.2文件和存儲操作250
19.1.3操作系統服務的訪問251
19.1.4互聯網協議及其數據格式的使用251
19.1.5開發調試工具及運行時服務252
19.2標準庫之外的庫253
19.3添加其他Python庫253
19.4通過pip和venv安裝Python庫253
19.4.1帶--user標誌的安裝254
19.4.2虛擬環境254
19.5 PyPI(即“奶酪商店”) 255
19.6小結255
第四部分數據處理
第20章簡單的文件問題259
20.1問題:沒完沒了的數據文件流259
20.2場景:無窮無盡的產品源數據259
20.3引入更多目錄結構261
20.4節省存儲空間:壓縮和整理263
20.4.1文件壓縮263
20.4.2文件清理264
20.5小結265
第21章數據文件的處理266
21.1 ETL簡介266
21.2文本文件的讀取267
21.2.1文本編碼:ASCII、
Unicode等267
21.2.2非結構化文本268
21.2.3帶分隔符的普通文本文件270
21.2.4 csv模塊271
21.2.5讀取csv文件並存為字典的列表274
21.3 Excel文件275
21.4數據清洗276
21.4.1清洗276
21.4.2排序277
21.4.3數據清洗時的問題和陷阱278
21.5數據文件的寫入279
21.5.1 CSV和其他帶分隔符的文件279
21.5.2 Excel文件的寫入280
21.5.3數據文件打包280
21.6小結281
第22章網絡數據282
22.1獲取文件282
22.1.1用Python從FTP服務器獲取文件283
22.1.2通過SFTP協議獲取文件284
22.1.3通過HTTP/HTTPS協議獲取文件284
22.2通過API獲取數據285
22.3結構化數據格式287
22.3.1 JSON數據287
22.3.2 XML數據291
22.4抓取Web數據295
22.5小結299
第23章數據的保存300
23.1關係數據庫300
23.2 SQLite:sqlite3數據庫的用法301
23.3 MySQL、PostgreSQL和其他關係數據庫的使用303
23.4利用ORM簡化數據庫操作303
23.4.1 SQLAlchemy 304
23.4.2用Alembic修改數據庫結構307
23.5 NoSQL數據庫310
23.6用Redis實現鍵/值存儲310
23.7 MongoDB中的文檔313
23.8小結315
第24章數據探索316
24.1 Python的數據探索工具316
24.1.1 Python用於數據探索的優勢316
24.1.2 Python能比電子表格做得更好317
24.2 Jupyter記事本317
24.2.1啟動內核318
24.2.2執行單元格中的代碼318
24.3 Python和pandas 319
24.3.1為什麼要選用
pandas 319
24.3.2 pandas的安裝320
24.3.3 Data Frame 320
24.4數據清洗322
24.4.1用pandas加載並保存數據322
24.4.2用Data Frame進行數據清洗324
24.5數據聚合和處理326
24.5.1 Data Frame的合併326
24.5.2數據選取327
24.5.3分組與聚合328
24.6數據繪圖329
24.7不用pandas的理由330
24.8小結331
第25章案例研究332
25.1數據的下載332
25.2解析inventory數據335
25.3根據經緯度選擇一個觀測站336
25.4選擇觀測站並獲取其元數據338
25.5獲取並解析真實的天氣數據341
25.5.1獲取數據341
25.5.2解析天氣數據341
25.6將天氣數據存入數據庫(可選) 344
25.7選取數據並作圖345
25.8用pandas對數據繪圖346
附錄A Python文檔使用指南347
習題答案(異步社區下載)