注冊 | 登錄讀書好,好讀書,讀好書!
讀書網-DuShu.com
當前位置: 首頁出版圖書科學技術計算機/網絡軟件與程序設計Python從菜鳥到高手(第2版)

Python從菜鳥到高手(第2版)

Python從菜鳥到高手(第2版)

定 價:¥95.00

作 者: 李寧
出版社: 清華大學出版社
叢編項:
標 簽: 暫缺

購買這本書可以去


ISBN: 9787302613947 出版時間: 2022-11-01 包裝: 平裝-膠訂
開本: 16開 頁數(shù): 字數(shù):  

內容簡介

  本書從實戰(zhàn)角度系統(tǒng)講解了Python核心知識點以及Python在Web開發(fā)、數(shù)據分析、網絡爬蟲、桌面應用等領域的各種應用實踐。本書用超過10萬行代碼、500個案例完美演繹了Python在各個領域的出色表現(xiàn),每一個案例都擁有詳細的實現(xiàn)步驟,帶領讀者由淺入深系統(tǒng)掌握Python語言的核心以及Python全棧開發(fā)的技能。本書分為四篇,共26章,介紹Python基礎、存儲解決方案、網絡與并發(fā)和Python高級技術等內容。 本書適用于零基礎的初學者,適合作為高等院校教材,也適合想掌握Python開發(fā)的程序員以及所有對Python感興趣的技術人員參考。

作者簡介

  李寧畢業(yè)于東北大學,獲得計算機科學與技術專業(yè)碩士學位。UnityMarvel創(chuàng)始人,華為公司HDE(HUAWEI Developer Experts),開發(fā)原子基金會銀牌講師,51CTO學院金牌講師,IT暢銷書作者。從事軟件研究和開發(fā)超過20年,一直從事編譯器、人工智能、Python、JavaScript、Node.js、Java及跨平臺技術的研究工作,對相關領域的理論、技術和實踐有很深的理解和研究。曾出版40多部IT技術圖書。

圖書目錄

篇  Python基礎知識
第1章  Python入門 3
1.1  搭建Python編程環(huán)境 3
1.1.1  獲取Python安裝包 3
1.1.2  安裝Windows版的Python安裝包 4
1.1.3  安裝macOS版的Python安裝包 4
1.1.4  安裝Linux版的Python安裝包 4
1.2  搭建和使用PyCharm 5
1.2.1  下載和安裝PyCharm 5
1.2.2  創(chuàng)建PyCharm Python工程 6
1.2.3  在PyCharm中添加Python環(huán)境 7
1.2.4  在PyCharm中運行Python程序 9
1.3  Python中的REPL環(huán)境 9
1.4  個Python程序 10
1.5  調試Python程序 10
1.6  實戰(zhàn)與演練 12
1.7  本章小結 12
第2章  Python語言基礎 13
2.1  運行helloworld.py會發(fā)生什么情況 13
2.2  變量 14
2.2.1  變量的定義和初始化 14
2.2.2  變量的命名 15
2.2.3  避免弄錯變量名 16
2.2.4  如何理解變量 17
2.3  字符串基礎 18
2.3.1  單引號字符串和轉義符 18
2.3.2  拼接字符串 19
2.3.3  保持字符串的原汁原味 20
2.3.4  長字符串 21
2.4  數(shù)字 22
2.4.1  基礎知識 22
2.4.2  大整數(shù) 23
2.4.3  二進制、八進制和十六進制 24
2.4.4  數(shù)字的格式化輸出 25
2.5  獲取用戶輸入 26
2.6  注釋 26
2.7  實戰(zhàn)與演練 27
2.8  本章小結 28
第3章  條件與循環(huán) 29
3.1  條件和條件語句 29
3.1.1  布爾(Boolean)值和布爾變量 29
3.1.2  條件語句(if、else和elif) 30
3.1.3  嵌套代碼塊 32
3.1.4  比較運算符 33
3.1.5  斷言 35
3.1.6  pass語句與空代碼塊 36
3.2  循環(huán) 37
3.2.1  while循環(huán) 37
3.2.2  for循環(huán) 38
3.2.3  跳出循環(huán) 40
3.2.4  循環(huán)中的else語句 41
3.3  實戰(zhàn)與演練 42
3.4  本章小結 43
第4章  列表和元組 44
4.1  定義列表 44
4.2  列表的基本操作 44
4.2.1  通過索引操作列表元素 44
4.2.2  分片 46
4.2.3  列表的加法 48
4.2.4  列表的乘法 48
4.2.5  in運算符 48
4.2.6  列表的長度、值和小值 49
4.2.7  列表封包和列表解包 50
4.2.8  修改列表元素 52
4.2.9  刪除列表元素 52
4.2.10  分片賦值 52
4.3  列表方法 53
4.4  元組 56
4.5  for循環(huán)與列表 57
4.5.1  使用for循環(huán)枚舉列表與元組中的元素 57
4.5.2  使用for-in循環(huán)遍歷列表與元組中的元素 58
4.5.3  使用for表達式自動生成列表 59
4.6  實戰(zhàn)與演練 60
4.7  本章小結 62
第5章  字符串 63
5.1  字符串格式化 63
5.1.1  字符串格式化基礎 63
5.1.2  模板字符串 65
5.1.3  字符串的format方法 65
5.1.4  更進一步控制字符串格式化參數(shù) 67
5.1.5  字段寬度、精度和千分位分隔符 68
5.1.6  符號、對齊、用0填充和進制轉換 69
5.1.7  f字符串 70
5.2  字符串方法 70
5.2.1  center方法 70
5.2.2  find方法 71
5.2.3  join方法 71
5.2.4  split方法 72
5.2.5  lower方法、upper方法和capwords函數(shù) 73
5.2.6  replace方法 74
5.2.7  strip方法 74
5.2.8  translate方法與maketrans方法 75
5.3  實戰(zhàn)與演練 75
5.4  本章小結 76
第6章  字典 77
6.1  為什么要引入字典 77
6.2  創(chuàng)建和使用字典 78
6.2.1  dict函數(shù) 78
6.2.2  字典的基本操作 78
6.2.3  字典的格式化字符串 80
6.2.4  字典迭代 81
6.3  字典方法 82
6.3.1  clear方法 82
6.3.2  copy方法與deepcopy函數(shù) 82
6.3.3  fromkeys方法 83
6.3.4  get方法 84
6.3.5  items方法和keys方法 84
6.3.6  pop方法和popitem方法 85
6.3.7  setdefault方法 86
6.3.8  update方法 87
6.3.9  values方法 87
6.4  實戰(zhàn)與演練 88
6.5  本章小結 89
第7章  函數(shù) 90
7.1  函數(shù)基礎 90
7.1.1  定義函數(shù) 90
7.1.2  為函數(shù)添加文檔注釋 90
7.1.3  沒有返回值的函數(shù) 91
7.2  函數(shù)參數(shù) 92
7.2.1  改變參數(shù)的值 92
7.2.2  命名參數(shù)與默認值 97
7.2.3  可變參數(shù) 99
7.2.4  將序列作為函數(shù)的參數(shù)值 100
7.3  作用域 103
7.4  實戰(zhàn)與演練 104
7.5  本章小結 105
第8章  類和對象 106
8.1  對象的魔法 106
8.2  類 106
8.2.1  創(chuàng)建自己的類 106
8.2.2  方法和私有化 108
8.2.3  類代碼塊 110
8.2.4  類的繼承 111
8.2.5  檢測繼承關系 111
8.2.6  多繼承 113
8.2.7  接口 114
8.3  實戰(zhàn)與演練 116
8.4  本章小結 116
第9章  異常 117
9.1  什么是異常 117
9.2  主動拋出異常 117
9.2.1  raise語句 118
9.2.2  自定義異常類 119
9.3  捕捉異常 120
9.3.1  try…except語句的基本用法 120
9.3.2  捕捉多個異常 121
9.3.3  用同一個代碼塊處理多個異常 123
9.3.4  捕捉對象 124
9.3.5  異常捕捉中的else子句 126
9.3.6  異常捕捉中的finally子句 127
9.4  異常、函數(shù)與棧跟蹤 129
9.5  異常的妙用 129
9.6  實戰(zhàn)與演練 131
9.7  本章小結 131
第10章  方法、屬性和迭代器 132
10.1  構造方法 132
10.1.1  構造方法的基礎知識 132
10.1.2  重寫普通方法和構造方法 133
10.1.3  使用super函數(shù) 135
10.2  特殊成員方法 136
10.2.1  自定義序列 136
10.2.2  從內建列表、字符串和字典繼承 138
10.3  方法重載 140
10.3.1  Python為什么在語法上不支持方法重載 141
10.3.2  用魔法方法讓Python支持方法重載 142
10.4  屬性 145
10.4.1  傳統(tǒng)的屬性 145
10.4.2  property函數(shù) 147
10.4.3  監(jiān)控對象中所有的屬性 148
10.5  靜態(tài)方法和類方法 150
10.6  迭代器 152
10.7  生成器 153
10.8  裝飾器 154
10.8.1  疊加使用Python裝飾器 154
10.8.2  定義Python裝飾器 154
10.8.3  理解Python函數(shù) 155
10.8.4  理解Python裝飾器 157
10.9  實戰(zhàn)與演練 158
10.10  本章小結 159
第二篇  存儲解決方案
第11章  文件和流 163
11.1  打開文件 163
11.2  操作文件的基本方法 164
11.2.1  讀文件和寫文件 165
11.2.2  管道輸出 166
11.2.3  讀行和寫行 167
11.3  使用FileInput對象讀取文件 169
11.4  實戰(zhàn)與演練 170
11.5  本章小結 170
第12章  數(shù)據存儲 171
12.1  處理XML格式的數(shù)據 171
12.1.1  讀取與搜索XML文件 171
12.1.2  字典轉換為XML字符串 172
12.1.3  XML字符串轉換為字典 174
12.2  處理JSON格式的數(shù)據 175
12.2.1  JSON字符串與字典互相轉換 175
12.2.2  將JSON字符串轉換為類實例 177
12.2.3  將類實例轉換為JSON字符串 178
12.2.4  類實例列表與JSON字符串互相轉換 179
12.3  將JSON字符串轉換為XML字符串 180
12.4  SQLite數(shù)據庫 180
12.4.1  管理SQLite數(shù)據庫 181
12.4.2  用Python操作SQLite數(shù)據庫 183
12.5  MySQL數(shù)據庫 186
12.6  非關系型數(shù)據庫 188
12.6.1  NoSQL簡介 188
12.6.2  MongoDB數(shù)據庫 188
12.6.3  pymongo模塊 190
12.7  實戰(zhàn)與演練 191
12.8  本章小結 192
第三篇  網絡與并發(fā)
第13章  TCP與UDP編程 195
13.1  套接字 195
13.1.1  建立TCP服務端 195
13.1.2  服務端接收數(shù)據的緩沖區(qū) 199
13.1.3  服務端的請求隊列 200
13.1.4  時間戳服務端 202
13.1.5  用Socket實現(xiàn)HTTP服務器 203
13.1.6  客戶端Socket 206
13.1.7  UDP時間戳服務端 207
13.1.8  UDP時間戳客戶端 208
13.2  socketserver模塊 209
13.2.1  實現(xiàn)socketserver TCP時間戳服務端 209
13.2.2  實現(xiàn)socketserver TCP時間戳客戶端 210
13.3  實戰(zhàn)與演練 211
13.4  本章小結 212
第14章  網絡高級編程 213
14.1  urllib3模塊 213
14.1.1  發(fā)送HTTP GET請求 213
14.1.2  發(fā)送HTTP POST請求 214
14.1.3  HTTP請求頭 216
14.1.4  HTTP響應頭 218
14.1.5  上傳文件 219
14.1.6  超時 220
14.2  Twisted框架 222
14.2.1  異步編程模型 222
14.2.2  Reactor(反應堆)模式 224
14.2.3  HelloWorld(Twisted框架) 224
14.2.4  用Twisted實現(xiàn)時間戳客戶端 226
14.2.5  用Twisted實現(xiàn)時間戳服務端 227
14.3  FTP客戶端 228
14.4  實戰(zhàn)與演練 230
14.5  本章小結 230
第15章  線程與協(xié)程 231
15.1  線程與進程 231
15.1.1  進程 231
15.1.2  線程 231
15.2  Python與線程 232
15.2.1  使用單線程執(zhí)行程序 232
15.2.2  使用多線程執(zhí)行程序 233
15.2.3  為線程函數(shù)傳遞參數(shù) 234
15.2.4  線程和鎖 235
15.3  高級線程模塊(threading) 236
15.3.1  Thread類與線程函數(shù) 236
15.3.2  Thread類與線程對象 237
15.3.3  從Thread類繼承 238
15.4  線程同步 240
15.4.1  線程鎖 240
15.4.2  信號量 242
15.5  協(xié)程 243
15.5.1  同步協(xié)程 244
15.5.2  異步協(xié)程 245
15.6  實戰(zhàn)與演練 245
15.7  本章小結 246
第四篇  Python高級技術
第16章  GUI庫:PyQt6 249
16.1  PyQt6簡介 249
16.2  PyQt6運行環(huán)境安裝 250
16.3  編寫個PyQt6程序 250
16.4  窗口的基本功能 251
16.4.1  窗口圖標 251
16.4.2  提示框 251
16.4.3  關閉窗口 252
16.4.4  消息盒子 253
16.4.5  窗口居中 254
16.5  布局 255
16.5.1  布局 255
16.5.2  盒布局 256
16.5.3  網格布局 257
16.6  控件 258
16.6.1  QPushButton控件 259
16.6.2  QLineEdit控件 261
16.6.3  QCheckBox控件 261
16.6.4  QSlider控件 263
16.6.5  QProgressBar控件 264
16.6.6  QPixmap控件 265
16.6.7  QComboBox控件 266
16.6.8  QCalendarWidget控件 267
16.7  菜單 269
16.8  實戰(zhàn)與演練 270
16.9  本章小結 270
第17章  PyQt6游戲項目實戰(zhàn):俄羅斯方塊 271
17.1  游戲概述 271
17.2  實現(xiàn)游戲的思路 271
17.3  游戲窗口 272
17.4  創(chuàng)建新的方塊 273
17.5  繪制俄羅斯方塊 274
17.6  響應鍵盤動作 275
17.7  移動和旋轉方塊 276
17.8  顯示下一個俄羅斯方塊 278
17.9  本章小結 278
第18章  Python游戲引擎:Pygame基礎知識 279
18.1  Pygame入門 279
18.1.1  搭建Pygame開發(fā)環(huán)境 279
18.1.2  使用Pygame 279
18.1.3  顯示文本 281
18.1.4  顯示中文 282
18.1.5  繪制圓 282
18.1.6  繪制矩形 283
18.1.7  繪制直線 284
18.1.8  繪制弧形 285
18.2  鍵盤和鼠標事件 286
18.2.1  鍵盤事件 286
18.2.2  鼠標事件 287
18.3  實戰(zhàn)與演練 289
18.4  本章小結 290
第19章  Python游戲引擎:Pygame高級技術 291
19.1  圖像處理 291
19.1.1  裝載位圖 291
19.1.2  裝載星空背景 291
19.1.3  顯示和旋轉地球 292
19.2  Pygame精靈(Sprite) 293
19.2.1  為Sprite準備動畫素材 294
19.2.2  編寫精靈類 294
19.2.3  裝載Sprite動畫資源 295
19.2.4  縮放Sprite 295
19.2.5  繪制幀 296
19.2.6  設置Sprite動畫幀率 296
19.2.7  精靈組 297
19.2.8  實現(xiàn)不同的幀率 297
19.2.9  完整案例:Sprite演示 299
19.3  碰撞檢測 302
19.3.1  矩形碰撞檢測 302
19.3.2  圓形碰撞檢測 302
19.3.3  遮罩碰撞檢測 303
19.3.4  精靈與組之間的碰撞檢測 304
19.3.5  組與組之間的碰撞檢測 304
19.4  給游戲加上音效 305
19.5  實戰(zhàn)與演練 307
19.6  本章小結 308
第20章  Pygame游戲項目實戰(zhàn):塔防 310
20.1  游戲概述 310
20.2  游戲中需要完成的工作 310
20.3  游戲初始化 310
20.4  展現(xiàn)游戲角色 311
20.5  響應鼠標和鍵盤事件 312
20.6  碰撞檢測 313
20.7  本章小結 313
第21章  網絡爬蟲與Beautiful Soup 314
21.1  網絡爬蟲基礎 314
21.1.1  爬蟲分類 314
21.1.2  編寫第1個網絡爬蟲 315
21.1.3  保存抓取的數(shù)據 318
21.1.4  從百度抓取海量比基尼美女圖片 319
21.2  HTML分析庫:Beautiful Soup 323
21.2.1  如何使用Beautiful Soup 323
21.2.2  Tag對象的name和string屬性 324
21.2.3  讀寫標簽屬性 325
21.2.4  用Beautiful Soup分析商城首頁的HTML代碼 327
21.2.5  通過回調函數(shù)過濾標簽 328
21.3  實戰(zhàn)與演練 328
21.4  本章小結 329
第22章  Python辦公自動化 330
22.1  Python與Excel交互 330
22.1.1  Python為什么要與Office交互 330
22.1.2  Python與Office交互的各種技術 330
22.1.3  安裝openpyxl 331
22.1.4  創(chuàng)建和保存Workbook 331
22.1.5  讀取Excel文檔 332
22.1.6  獲取和設置單元格中的值 333
22.1.7  插入和刪除行 334
22.1.8  插入和刪除列 335
22.1.9  訪問多個單元格 336
22.1.10  改變行高和列寬 337
22.1.11  設置單元格文字顏色、字體和背景色 338
22.1.12  使用公式 339
22.1.13  向Excel文檔插入圖像 340
22.1.14  格式化數(shù)字和日期 340
22.1.15  合并單元格和取消單元格合并 341
22.1.16  Excel與Pandas結合 342
22.2  Python與Word交互 343
22.2.1  讀取Word文檔的段落 343
22.2.2  獲取段落中的樣式文本 344
22.2.3  設置文本的樣式 344
22.2.4  向Word文檔添加文本 344
22.2.5  向Word文檔添加標題 345
22.2.6  添加換頁符 345
22.2.7  在Word文檔中插入圖像 346
22.2.8  將Word文檔轉換為PDF文檔 346
22.3  Python與PowerPoint交互 347
22.3.1  讀取幻燈片中的文本 347
22.3.2  獲取某一頁幻燈片中的文本 348
22.3.3  新建幻燈片 348
22.3.4  為幻燈片添加一個文本框 348
22.3.5  向幻燈片添加圖像 349
22.4  Python與PDF交互 349
22.4.1  讀取PDF文檔的文本 349
22.4.2  創(chuàng)建PDF文檔 350
22.5  實戰(zhàn)與演練 350
22.6  本章小結 351
第23章  Python爬蟲項目實戰(zhàn):抓取網絡數(shù)據和圖片 352
23.1  網絡庫requests 352
23.1.1  requests的HelloWorld 352
23.1.2  HTTP GET請求 353
23.1.3  添加HTTP請求頭 353
23.1.4  抓取二進制數(shù)據 354
23.1.5  HTTP POST請求 354
23.1.6  響應數(shù)據 355
23.2  項目1:抓取酷狗紅歌榜 356
23.2.1  項目分析 356
23.2.2  項目的完整實現(xiàn) 357
23.3  項目2:抓取金字塔圖片,并保存為Excel文檔 358
23.3.1  項目分析 359
23.3.2  webp轉換為jpg格式 359
23.3.3  項目的完整實現(xiàn) 359
23.4  本章小結 362
第24章  Python Web框架:Django 363
24.1  Django安裝環(huán)境搭建 363
24.2  Django基礎知識 363
24.2.1  建立個Django工程 363
24.2.2  Django工程結構分析 365
24.2.3  遠程訪問與端口號 365
24.2.4  用PyCharm建立Django工程 366
24.2.5  添加路由 367
24.2.6  處理HTTP請求 368
24.2.7  Response與Cookie 370
24.2.8  讀寫Session 372
24.2.9  用戶登錄 373
24.2.10  靜態(tài)文件 375
24.3  Django模板 377
24.3.1  編寫個基于Django模板的應用 377
24.3.2  條件控制標簽 378
24.3.3  循環(huán)控制標簽 379
24.3.4  過濾器 380
24.4  實戰(zhàn)與演練 382
24.5  本章小結 382
第25章  Python Web項目實戰(zhàn):基于Django的58同城網站 383
25.1  項目演示 383
25.2  操作MySQL數(shù)據庫 384
25.3  賬號 385
25.3.1  用戶注冊 385
25.3.2  用戶登錄 386
25.4  招聘頁面 388
25.5  二手車頁面 390
25.6  本章小結 392
第26章  Python擴展學習 393
26.1  用Python控制鼠標和鍵盤 393
26.1.1  獲取鼠標的位置 393
26.1.2  實時獲取鼠標的位置 393
26.1.3  移動和拖動鼠標 394
26.1.4  模擬單擊和雙擊鼠標 394
26.1.5  模擬按鍵 395
26.1.6  模擬鍵盤輸入 395
26.2  Python與C/C 交互 395
26.2.1  Python通過cffi調用C/C 動態(tài)庫 396
26.2.2  Python通過cython調用C/C 動態(tài)庫 396
26.3  制作Python安裝程序 397
26.4  實戰(zhàn)與演練 397
26.5  本章小結 398

本目錄推薦

掃描二維碼
Copyright ? 讀書網 m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網安備 42010302001612號