本書Python新手入門經(jīng)典圖書,涵蓋了Python編程的方方面面。本書前半部分介紹了基礎(chǔ)知識(shí)與概念:從安裝Python、配置開發(fā)環(huán)境,到列表、元組、字符串、字典以及各種語句的基礎(chǔ)知識(shí),再到抽象、異常、方法、屬性、迭代器等核心概念,Python與數(shù)據(jù)庫、網(wǎng)絡(luò)、C語言等工具結(jié)合使用,以及Python程序測(cè)試、打包、發(fā)布等知識(shí)。本書的后半部分,向讀者詳盡介紹了當(dāng)下流行的多個(gè)Python項(xiàng)目的開發(fā)過程。 本次修訂,不僅在結(jié)構(gòu)與細(xì)節(jié)知識(shí)上進(jìn)行了優(yōu)化和完善,還增加了貼近真實(shí)商業(yè)環(huán)境的案例,并輔以課件PPT和專門針對(duì)求職應(yīng)聘的習(xí)題,旨在幫助讀者真正掌握Python開發(fā)的實(shí)戰(zhàn)能力。
第 1章 快速上手:基礎(chǔ)知識(shí)1
1.1 交互式解釋器1
1.2 算法是什么2
1.3 數(shù)和表達(dá)式3
1.4 變量4
1.5 語句5
1.6 獲取用戶輸入6
1.7 函數(shù)7
1.8 模塊8
1.8.1 cmath和復(fù)數(shù)9
1.8.2 回到未來9
1.9 保存并執(zhí)行程序10
1.9.1 從命令提示符運(yùn)行Python
腳本11
1.9.2 讓腳本像普通程序一樣11
1.9.3 注釋12
1.10 字符串13
1.10.1 單引號(hào)字符串以及對(duì)引號(hào)
轉(zhuǎn)義13
1.10.2 拼接字符串14
1.10.3 字符串表示str和repr14
1.10.4 長字符串、原始字符串和
字節(jié)15
1.11 小結(jié)20
1.11.1 本章介紹的新函數(shù)20
1.11.2 預(yù)告21
第 2章 列表和元組22
2.1 序列概述22
2.2 通用的序列操作23
2.2.1 索引23
2.2.2 切片25
2.2.3 序列相加27
2.2.4 乘法27
2.2.5 成員資格28
2.3 列表:Python的主力30
2.3.1 函數(shù)list30
2.3.2 基本的列表操作30
2.3.3 列表方法31
2.4 元組:不可修改的序列37
2.5 小結(jié)38
2.5.1 本章介紹的新函數(shù)39
2.5.2 預(yù)告39
第3章 使用字符串40
3.1 字符串基本操作40
3.2 設(shè)置字符串的格式:精簡版40
3.3 設(shè)置字符串的格式:完整版42
3.3.1 替換字段名42
3.3.2 基本轉(zhuǎn)換43
3.3.3 寬度、精度和千位分隔符44
3.3.4 符號(hào)、對(duì)齊和用0填充45
3.4 字符串方法47
3.4.1 center47
3.4.2 find47
3.4.3 join48
3.4.4 lower49
3.4.5 replace49
3.4.6 split50
3.4.7 strip50
3.4.8 translate51
3.4.9 判斷字符串是否滿足特定的
條件51
3.5 小結(jié)51
3.5.1 本章介紹的新函數(shù)52
3.5.2 預(yù)告52
第4章 字典53
4.1 字典的用途53
4.2 創(chuàng)建和使用字典54
4.2.1 函數(shù)dict54
4.2.2 基本的字典操作54
4.2.3 將字符串格式設(shè)置功能用于
字典56
4.2.4 字典方法57
4.3 小結(jié)62
4.3.1 本章介紹的新函數(shù)62
4.3.2 預(yù)告62
第5章 條件、循環(huán)及其他語句63
5.1 再談print和import63
5.1.1 打印 多個(gè)參數(shù)63
5.1.2 導(dǎo)入時(shí)重命名64
5.2 賦值魔法65
5.2.1 序列解包65
5.2.2 鏈?zhǔn)劫x值66
5.2.3 增強(qiáng)賦值66
5.3 代碼塊:縮進(jìn)的樂趣67
5.4 條件和條件語句67
5.4.1 這正是布爾值的用武之地68
5.4.2 有條件地執(zhí)行和if語句69
5.4.3 else子句69
5.4.4 elif子句70
5.4.5 代碼塊嵌套70
5.4.6 復(fù)雜的條件70
5.4.7 斷言74
5.5 循環(huán)75
5.5.1 while循環(huán)75
5.5.2 for循環(huán)76
5.5.3 迭代字典77
5.5.4 一些迭代工具77
5.5.5 跳出循環(huán)79
5.5.6 循環(huán)中的else子句81
5.6 簡單推導(dǎo)81
5.7 三人行83
5.7.1 什么都不做83
5.7.2 使用del刪除83
5.7.3 使用exec和eval執(zhí)行字符串及計(jì)算其結(jié)果84
5.8 小結(jié)86
5.8.1 本章介紹的新函數(shù)87
5.8.2 預(yù)告88
第6章 函數(shù)89
6.1 懶惰是一種美德89
6.2 抽象和結(jié)構(gòu)90
6.3 自定義函數(shù)90
6.3.1 給函數(shù)編寫文檔91
6.3.2 其實(shí)并不是函數(shù)的函數(shù)92
6.4 參數(shù)魔法92
6.4.1 值從哪里來93
6.4.2 我能修改參數(shù)嗎93
6.4.3 關(guān)鍵字參數(shù)和默認(rèn)值97
6.4.4 收集參數(shù)99
6.4.5 分配參數(shù)101
6.4.6 練習(xí)使用參數(shù)102
6.5 作用域104
6.6 遞歸106
6.6.1 兩個(gè)經(jīng)典案例:階乘和冪107
6.6.2 另一個(gè)經(jīng)典案例:二分查找108
6.7 小結(jié)111
6.7.1 本章介紹的新函數(shù)111
6.7.2 預(yù)告112
第7章 面向?qū)ο?13
7.1 對(duì)象魔法113
7.1.1 多態(tài)113
7.1.2 多態(tài)和方法115
7.1.3 封裝116
7.1.4 繼承118
7.2 類118
7.2.1 類到底是什么118
7.2.2 創(chuàng)建自定義類119
7.2.3 屬性、函數(shù)和方法120
7.2.4 再談隱藏120
7.2.5 類的命名空間122
7.2.6 超類123
7.2.7 深入探討繼承124
7.2.8 多個(gè)超類124
7.2.9 接口和內(nèi)省125
7.2.10 抽象基類126
7.3 關(guān)于面向?qū)ο笤O(shè)計(jì)的一些思考128
7.4 小結(jié)128
7.4.1 本章介紹的新函數(shù)129
7.4.2 預(yù)告129
第8章 異常130
8.1 異常是什么130
8.2 讓事情沿你 的軌道出錯(cuò)130
8.2.1 raise語句130
8.2.2 自定義的異常類131
8.3 捕獲異常132
8.3.1 不用提供參數(shù)132
8.3.2 多個(gè)except子句134
8.3.3 一箭雙雕134
8.3.4 捕獲對(duì)象135
8.3.5 一網(wǎng)打盡135
8.3.6 萬事大吉時(shí)136
8.3.7 137
8.4 異常和函數(shù)138
8.5 異常之禪138
8.6 不那么異常的情況140
8.7 小結(jié)141
8.7.1 本章介紹的新函數(shù)141
8.7.2 預(yù)告141
第9章 魔法方法、特性和迭代器142
9.1 構(gòu)造函數(shù)142
9.1.1 重寫普通方法和特殊的構(gòu)造
函數(shù)143
9.1.2 調(diào)用未關(guān)聯(lián)的超類構(gòu)造函數(shù)145
9.1.3 使用函數(shù)super145
9.2 元素訪問146
9.2.1 基本的序列和映射協(xié)議147
9.2.2 從list、dict和str派生149
9.3 其他魔法方法150
9.4 特性150
9.4.1 函數(shù)property151
9.4.2 靜態(tài)方法和類方法152
9.4.3 __getattr__、__setattr__等方法153
9.5 迭代器154
9.5.1 迭代器協(xié)議154
9.5.2 從迭代器創(chuàng)建序列156
9.6 生成器156
9.6.1 創(chuàng)建生成器156
9.6.2 遞歸式生成器157
9.6.3 通用生成器159
9.6.4 生成器的方法159
9.6.5 模擬生成器160
9.7 八皇后問題161
9.7.1 生成器的回溯161
9.7.2 問題161
9.7.3 狀態(tài)表示162
9.7.4 檢測(cè)沖突162
9.7.5 基線條件163
9.7.6 遞歸條件163
9.7.7 掃尾工作165
9.8 小結(jié)165
9.8.1 本章介紹的新函數(shù)166
9.8.2 預(yù)告166
第 10章 模塊167
10.1 模塊概述167
10.1.1 模塊就是程序167
10.1.2 模塊是用來下定義的169
10.1.3 讓模塊可用171
10.1.4 包172
10.2 探索模塊173
10.2.1 模塊包含什么173
10.2.2 使用help獲取幫助174
10.2.3 文檔175
10.2.4 使用源代碼176
10.3 標(biāo)準(zhǔn)庫:一些深受歡迎的模塊176
10.3.1 sys176
10.3.2 os178
10.3.3 fileinput180
10.3.4 集合、堆和雙端隊(duì)列181
10.3.5 time186
10.3.6 random187
10.3.7 shelve和json190
10.3.8 re193
10.3.9 其他有趣的標(biāo)準(zhǔn)模塊205
10.4 小結(jié)207
10.4.1 本章介紹的新函數(shù)207
10.4.2 預(yù)告207
第 11章 文件208
11.1 打開文件208
11.2 文件的基本方法209
11.2.1 讀取和寫入210
11.2.2 使用管道重定向輸出210
11.2.3 讀取和寫入行212
11.2.4 關(guān)閉文件212
11.2.5 使用文件的基本方法213
11.3 迭代文件內(nèi)容215
11.3.1 每次一個(gè)字符(或字節(jié))215
11.3.2 每次一行216
11.3.3 讀取所有內(nèi)容216
11.3.4 使用fileinput實(shí)現(xiàn)延遲行迭代216
11.3.5 文件迭代器217
11.4 小結(jié)218
11.4.1 本章介紹的新函數(shù)218
11.4.2 預(yù)告218
第 12章 圖形用戶界面219
……