专栏名称: Python小屋
清华出版社《Python程序设计》系列教材作者董付国的Python小屋。介绍Python基础语法知识、标准库、扩展库知识,探讨Python在各领域的应用。
目录
相关文章推荐
Python中文社区  ·  揭秘 DeepSeek ... ·  2 天前  
Python爱好者社区  ·  “给我滚出贵大!”郑强出任贵州大学校长,打算 ... ·  5 天前  
Python爱好者社区  ·  节后第一个私活,赚了3w ·  4 天前  
Python爱好者社区  ·  python接私活,yyds ·  3 天前  
Python爱好者社区  ·  DeepSeek 最新中国大学排名 ·  3 天前  
51好读  ›  专栏  ›  Python小屋

董付国老师6本Python系列图书阅读指南

Python小屋  · 公众号  · Python  · 2017-10-18 16:05

正文

大概在2013年底的时候,我开始策划面向不同读者群体的Python系列图书,2015年开始,在清华大学出版社陆续出版了系列图书:

  • Python程序设计 》(Python 2.7版本,目前已不再印刷)

  • Python程序设计基础 》(ISBN:9787302410584,出版2年已印刷5次)

  • Python程序设计 》(第2版)(ISBN:9787302436515,出版1年已印刷4次)

  • Python可以这样学 》(ISBN:9787302456469,出版8个月已印刷3次,并 已被台湾引入宝岛发行繁体版

  • Python程序设计开发宝典 》(ISBN:9787302472100,出版3个月已印刷2次)

  • 中学生可以这样学Python 》(ISBN:9787302480396,10月底即将出版)

这套系列图书配套提供 1700页教学PPT 以及 教学大纲 习题答案 教案 考试题库 110课免费视频 。为了方便广大朋友选择适合自己的书,本文把这几本书的区别和侧重点简单介绍一下。


======分割线=======

1、《Python程序设计》

这本书使用的 Python版本是2.7 ,目前已不再印刷,部分网店可能还有几本存货。

这本书的目录是:

第一篇 Python基础

第1章 基础知识

第2章 Python数据结构

第3章 选择与循环

第4章 字符串与正则表达式

第5章 函数设计与使用

第6章 面向对象程序设计

第7章 文件操作

第8章 异常处理结构与程序调试

第二篇 Python高级编程与应用

第9章 GUI编程

第10章 网络程序设计

第11章 大数据处理

第12章 Windows系统编程

第13章 多线程编程

第14章 数据库编程

第15章 多媒体编程

第16章 逆向工程与软件分析

第17章 科学计算与可视化



======分割线=======

2、《Python程序设计基础》

这本书采用Python 3.4编写,全部内容适用于Python 3.5、Python 3.6和更新版本,适合作为会计、统计、经管、管理、人文、旅游等非 计算机专业的程序设计课程教材 ,也适合作为 公选课教材

全书共 9章, 主要内容组织如下:

1 章 基础知识。 介绍如何选择 Python 版本 ,Python 对象模型 ,数字、字符串等基本数据类型,运算符与表达式,内置函数,基本输入输出,Python 程序文件名,扩展库的管理与使用 ,Python代码编写规范,等等。

2 Python 数据类型。 讲解序列常用方法和基本操作,成员测试运算符,切片操作,列表基本操作与常用方法,列表推导式,元组与生成器推导式,序列解包,字典、集合基本操作和常用方法,以及如何使用 Python 基本数据类型实现栈、二叉树、有向图等复杂数据结构。

3 章 选择与循环。 讲解 Python 选择结构 ,for 循环与 while 循环 ,带有else 子句的循环结构, break continue 语句 ,选择结构与循环结构的综合运用。

4 章 字符串与正则表达式。 讲解字符串编码格式,字符串格式化、替换、分割、连接等基本操作方法,正则表达式语法、正则表达式对象、子模式与match 对象 ,以及 Python 正则表达式模块 re 的应用。

5 章 函数设计与使用。 讲解函数的定义与使用,关键参数、默认值参数、长度可变参数等不同参数类型,全局变量与局部变量,参数传递时的序列解包,return 语句, lambda 表达式 ,等等。

6 章 面向对象程序设计。 讲解类的定义与继承,self cls 参数, 类成员与实例成员,私有成员与公有成员,特殊方法与运算符重载等内容。

7 章 文件操作。 讲解文件操作基本知识与 Python 文件对象 ,文本文件内容读取与写入,二进制文件操作与对象序列化,文件复制、移动、重命名、文件类型检测、MD5 值计算 、压缩与解压缩等文件级操作以及目录操作有关知识。

8 章 异常处理与程序调试。 讲解 Python 异常类层次结构 与自定义异常类,多种不同形式的异常处理结构,以及如何使用 IDLE pdb 模块调试 Python 程序。

9章 图形界面设计。 讲解如何使用 wxPython进行GUI编程,主要包括窗体、按钮、文本框、单选钮、复选框、组合框、列表框、树形等控件以及各种对话框的运用。


======分割线=======

3、《Python程序设计》(第2版)

这本书采用Python 3.5编写,全部内容适用于Python 3.6和更新版本。适合作为计算机、网络工程、软件工程、自动化、数字媒体技术、通信工程等 理工科专业本科、研究生的程序设计课程教材 ,个别章节可以根据专业需要进行选讲。

全书共19 章, 主要内容组织如下:

1 基础知识。 介绍如何选择 Python 版本 ,Python 对象模型 ,数字、字符串等基本数据类型,运算符与表达式,内置函数,基本输入输出,Python 程序文件名,扩展库管理与使用 ,Python代码编写规范,等等。

2 Python序列。 讲解序列常用方法和基本操作,成员测试运算符,切片操作,列表基本操作与常用方法,列表推导式,元组与生成器推导式,序列解包,字典、集合基本操作与常用方法,字典推导式与集合推导式,以及如何使用列表实现栈、队列、二叉树、有向图等复杂数据结构。

3 选择与循环。 讲解 Python 选择结构 、for 循环与 while 循环 ,带else 子句的循环结构, break continue 语句 ,选择结构与循环结构的综合运用。

4 字符串与正则表达式。 讲解字符串编码格式,字符串格式化、替换、分割、连接、查找、排版等基本操作,正则表达式语法、正则表达式对象、子模式与match 对象 ,以及 Python 正则表达式模块 re 的应用。

5 函数设计与使用。 讲解函数的定义与使用,关键参数、默认值参数、长度可变参数等不同参数类型,全局变量与局部变量,参数传递时的序列解包,return 语句, lambda 表达式 ,以及map() reduce() filter() 、生成器与可调用对象等 若干高级话题。

6 面向对象程序设计。 讲解类的定义与使用,self cls 参数, 类成员与实例成员,私有成员与公有成员,继承与派生,特殊方法与运算符重载等内容。

7 文件操作。 讲解文件操作基本知识,Python 文件对象 ,文本文件读写操作,二进制文件读写与对象序列化,文件复制、移动、重命名、文件类型检测、文件完整性检查、压缩与解压缩、文件夹大小统计、文件夹增量备份、删除指定类型的文件等内容。

8 异常处理结构与程序调试、测试。 讲解 Python 异常类层次结构 与自定义异常类,多种不同形式的异常处理结构,使用 IDLE pdb 模块调试 Python 程序 ,Python 单元测试相关知识

9 图形界面设计。 讲解如何使用Python扩展库wxPython和标准库tkinter进行 GUI 编程,主要包括窗体、按钮、文本框、单选钮、复选框、组合框、列表框、树形控件以及各种对话框的运用 ,通过大量实际案例演示基本组件的用法。

10 章  网络 程序设计。 讲解计算机网络基础知识, TCP UDP 协议编程,网络嗅探器与端口扫描器 设计,网页内容读取与网页爬虫设计原理,使用 Flask 框架开发 Web 应用, 以及使用 C# Python 混合开发 Web 应用。

11 章  大数据处理。 介绍大数据处理框架 MapReduce Hadoop Spark 基本概念,重点介绍 MapReduce Hadoop 应用。

12 Windows 系统编程。 讲解注册表编程、 GUI 编程、系统版本判断,将 Python 程序打包为 exe 可执行文件,在 Python 中调用外部程序,以及 Python 在系统运维中的应用。

13 多线程与多进程编程。 讲解Python 标准库 threading multiprocessing 在多线程编程与多进程编程中的应用,以及多线程与多进程之间的数据共享与同步控制。

14 数据库编程。 介绍SQLite 数据库及其相关概念, Connection 对象、 Cursor 对象、 Row 对象,以及使用 Python 扩展库操作 Access MS SQL Server MySQL 等数据库。

15 多媒体编程。 讲解扩展库PyOpenGL 在计算机图形学编程中的应用,扩展库 PIL pillow 在图像编程中的应用, pygame 在音乐编程中的应用,以及 speech 在语音识别中的应用。

16 逆向工程与软件分析。 介绍逆向工程与软件分析原理以及相关插件,IDAPython Immunity Debugger 在软件分析中的应用,以及 Windows 平台软件调试原理。

17 章  科学计算与可视化。 讲解扩展库numpy scipy matplotlib 在科学计算与可视化领域的应用,以及标准库 statistics 与扩展库 pandas 在数据处理、统计与分析中的应用。

18 章  密码学编程。 pycrypto rsa hashlib 等模块为主讲解安全哈希算法、对称密钥密码算法 DES AES 以及非对称密钥密码算法 RSA DSA 的应用。

19 章  安卓平台的 Python 编程。 介绍 QPython 和QPython3开发环境的应用,讲解安卓平台的 Python 程序设计。


======分割线=======

4、《Python可以这样学》

这本书采用Python 3.5编写,全部内容也适用于Python 3.6和更新版本。适合作为各专业的 程序设计课程教材 (个别章节可以选讲),或者作为 教师参考书 (可以从案例中选取给学生布置作业),也适合 自学 ,如果自学的话就不要购买前面的几本书了。本书前言可以查看 重磅:《Python可以这样学》正式出版

本书详细目录:

第1章  Python基础 1
1.1  Python是一种什么样的语言 1
1.2  Python开发环境 2
1.2.1  百家争鸣的繁荣景象 2
1.2.2  IDLE简单使用 7
1.3  变量、运算符与表达式 11
1.3.1  Python变量与内置数据类型 11
1.3.2  常用内置函数 17
1.3.3  运算符与表达式 24
1.3.4  人机对话基本接口 28
1.4  模块安装与使用 30
1.4.1  安装Python扩展库 30
1.4.2  模块导入与使用 34
1.4.3  编写自己的模块和包 36
第2章  Python序列 39
2.1  列表与列表推导式 40
2.1.1  列表创建与删除 40
2.1.2  列表常用方法 42
2.1.3  列表推导式 51
2.1.4  切片 55
2.2  元组与生成器推导式 58
2.2.1  元组 58
2.2.2  生成器推导式 59
2.3  字典 61
2.3.1  字典创建、元素添加、修改与删除 61
2.3.2  访问字典对象的数据 63
2.3.3  案例精选 65
2.4  集合 67
2.4.1  集合基础知识 67
2.4.2  集合操作与运算 69
2.4.3  案例精选 71
2.5  序列解包 73
第3章  程序控制结构与函数设计 76
3.1  选择结构 76
3.1.1  条件表达式 76
3.1.2  选择结构的几种形式 79
3.1.3  案例精选 85
3.2  循环结构 88
3.2.1  for循环与while循环基本语法 88
3.2.2  break与continue语句 89
3.2.3  循环代码优化技巧 90
3.2.4  案例精选 92
3.3  函数设计与使用 97
3.3.1  基本语法 97
3.3.2  函数参数不得不说的几件事 101
3.3.3  变量作用域 106
3.3.4  lambda表达式 109
3.3.5  案例精选 111
第4章  面向对象程序设计 130
4.1  基础知识 130
4.1.1  类的定义与使用 130
4.1.2  私有成员与公有成员 131
4.1.3  数据成员 133
4.1.4  方法 135
4.1.5  属性 137
4.1.6  继承 140
4.1.7  特殊方法与运算符重载 143
4.2  案例精选 144
4.2.1  自定义数组 144
4.2.2  自定义矩阵 150
4.2.3  自定义队列 155
4.2.4  自定义栈 160
4.2.5  自定义二叉树 163
4.2.6  自定义有向图 166
4.2.7  自定义集合 167
第5章  字符串与正则表达式 174
5.1  字符串 174
5.1.1  字符串格式化的两种形式 177
5.1.2  字符串常用方法 180
5.1.3  案例精选 195
5.2  正则表达式 198
5.2.1  正则表达式语法与子模式扩展语法 198
5.2.2  re模块方法与正则表达式对象 202
5.2.3  案例精选 208
第6章  文件与文件夹操作 215
6.1  文件对象常用方法与属性 216
6.2  文本文件操作案例精选 218
6.3  二进制文件操作案例精选 226
6.3.1  使用pickle模块读写二进制文件 226
6.3.2  使用struct模块读写二进制文件 228
6.3.3  使用shelve模块操作二进制文件 229
6.3.4  使用marshal模块操作二进制文件 229
6.4  文件与文件夹操作 230
6.4.1  标准库os、os.path与shutil简介 230
6.4.2  案例精选 235
第7章  异常处理结构、代码测试与调试 261
7.1  异常处理结构 261
7.1.1  异常是什么 261
7.1.2  Python内置异常类层次结构 263
7.1.3  常见异常处理结构形式 264
7.2  代码测试 271
7.2.1  doctest 272
7.2.2  单元测试 274
7.3  代码调试 279
7.3.1  使用IDLE调试 279
7.3.2  使用pdb调试 282
阶段性寄语 288
第8章  数据库应用开发 289
8.1  使用Python操作SQLite数据库 289
8.1.1  Connection对象 290
8.1.2  Cursor对象 291
8.1.3  Row对象 294
8.2  使用Python操作其他关系型数据库 294
8.2.1  操作Access数据库 294
8.2.2  操作MS SQL Server数据库 295
8.2.3  操作MySQL数据库 298
8.3  操作MongoDB数据库 299
第9章  网络应用开发 302
9.1  计算机网络基础知识 302
9.2  Socket编程 304
9.2.1  UDP协议编程 305
9.2.2  TCP协议编程 307
9.2.3  网络嗅探器 309
9.2.4  多进程端口扫描器 311
9.2.5  代理服务器端口映射功能的实现 314
9.2.6  自己编写FTP通信软件 317
9.3  域名解析与网页爬虫 323
9.3.1  网页内容读取与域名分析 323
9.3.2  网页爬虫 324
9.3.3  scrapy框架 326
9.3.4  BeautifulSoup4 328
9.4  网站开发 332
9.4.1  使用IIS运行Python CGI程序 332
9.4.2  Python在ASP.NET中的应用 335
9.4.3  Flask框架简单应用 337
9.4.4  django框架简单应用 338
第10章  多线程与多进程 343
10.1  多线程编程 344
10.1.1  线程创建与管理 346
10.1.2  线程同步技术 349
10.2  多进程编程 357
10.2.1  进程创建与管理 358
10.2.2  进程间数据交换 358
10.2.3  进程同步技术 360
第11章  大数据处理 362
11.1  大数据简介 362
11.2  MapReduce框架 363
11.3  Spark应用开发 368
第12章   图形编程与图像处理 373
12.1  图形编程 373
12.1.1  绘制三维图形 373
12.1.2  绘制三次贝塞尔曲线 376
12.1.3  纹理映射 378
12.1.3  响应键盘事件 381
12.1.4  光照模型 382
12.2  图像处理 384
12.2.1  pillow模块基本用法 385
12.2.2  计算椭圆中心 389
12.2.3  动态生成比例分配图 390
12.2.4  生成验证码图片 391
12.2.5  gif动态图像分离与生成 393
12.2.6  材质贴图 394
16.2.7  图像融合 395
16.2.8  棋盘纹理生成 397
第13章  数据分析与科学计算可视化 398
13.1  扩展库numpy简介 398
13.2  科学计算扩展库scipy 407
13.2.1  数学、物理常用常数与单位模块constants 407
13.2.2  特殊函数模块special 408
13.2.3  信号处理模块signal 409
13.2.4  图像处理模块ndimage 411
13.3  扩展库pandas简介 415
13.4  统计分析标准库statistics用法简介 418
13.5  matplotlib 420
13.5.1  绘制正弦曲线 421
13.5.2  绘制散点图 421
13.5.3  绘制饼状图 423
13.5.4  绘制带有中文标签和图例的图 424
13.5.5  绘制图例标签中带有公式的图 425
13.5.6  使用pyplot绘制,多个图形单独显示 426
13.5.7  绘制三维参数曲线 427
13.5.8  绘制三维图形 428
13.5.9  使用指令绘制自定义图形 430
13.5.10  在tkinter中使用matplotlib 431
13.5.11  使用matplotlib提供的组件实现交互式图形显示 433
13.5.12  根据实时数据动态更新图形 435
13.5.13  使用Slider组件调整曲线参数 437
第14章  密码学编程 440
14.1  经典密码算法 440
14.1.1  凯撒密码算法 440
14.1.2  维吉尼亚密码 442
14.1.3  换位密码算法 443
14.2  安全哈希算法 444
14.3  对称密钥密码算法DES和AES 447
14.4  非对称密钥密码算法RSA与数字签名算法DSA 449
14.4.1  RSA 449
14.4.2  DSA 450
第15章  tkinter编程精彩案例 452
15.1  用户登录界面 453
15.2  选择类组件应用 454
15.3  简单文本编辑器 457
15.4  简单画图程序 461
15.5  电子时钟 465
15.6  简单动画 467
15.7  多窗口编程 471
15.8  屏幕任意区域截图 472
15.9  音乐播放器 475
15.10  远程桌面监控系统 478
第16章  课堂教学管理系统设计与实现 483
16.1  功能简介 483
16.1.1  教师端功能 483
16.1.2  学生端功能 484
16.2  数据库设计 485
16.3  系统总框架与通用功能设计 486
16.4  数据导入功能 490
16.4.1  学生名单导入 490
16.4.2  题库导入 491
16.5  点名与加分功能 492
16.5.1  在线点名 492
16.5.2  离线点名与加分 495
16.6  随机提问功能 498
16.7  在线收作业功能 500
16.7.1  学生端 500
16.7.2  教师端 501
16.8  在线自测与在线考试功能 503
16.8.1  学生端 503
16.8.2  教师端 505
16.9  信息查看功能 508
16.10  数据导出功能 510
16.11  其他辅助功能 510
16.11.1  防作弊功能 511
16.11.2  服务器自动发现功能 511
16.11.3  Word版试卷生成功能 512
结语 514
附录1:本书中例题清单 515
附录2:本书中插图清单 520
附录3:本书中表格清单 523
附录4:本书中拓展知识摘要清单 524


======分割线=======

5、《Python程序设计开发宝典》

本书采用Python 3.6编写,深入讲解Python编程模式,侧重Python内功修炼,同时还介绍了GPU加速、协程与异步编程等比较前言的知识。适合作为各专业 高级程序设计课程教材 ,也可以作为Python程序设计课程的 教师用书 ,也可以作为 自学用书 ,如果看这本书自学的话,就不用再看《Python程序设计基础》了。本书前言可以查看 《Python程序设计开发宝典》全面上架(新书超低价优惠+转发积攒送书)

图书详细目录:

第1章  管中窥豹:Python概述 14
1.1  Python是这样一种语言 14
1.2  Python版本之争 14
1.3  Python编程规范与代码优化建议 15
1.4  Python虚拟开发环境的搭建 17
1.5  Eclipse+PyDev环境搭建和使用 17
1.6  安装扩展库的几种方法 19
1.7  标准库与扩展库中对象的导入与使用 20
1.7.1  import 模块名 [as 别名] 20
1.7.2  from 模块名 import 对象名[ as 别名] 21
1.7.3  from 模块名 import * 21
1.7.4  模块导入时的搜索路径 22
1.8  编写与发布自己的包 23
1.9  Python程序伪编译与打包 25
1.10  从命令行参数和配置文件获取信息 27
第2章  万丈高楼平地起:运算符、表达式与内置对象 29
2.1  Python常用内置对象 29
2.1.1  常量与变量 30
2.1.2  数字 31
2.1.3  字符串 34
2.1.4  列表、元组、字典、集合 35
2.2  Python运算符与表达式 37
2.2.1  算术运算符 38
2.2.2  关系运算符 39
2.2.3  成员测试运算符in与同一性测试运算符is 40
2.2.4  位运算符与集合运算符 41
2.2.5  逻辑运算符 41
2.2.6  矩阵乘法运算符@ 42
2.2.7  补充说明 42
2.3  Python关键字简要说明 43
2.4  Python常用内置函数用法精要 44
2.4.1  类型转换与类型判断 47
2.4.2  最值与求和 51
2.4.3  基本输入输出 52
2.4.4  排序与逆序 55
2.4.5  枚举与迭代 56
2.4.6  map()、reduce()、filter() 57
2.4.7  range() 61
2.4.8  zip() 61
2.4.9  eval()、exec() 62
第3章  玄之又玄,众妙之门:详解Python序列结构 64







请到「今天看啥」查看全文