×
超值优惠券
¥50
100可用 有效期2天

全场图书通用(淘书团除外)

关闭
暂无评论
图文详情
  • ISBN:9787115617866
  • 装帧:平装-胶订
  • 册数:暂无
  • 重量:暂无
  • 开本:16开
  • 页数:428
  • 出版时间:2023-07-01
  • 条形码:9787115617866 ; 978-7-115-61786-6

本书特色

1.专家作序,让无数读者青睐的Python入门书。Talk Python创始人Michael Kennedy作序推荐,Amazon受欢迎Python图书Top 10。

2.内容全面,案例丰富。包含44个巩固练习×17个在线交互式Python测验×19个项目挑战,帮助读者巩固知识和实践技能。

3.语言通俗,快速掌握实用技巧。无须任何基础即可阅读,对初学者尤其友好。遵循二八原则,专注于快速掌握Python实用技巧,使学习过程更加有效。

内容简介

本书由Real Python团队倾力编写,内容兼容Python 3.9版本。全书可分为两大部分,共18章。前半部分透彻地讲解现代Python编程的所有核心知识,后半部分带领你用Python构建实际的应用程序和脚本,解决有趣的现实问题。本书按照逻辑顺序介绍每个概念和语言特性,并以简短明了的代码示例进行解释和说明。你还可以通过书中的编码练习和项目巩固基础,通过交互式小测验检验自己的学习效果。本书内容已经过数以万计的Python爱好者、数据科学家和开发人员的实战检验,尤其适合零基础新人快速习得编写Python程序的实用技巧,培养对编程的热情。

目录

读者评价 iii

关于作者 v

序 vii

前言 xiii

第 1章 配置Python环境 1

1.1 有关Python版本的注意事项 1

1.2 Windows 2

1.2.1 安装Python 2

1.2.2 打开IDLE 3

1.3 macOS 4

1.3.1 安装Python 5

1.3.2 打开IDLE 6

1.4 Ubuntu Linux 7

1.4.1 安装Python 7

1.4.2 打开IDLE 8

第 2章 你的第 一个Python程序 10

2.1 编写Python程序 10

2.1.1 交互式窗口 10

2.1.2 编辑器窗口 12

2.2 搞点儿破坏 13

2.2.1 语法错误 13

2.2.2 运行时错误 14

2.2.3 巩固练习 15

2.3 创建变量 15

2.3.1 赋值运算符 15

2.3.2 变量命名的法则 16

2.3.3 直白的名字胜过简短的名字 17

2.3.4 Python变量命名约定 18

2.3.5 巩固练习 18

2.4 在交互式窗口中检查值 18

2.5 给自己留下有用的笔记 20

2.5.1 如何添加注释 20

2.5.2 约定与抱怨 21

2.6 总结和更多学习资源 22

第3章 字符串与字符串方法 23

3.1 什么是字符串 23

3.1.1 字符串类型 23

3.1.2 字符串字面量 24

3.1.3 确定字符串的长度 26

3.1.4 多行字符串 26

3.1.5 巩固练习 28

3.2 拼接、索引、切片 28

3.2.1 拼接字符串 28

3.2.2 索引字符串 29

3.2.3 字符串切片 30

3.2.4 字符串是不可变的 33

3.2.5 巩固练习 34

3.3 利用字符串方法操作字符串 34

3.3.1 大小写转换 34

3.3.2 移除字符串中的空白字符 35

3.3.3 判断字符串是否以某个字符串开头或结尾 36

3.3.4 字符串方法与不可变性 37

3.3.5 利用IDLE探索其他的字符串方法 37

3.3.6 巩固练习 38

3.4 与用户输入交互 38

3.5 挑战:分析用户输入 40

3.6 处理字符串和数字 40

3.6.1 在字符串上使用算术运算符 40

3.6.2 将字符串转换为数字 42

3.6.3 将数字转换为字符串 43

3.6.4 巩固练习 43

3.7 让输出语句更流畅 44

3.8 在字符串中查找字符串 45

3.9 挑战:把你的用户变成菁瑛骇氪 47

3.10 总结和更多学习资源 48

第4章 数字与数学 49

4.1 整数与浮点数 49

4.1.1 整数 49

4.1.2 浮点数 50

4.1.3 巩固练习 52

4.2 算术运算符和表达式 52

4.2.1 加法 52

4.2.2 减法 53

4.2.3 乘法 54

4.2.4 除法 54

4.2.5 整数除法 54

4.2.6 指数 55

4.2.7 求模运算符 56

4.2.8 算术表达式 57

4.3 挑战:计算用户输入的数据 58

4.4 让Python对你说谎 58

4.5 数学函数和数字方法 59

4.5.1 round()函数 59

4.5.2 abs()函数 61

4.5.3 pow()函数 61

4.5.4 检查浮点数是否为整数 62

4.5.5 巩固练习 62

4.6 改变数字的输出样式 63

4.7 复数 65

4.8 总结和更多学习资源 67

第5章 函数和循环 69

5.1 函数到底是什么 69

5.1.1 函数即值 69

5.1.2 Python如何执行函数 71

5.1.3 函数可能会产生副作用 72

5.2 编写自己的函数 72

5.2.1 函数的结构 73

5.2.2 调用用户定义函数 76

5.2.3 没有return语句的函数 77

5.2.4 为你的函数编写文档 77

5.2.5 巩固练习 78

5.3 挑战:温度转换 78

5.4 绕圈跑 79

5.4.1 while循环 79

5.4.2 for循环 81

5.4.3 嵌套循环 84

5.4.4 巩固练习 85

5.5 挑战:跟踪投资情况 85

5.6 理解Python的作用域 86

5.6.1 什么是作用域 86

5.6.2 作用域解析 87

5.6.3 LEGB原则 88

5.6.4 打破规则 88

5.7 总结和更多学习资源 89

第6章 寻找并修复代码中的bug 91

6.1 使用调试控制窗口 91

6.1.1 调试窗口:概览 92

6.1.2 Step按钮 93

6.1.3 断点和Go按钮 94

6.1.4 Over和Out 96

6.2 消除bug 96

6.2.1 第(1)步:猜测问题出在哪里 97

6.2.2 第(2)步:设置断点并检查代码 98

6.2.3 第(3)步:确定错误并尝试修复 99

6.2.4 第(4)步:重复第(1)步至第(3)步直到没有bug 100

6.2.5 寻找bug的其他方法 100

6.3 总结和更多学习资源 102

第7章 条件逻辑与流程控制 103

7.1 值的比较 103

7.2 来点儿逻辑 106

7.2.1 and关键字 106

7.2.2 or关键字 107

7.2.3 not关键字 109

7.2.4 构造更为复杂的表达式 110

7.2.5 巩固练习 111

7.3 控制程序的流向 112

7.3.1 if语句 112

7.3.2 else关键字 113

7.3.3 elif关键字 114

7.3.4 嵌套if语句 116

7.3.5 巩固练习 119

7.4 挑战:求因数 119

7.5 跳出模式 120

7.5.1 if语句与for循环 120

7.5.2 break 120

7.5.3 continue 121

7.5.4 forelse循环 122

7.5.5 巩固练习 123

7.6 从错误中恢复 123

7.6.1 异常动物园 123

7.6.2 try和except关键字 125

7.6.3 空except分句 126

7.6.4 巩固练习 126

7.7 事件模拟和概率计算 127

7.7.1 random模块 127

7.7.2 质地均匀的硬币 128

7.7.3 质地不均匀的硬币 129

7.7.4 巩固练习 130

7.8 挑战:模拟抛硬币实验 130

7.9 挑战:模拟选举 131

7.10 总结和更多学习资源 131

第8章 元组、列表、字典 133

8.1 元组:不可变序列 133

8.1.1 什么是元组 134

8.1.2 创建元组的方法 134

8.1.3 元组和字符串的相似之处 136

8.1.4 元组打包和解包 138

8.1.5 使用in检查元组是否包含某个值 139

8.1.6 从函数返回多个值 139

8.1.7 巩固练习 140

8.2 列表:可变序列 140

8.2.1 创建列表 140

8.2.2 基本操作 142

8.2.3 修改列表中的元素 143

8.2.4 增加和删除元素的列表方法 144

8.2.5 数字列表 147

8.2.6 列表推导式 148

8.2.7 巩固练习 149

8.3 列表与元组的嵌套、拷贝、排序 149

8.3.1 列表和元组的嵌套 149

8.3.2 拷贝列表 150

8.3.3 列表排序 152

8.3.4 巩固练习 153

8.4 挑战:列表的列表 153

8.5 挑战:打油诗 154

8.6 在字典中保存关系 155

8.6.1 什么是字典 155

8.6.2 创建字典 156

8.6.3 访问字典的值 157

8.6.4 添加和删除字典的值 158

8.6.5 检查字典中是否存在某个键 159

8.6.6 迭代字典 159

8.6.7 字典的键和不可变性 160

8.6.8 嵌套字典 161

8.6.9 巩固练习 162

8.7 挑战:首府环游 162

8.8 选择合适的数据结构 163

8.9 挑战:猫猫戴帽帽 164

8.10 总结和更多学习资源 164

第9章 面向对象编程 166

9.1 定义类 166

9.1.1 类和实例 167

9.1.2 如何定义类 167

9.2 实例化对象 169

9.2.1 类和实例属性 170

9.2.2 实例方法 171

9.2.3 巩固练习 173

9.3 从其他类继承 173

9.3.1 狗狗公园的例子 174

9.3.2 父类和子类 175

9.3.3 扩展父类的功能 176

9.3.4 巩固练习 178

9.4 挑战:建模农场 179

9.5 总结和更多学习资源 179

第 10章 模块和包 181

10.1 使用模块 181

10.1.1 创建模块 182

10.1.2 在模块中导入另一个模块 182

10.1.3 import语句的变体 184

10.1.4 为什么要用命名空间 186

10.1.5 巩固练习 188

10.2 使用包 188

10.2.1 创建包 188

10.2.2 导入包中的模块 189

10.2.3 从子包中导入模块 192

10.2.4 巩固练习 193

10.3 总结和更多学习资源 194

第 11章 文件输入与输出 195

11.1 文件和文件系统 195

11.1.1 文件的结构 195

11.1.2 文件系统 196

11.2 在Python中处理文件路径 198

11.2.1 创建Path对象 198

11.2.2 绝对路径和相对路径 200

11.2.3 访问文件路径分量 201

11.2.4 检查文件路径是否存在 203

11.2.5 巩固练习 203

11.3 常见文件系统操作 204

11.3.1 常见目录和文件 204

11.3.2 遍历文件夹内容 207

11.3.3 查找目录中的文件 208

11.3.4 使用**通配符递归匹配 211

11.3.5 移动、删除文件和文件夹 212

11.3.6 巩固练习 214

11.4 挑战:将所有图片文件移动到

一个新目录中 215

11.5 读写文件 215

11.5.1 什么是文件 215

11.5.2 理解文本文件 216

11.5.3 Python文件对象 217

11.5.4 从文件中读取数据 221

11.5.5 向文件写入数据 222

11.5.6 巩固练习 225

11.6 读写CSV数据 225

11.6.1 csv模块 226

11.6.2 巩固练习 231

11.7 挑战:创建高分榜 232

11.8 总结和更多学习资源 233

第 12章 使用pip安装包 234

12.1 使用pip安装第三方包 234

12.1.1 将pip更新至*新版本 237

12.1.2 列出所有已安装的包 238

12.1.3 安装包 238

12.1.4 展示包的详情 240

12.1.5 卸载包 241

12.2 第三方包的陷阱 242

12.3 总结和更多学习资源 243

第 13章 创建、修改PDF文件 244

13.1 从PDF文件中提取文本 244

13.1.1 打开PDF文件 245

13.1.2 提取页面中的文本 247

13.1.3 汇总 248

13.1.4 巩固练习 249

13.2 提取PDF中的页面 249

13.2.1 使用PdfFileWriter类 249

13.2.2 从PDF中提取单个页面 251

13.2.3 从PDF中提取多个页面 252

13.2.4 巩固练习 254

13.3 挑战:PdfFileSplitter类 254

13.4 拼接、合并PDF 255

13.4.1 使用PdfFileMerger类 255

13.4.2 使用.append()拼接PDF 255

13.4.3 使用.merge()合并PDF 257

13.4.4 巩固练习 259

13.5 旋转、裁剪PDF页面 259

13.5.1 旋转页面 259

13.5.2 裁剪页面 263

13.5.3 巩固练习 266

13.6 加密、解密PDF 266

13.6.1 加密PDF 267

13.6.2 解密PDF 268

13.6.3 巩固练习 269

13.7 挑战:整理PDF 269

13.8 从头创建PDF文件 269

13.8.1 安装reportlab 270

13.8.2 使用Canvas 类 270

13.8.3 设置页面尺寸 271

13.8.4 设置字体属性 272

13.9 总结和更多学习资源 274

第 14章 操作数据库 276

14.1 SQLite简介 276

14.1.1 SQLite基础 277

14.1.2 使用with管理数据库连接 278

14.1.3 操作数据库表 279

14.1.4 执行多条SQL语句 281

14.1.5 使用参数化语句避免安全问题 282

14.1.6 获得数据 283

14.1.7 巩固练习 284

14.2 操作其他SQL数据库的库 285

14.3 总结和更多学习资源 285

第 15章 和Web交互 287

15.1 抓取并解析网站中的文本 287

15.1.1 你的第 一个网络抓取器 288

15.1.2 使用字符串方法提取HTML中的文本 289

15.1.3 正则表达式入门 290

15.1.4 使用正则表达式提取HTML中的文本 293

15.1.5 巩固练习 294

15.2 使用HTML解析器抓取网站 294

15.2.1 安装Beautiful Soup 294

15.2.2 创建BeautifulSoup对象 295

15.2.3 使用BeautifulSoup对象 295

15.2.4 巩固练习 297

15.3 和HTML表单交互 298

15.3.1 安装MechanicalSoup 298

15.3.2 创建Browser对象 298

15.3.3 使用MechanicalSoup提交表单 299

15.3.4 巩固练习 302

15.4 和网站进行实时交互 302

15.5 总结和更多学习资源 304

第 16章 科学计算与绘图 306

16.1 使用NumPy操作矩阵 306

16.1.1 安装NumPy 307

16.1.2 创建NumPy array 308

16.1.3 数组运算 309

16.1.4 堆叠、重构数组 311

16.1.5 巩固练习 313

16.2 使用Matplotlib 绘制图像 313

16.2.1 安装Matplotlib 314

16.2.2 使用pyplot进行基本的图像绘制 314

16.2.3 在同一窗口中绘制多幅图像 317

16.2.4 为NumPy数组绘图 319

16.2.5 完善图像的格式 321

16.2.6 其他类型的图像 325

16.2.7 将图像保存为图片 328

16.2.8 与图像交互 329

16.2.9 巩固练习 329

16.3 总结和更多学习资源 329

第 17章 图形用户界面 331

17.1 使用EasyGUI添加GUI元素 331

17.1.1 安装EasyGUI 331

17.1.2 你的第 一个EasyGUI应用程序 332

17.1.3 EasyGUI的GUI元素库 334

17.1.4 优雅地退出程序 338

17.1.5 巩固练习 339

17.2 应用示例:PDF页面旋转程序 340

17.2.1 设计应用程序 340

17.2.2 实现设计 341

17.2.3 巩固练习 344

17.3 挑战:PDF页面提取应用程序 345

17.4 Tkinter简介 346

17.4.1 你的第 一个Tkinter应用程序 346

17.4.2 巩固练习 348

17.5 使用小组件 348

17.5.1 Label小组件 349

17.5.2 Button小组件 351

17.5.3 Entry小组件 352

17.5.4 Text小组件 355

17.5.5 将小组件分配给frame 361

17.5.6 使用relief调整frame的外观 364

17.5.7 小组件命名惯例 365

17.5.8 巩固练习 366

17.6 使用布局管理器控制布局 366

17.6.1 .pack()布局管理器 367

17.6.2 .place()布局管理器 370

17.6.3 .grid()布局管理器 371

17.6.4 巩固练习 379

17.7 让应用程序可交互 379

17.7.1 事件和事件处理器 380

17.7.2 .bind()方法 382

17.7.3 command属性 383

17.7.4 巩固练习 385

17.8 应用示例:温度转换器 386

17.9 应用示例:文本编辑器 389

17.10 挑战:诗人回归 396

17.11 总结和更多学习资源 397

第 18章 写在*后 399

18.1 Python开发者的免费周报 399

18.2 推荐图书:《深入理解Python特性》 400

18.3 Real Python视频课程库 400

18.4 致谢 401

版权声明 404
展开全部

作者简介

戴维·阿莫斯(David Amos) Real Python内容技术总监,Python社区活动PyCoder's Weekly组织者之一。 达恩·巴德尔(Dan Bader) Real Python总编辑,Python社区“意见领袖”,realpython.com学习平台的主要开发人员,另著有热销书《深入理解Python特性》。 乔安娜·雅布隆斯基(Joanna Jablonski) Real Python执行编辑,对谜题和规律的热爱、对细节的执着让她走上了翻译的职业道路。 弗莱彻·海斯勒(Fletcher Heisler) Real Python联合创始人,毕业于普林斯顿大学,2012年,他编写了这份Python教程的初稿,后由本书作者戴维·阿莫斯牵头重写。

预估到手价 ×

预估到手价是按参与促销活动、以最优惠的购买方案计算出的价格(不含优惠券部分),仅供参考,未必等同于实际到手价。

确定
快速
导航