第1章 入 门.................. 1
1.1 安装Python.... 1
1.2 集成开发环境4
1.3 程序组成部分 7
1.3.1 基本输出........ 7
1.3.2 基本输入........ 8
1.3.3 代码注释........ 9
1.3.4 多行语句........ 9
1.4 常量. 9
1.4.1 整型............. 10
1.4.2 浮点数类型.. 11
1.4.3 复数类型...... 11
1.4.4 布尔类型...... 11
1.5 变量................... 11
1.5.1 变量的基本定义............... 12
1.5.2 变量的命名规则............... 12
1.5.3 变量的赋值.. 13
1.5.4 变量的共享引用............... 13
1.6 对象和类........14
1.6.1 面向对象程序设计的基本
思想............. 15
1.6.2 定义和使用类................... 15
1.7 运算符............. 16
1.8 项目示例........ 17
小结.......... 18
习题.......... 18
第2章 字 符 串................. 19
2.1 基本字符串操作............ 19
2.2 格式化字符串..................19
2.3 常用字符串方法............ 20
2.4 字符串与正则表达式..23
2.5 项目示例........28
小结...........29
习题...........29
第3章 流程控制语句............ 30
3.1 条件和条件语句............ 30
3.2 循环...................32
3.3 项目示例....... 34
小结...........35
习题...........36
第4章 列表和元组.............. 37
4.1 通用序列概览..................37
4.2 通用序列操作..................37
4.2.1 序列的数学操作............... 37
4.2.2 序列的加法操作和乘法
操作.............. 38
4.2.3 序列的索引和切片操作.... 38
4.2.4 序列的关系与比较操作.... 39
4.3 列表.................. 40
4.3.1 list()函数....... 40
4.3.2 基本的列表操作............... 40
4.3.3 列表方法...... 42
4.4 元组.................. 43
4.4.1 tuple()函数.... 43
4.4.2 基本元组操作................... 44
4.4.3 元组与列表的相互转换.... 44
4.5 项目示例........45
小结..........46
习题..........46
第5章 字 典................. 47
5.1 字典概述........47
5.2 创建和适用字典............47
5.2.1 dict 方法...... 48
5.2.2 基本字典操作................... 48
5.2.3 字典格式化字符串........... 49
5.2.4 字典的常用方法............... 49
5.3 项目示例........ 51
小结.......... 52
习题.......... 52
第6章 函数与模块............... 53
6.1 ADT................. 53
6.2 创建函数........54
6.2.1 定义函数...... 54
6.2.2 调用函数...... 55
6.3 参数魔法........ 55
6.3.1 实参和形参.. 55
6.3.2 默认参数...... 55
6.3.3 函数的返回值................... 56
6.4 作用域............. 57
6.4.1 全局变量和局部变量....... 57
6.4.2 global关键字 58
6.5 递归................... 59
6.5.1 阶乘............. 59
6.5.2 二分查找...... 59
6.6 项目示例........ 61
小结.......... 62
习题.......... 63
第7章 文件和流................. 64
7.1 什么是文件..64
7.2 基本的文件方法.............65
7.2.1 读和写.......... 65
7.2.2 管式输出...... 66
7.2.3 读写行.......... 67
7.2.4 关闭文件...... 67
7.2.5 使用基本文件方法............ 67
7.3 对文件内容进行迭代..68
7.3.1 按字节处理.. 68
7.3.2 按行操作...... 68
7.3.3 读取所有内容................... 69
7.3.4 使用fileinput实现懒惰行
迭代.............. 69
7.3.5 文件迭代器.. 70
7.4 Python文件处理模块71
7.5 项目示例....... 74
小结...........75
习题...........75
第8章 面向对象................ 76
8.1 面向对象概述..................76
8.2 类和对象........76
8.2.1 类和对象的区别............... 76
8.2.2 类的定义...... 77
8.2.3 对象的创建.. 77
8.3 属性和方法...78
8.3.1 类的属性...... 78
8.3.2 类的方法...... 80
8.3.3 内部类的使用................... 81
8.3.4 _ _init_ _方法.................... 82
8.3.5 _ _del_ _方法.................... 82
8.3.6 垃圾回收机制................... 83
8.3.7 类的内置方法................... 84
8.3.8 方法的动态特征............... 87
8.4 继承...................87
8.4.1 使用继承...... 88
8.4.2 抽象基类...... 89
8.4.3 多态性.......... 90
8.4.4 多继承.......... 90
8.4.5 Mixin机制.... 91
8.5 运算符重载.. 91
8.6 项目示例........ 96
小结.......... 97
习题.......... 97
第9章 异 常................. 99
9.1 什么是异常.. 99
9.2 异常的用法....................100
9.2.1 try...except的使用............100
9.2.2 try...finally的使用.............101
9.3 深入异常.....102
9.3.1 使用raise抛出异常...........102
9.3.2 自定义异常.103
9.3.3 assert的使用.104
9.4 项目示例.....104
小结.......108
习题.......108
第10章 数据库支持............109
10.1 数据库技术基础......109
10.1.1 基本概念...109
10.1.2 关系数据库....................110
10.2 访问SQLite数据库 111
10.2.1 Python的SQL接口.........111
10.2.2 使用sqlite3模块访问SQLite
数据库.......111
10.3 访问MySQL数据库................... 112
10.4 项目示例..114
小结....... 119
习题....... 119
第11章 网络编程.............. 120
11.1 网络编程基础........... 120
11.1.1 URL(统一资源定位符).. 120
11.1.2 客户端和服务端............ 121
11.1.3 TCP和UDP协议........... 121
11.1.4 C/S和B/S架构............... 122
11.2 典型网络模块............122
11.2.1 模块socket 122
11.2.2 模块urllib和urllib2 ......... 125
11.2.3 模块SocketServer ........... 126
11.2.4 其他模块.. 127
11.3 多客户端连接............128
11.3.1 分叉和线程化............... 128
11.3.2 异步输入和输出............ 133
11.4 Twisted框架.............137
11.4.1 Twisted下载安装........... 137
11.4.2 Twisted服务器编写....... 137
11.5 项目示例. 140
11.5.1 FTP服务端.................... 140
11.5.2 FTP客户端.................... 141
小结....... 143
习题....... 144
第12章 Python和Web ........ 145
12.1 屏幕抓取. 145
12.1.1 Tidy和XHTML解析..... 146
12.1.2 Beautiful Soup ................ 149
12.2 使用CGI创建动态网页.............153
12.2.1 部署CGI... 154
12.2.2 CGI安全风险................ 155
12.2.3 简单的CGI脚本............ 155
12.2.4 使用cgitb调试................ 155
12.2.5 使用cgi模块................... 156
12.2.6 简单的表单................... 157
12.3 mod_python............ 158
12.3.1 安装mod_python............158
12.3.2 CGI处理程序.................160
12.3.3 PSP ............161
12.3.4 发布...........162
12.4 网络应用程序框架. 163
12.5 Web服务:正确分析............... 165
12.5.1 RSS和相关内容.............166
12.5.2 使用XML-RPC进行远程过程调用...167
12.5.3 SOAP........ 168
12.6 项目示例. 170
12.6.1 Django框架.................... 170
12.6.2 需求分析.. 170
12.6.3 系统设计.. 171
12.6.4 系统实现.. 173
小结........177
习题........178
参考文献 179