python编程入门经典-Python编程入门经典PDF文档免费下载

作为一门面向对象的开源编程语言,python易于理解和扩展,并且使用起来非常方便。《python编程入门经典》涵盖了python的方方面面,通过学习本书,读者可以立即使用python编写程序。作者james payne从python语言最基本的概念入手,重点介绍了python 2.6和3.1这两个版本的实际应用。通过对一些现有的python程序进行深入分析,读者能够快速上手。《python编程入门经典》涵盖的主题从字符串、列表和字典一直到类、对象和模块。掌握这些内容后,读者将学会如何迅速而自信地创建健壮、可靠而又可重用的python应用程序。

主要内容

◆介绍用于存储和操作数据的变量的概念

◆讨论用于读写数据的文件和输入/输出

◆总结常被忽视的python功能

◆深入研究如何为模块和程序编写测试

◆介绍如何使用python编写gui

◆着重介绍xml、html、xsl和相关技术

◆解释如何扩展python

◆分享数值编程技术

◆介绍jython的内部机理,jython是一个用java编写的python版本

目录

第Ⅰ部分 初步了解Python

第1章 编程基础和字符串 3

1.1 编程与使用计算机的区别 3

1.1.1 编程的一致性 3

1.1.2 编程的可控性 4

1.1.3 程序要应对变化 4

1.1.4 小结 4

1.2 准备工作 4

1.2.1 在非Windows系统上安装

Python 3.1 5

1.2.2 使用Python Shell 5

1.3 开始使用Python——字符串 6

1.3.1 字符串概述 6

1.3.2 为什么需要引号 6

1.3.3 为什么有3种类型的引号 7

1.3.4 使用print()函数 7

1.3.5 理解不同的引号 8

1.4 串联两个字符串 10

1.5 用不同的方法串联字符串 11

1.6 本章小结 12

1.7 习题 13

第2章 数值与运算符 15

2.1 不同类型的数值 15

2.2 程序文件 17

2.2.1 使用不同的类型 18

2.2.2 基本算术 20

2.2.3 一些惊喜 22

2.3 使用数值 23

2.3.1 求值顺序 23

2.3.2 数值格式 24

2.3.3 可能会发生的错误 25

2.3.4 几个不寻常的例子 26

2.4 本章小结 26

2.5 习题 27

第3章 变量 29

3.1 引用数据——使用数据的

名称 29

3.1.1 使用名称修改数据 30

3.1.2 复制数据 31

3.1.3 禁用的名称以及一些规则 31

3.2 使用更多的内置类型 31

3.2.1 元组——不可更改的数据

序列 32

3.2.2 列表——可以更改的数据

序列 35

3.2.3 字典——以名称索引的分组

数据 36

3.2.4 像列表一样处理字符串 38

3.2.5 特殊类型 39

3.3 序列的其他共有属性 40

3.3.1 引用最后一个元素 40

3.3.2 序列的范围 41

3.3.3 通过附加序列增长列表 41

3.3.4 使用列表临时存储数据 42

3.3.5 处理集合 43

3.4 本章小结 44

3.5 习题 44

第Ⅱ部分 Python语言和标准库

第4章 做出决策 49

4.1 比较两个值是否相等 49

4.2 比较两个值是否不相等 51

4.3 比较两个值的大小 51

4.4 对真值和假值取反 53

4.5 观察多个比较运算的结果 54

4.6 循环 57

4.6.1 重复执行操作 57

4.6.2 终止循环 59

4.7 处理错误 62

4.8 本章小结 64

4.9 习题 65

第5章 函数 67

5.1 将程序放在单独的文件中 67

5.2 函数:在一个名称下聚集

代码 69

5.2.1 选择名称 70

5.2.2 在函数中描述函数 70

5.2.3 不同的位置相同的名称 72

5.2.4 添加注释 73

5.2.5 要求函数使用提供的值 73

5.2.6 检查参数 75

5.2.7 为参数设置默认值 77

5.2.8 在函数中调用其他函数 78

5.2.9 函数嵌套函数 80

5.2.10 用自己的词语标记错误 81

5.3 函数的层次 81

5.4 本章小结 82

5.5 习题 83

第6章 类与对象 85

6.1 考虑编程 85

6.1.1 对象的含义 85

6.1.2 已经了解的对象 85

6.1.3 展望:如何使用对象 87

6.2 定义类 87

6.2.1 如何创建对象 87

6.2.2 对象和它们的作用域 95

6.3 本章小结 98

6.4 习题 99

第7章 组织程序 101

7.1 模块 102

7.1.1 导入可用模块 102

7.1.2 通过已有模块创建新模块 102

7.1.3 从命令行开始使用模块 104

7.1.4 改变导入方式 106

7.2 包 106

7.3 模块和包 108

7.3.1 将所有内容引入当前

作用域 108

7.3.2 重新导入模块和包 109

7.4 测试模块和包的基础知识 111

7.5 本章小结 112

7.6 习题 112

第8章 文件和目录 115

8.1 文件对象 115

8.1.1 编写文本文件 116

8.1.2 向文件中追加文本 116

8.1.3 读文本文件 117

8.1.4 文件异常 119

8.2 路径和目录 119

8.3 os中的异常 119

8.3.1 路径 120

8.3.2 目录内容 122

8.3.3 获取文件信息 123

8.3.4 重命名、移动、复制和删除

文件 125

8.3.5 示例:轮换文件 126

8.3.6 创建和删除目录 127

8.3.7 通配 128

8.4 本章小结 129

8.5 习题 129

第9章 Python语言的其他特性 131

9.1 lambda和filter:简单匿名

函数 131

9.2 Map:短路循环 132

9.3 在列表中做出决策——

列表解析 133

9.4 为循环生成迭代器 133

9.5 使用字典的特殊字符串

替换 135

9.6 重要模块 137

9.6.1 getopt——从命令行中得到

选项 137

9.6.2 使用一个以上的进程 139

9.6.3 线程——在相同的进程中

完成多个工作 141

9.7 本章小结 143

9.8 习题 144

第10章 创建模块 145

10.1 研究模块 145

10.1.1 导入模块 147

10.1.2 查找模块 147

10.1.3 理解模块 148

10.2 创建模块和包 149

10.3 使用类 150

10.3.1 定义面向对象编程 151

10.3.2 创建类 151

10.3.3 扩展已有的类 152

10.4 完成模块 153

10.4.1 定义模块特定的错误 154

10.4.2 选择导出哪些内容 154

10.4.3 为模块建立文档 155

10.4.4 测试模块 164

10.4.5 将模块作为程序运行 165

10.5 创建一个完整的模块 166

10.6 安装模块 171

10.7 本章小结 174

10.8 习题 175

第11章 文本处理 177

11.1 文本处理的用途 177

11.1.1 搜索文件 178

11.1.2 日志剪辑 179

11.1.3 邮件筛选 179

11.2 使用os模块导航文件

系统 179

11.3 使用正则表达式和re

模块 185

11.4 本章小结 189

11.5 习题 189

第Ⅲ部分 开始使用Python

第12章 测试 193

12.1 断言 193

12.2 测试用例和测试套件 195

12.3 测试装置 198

12.4 用极限编程整合 201

12.4.1 用Python实现搜索实用

程序 202

12.4.2 一个更加强大的Python

搜索 207

12.5 软件生命周期中的正规

测试 210

12.6 本章小结 210

第13章 使用Python编写GUI 213

13.1 Python的GUI编程工具箱 213

13.2 Tkinter简介 215

13.3 用Tkinter创建GUI

小组件 215

13.3.1 改变小组件的尺寸 215

13.3.2 配置小组件选项 216

13.3.3 使用小组件 217

13.3.4 创建布局 217

13.3.5 填充顺序 218

13.3.6 控制小组件的外观 219

13.3.7 单选按钮和复选框 220

13.3.8 对话框 221

13.3.9 其他小组件类型 222

13.4 本章小结 222

13.5 习题 223

第14章 访问数据库 225

14.1 使用dbm持久字典 226

14.1.1 选择dbm模块 226

14.1.2 创建持久字典 227

14.1.3 访问持久字典 228

14.1.4 dbm与关系数据库的适用

场合 230

14.2 使用关系数据库 231

14.2.1 编写SQL语句 232

14.2.2 定义表 234

14.2.3 建立数据库 235

14.3 使用Python的数据库API 237

14.3.1 下载各个模块 237

14.3.2 创建连接 238

14.3.3 使用游标 238

14.3.4 使用事务并提交结果 245

14.3.5 检查模块的功能和元

数据 246

14.3.6 处理错误 246

14.4 本章小结 247

14.5 习题 248

第15章 使用Python处理XML 249

15.1 XML的含义 249

15.1.1 层次标记语言 249

15.1.2 一组标准 251

15.2 模式/DTD 251

15.2.1 文档模型的用途 251

15.2.2 是否需要文档模型 252

15.3 文档类型定义 252

15.3.1 DTD示例 252

15.3.2 DTD不完全是XML 253

15.3.3 DTD的局限性 253

15.4 模式 254

15.4.1 示例模式 254

15.4.2 模式是纯粹的XML 254

15.4.3 模式具有层次 255

15.4.4 模式的其他优点 255

15.5 XPath 255

15.6 HTML是XML的子集 256

15.6.1 HTML DTD 256

15.6.2 HTMLParser 256

15.7 Python中可用的XML库 257

15.8 SAX的含义 257

15.8.1 基于流 258

15.8.2 事件驱动 258

15.8.3 DOM的含义 258

15.8.4 内存中访问 258

15.9 使用SAX或者DOM的

理由 259

15.9.1 能力权衡 259

15.9.2 内存考虑 259

15.9.3 速度考虑 259

15.10 Python中可用的SAX

和DOM解析器 259

15.10.1 xml.sax 259

15.10.2 xml.dom.minidom 260

15.11 XSLT简介 262

15.11.1 XSLT是XML 262

15.11.2 转换和格式语言 263

15.11.3 函数式、模板驱动 263

15.12 lxml简介 263

15.13 元素类 263

15.14 使用lxml解析 266

15.15 本章小结 267

15.16 习题 267

第16章 网络编程 269

16.1 理解协议 271

16.1.1 比较协议和程序语言 271

16.1.2 Internet协议栈 272

16.1.3 Internet协议简介 273

16.2 发送电子邮件 274

16.2.1 E-mail文件格式 275

16.2.2 MIME消息 276

16.2.3 使用SMTP和smtplib发送

邮件 284

16.3 检索Internet邮件 286

16.3.1 使用mailbox解析本地

邮筒 286

16.3.2 使用poplib从POP3

服务器获取邮件 288

16.3.3 使用imaplib从IMAP

服务器获取邮件 290

16.3.4 安全的POP3和IMAP 294

16.3.5 Webmail应用程序不是

E-mail应用程序 294

16.4 套接字编程 294

16.4.1 套接字简介 295

16.4.2 绑定到外部主机名 297

16.4.3 镜像服务器 298

16.4.4 镜像客户端 299

16.4.5 套接字服务器 300

16.4.6 多线程服务器 302

16.4.7 Python聊天服务器 303

16.4.8 设计Python聊天

服务器 303

16.4.9 Python聊天服务器协议 304

16.4.10 Python聊天客户端 309

16.4.11 基于select的单线程

多任务 312

16.5 其他主题 313

16.5.1 协议设计的多种考虑 313

16.5.2 对等架构 314

16.6 本章小结 314

16.7 习题 315

第17章 用C扩展编程 317

17.1 扩展模块概述 318

17.2 构建并安装扩展模块 320

17.3 从Python向C传递参数 322

17.4 从C向Python返回值 325

17.5 LAME项目 326

17.6 LAME扩展模块 330

17.7 在C代码中使用Python

对象 342

17.8 本章小结 345

17.9 习题 346

第18章 数值编程 347

18.1 Python语言中的数值 347

18.1.1 整数 348

18.1.2 长整数 348

18.1.3 浮点数 349

18.1.4 格式化数值 350

18.1.5 作为数值的字符 352

18.2 数学 353

18.2.1 算术运算 354

18.2.2 内置数学函数 355

18.3 复数 357

18.4 数组 359

18.5 本章小结 363

18.6 习题 363

第19章 Django简介 365

19.1 框架的定义以及使用框架的

理由 365

19.2 Web框架的其他功能 366

19.3 Django发展史 367

19.4 理解Django的架构 368

19.4.1 项目初始设置 368

19.4.2 创建视图 371

19.5 使用模板 373

19.6 使用模板和视图 375

19.6.1 模型 378

19.6.2 创建模型的第一步——

配置数据库设置 379

19.7 创建模型:创建一个应用

程序 380

19.8 本章小结 382

19.9 习题 383

第20章 Web应用程序与Web

服务 385

20.1 REST:Web架构 386

20.1.1 REST的特性 386

20.1.2 REST操作 388

20.2 HTTP:REST的实际应用 388

20.2.1 可见的Web服务器 390

20.2.2 HTTP请求 393

20.2.3 HTTP响应 393

20.3 CGI:将脚本变为Web应用

程序 395

20.3.1 Web服务器与CGI脚本的

协议 397

20.3.2 CGI的特殊环境变量 397

20.3.3 通过HTML表单接收用户

输入 399

20.4 HTML表单的有限词汇 400

20.5 访问表单值的安全性 401

20.6 构建wiki 405

20.6.1 BittyWiki核心库 406

20.6.2 BittyWiki的Web接口 409

20.7 Web服务 418

20.8 REST Web 服务 419

20.8.1 REST快速入门:

在Amazon.com上寻找

廉价商品 419

20.8.2 WishListBargainFinder

简介 422

20.8.3 向BittyWiki提供

REST API 425

20.8.4 使用REST Web服务

实现搜索和替换功能 428

20.9 XML-RPC 432

20.9.1 XML-RPC请求 434

20.9.2 XML-RPC中的数据

表示 434

20.9.3 XML-RPC响应 435

20.9.4 错误处理机制 436

20.9.5 通过XML-RPC展示

BittyWiki API 437

20.9.6 基于XML-RPC Web服务

的wiki搜索和替换 440

20.10 SOAP 442

20.10.1 SOAP快速入门 442

20.10.2 SOAP请求 443

20.10.3 SOAP响应 444

20.10.4 错误处理机制 444

20.10.5 展示一个BittyWiki的

SOAP接口 445

20.10.6 基于SOAP Web服务的

wiki搜索和替换 447

20.11 为Web服务API创建

文档 449

20.11.1 人类可读的API

文档 449

20.11.2 XML-RPC自省API 450

20.11.3 WSDL 451

20.12 选择Web服务标准 455

20.13 Web服务礼仪 456

20.13.1 Web服务的使用者

礼仪 456

20.13.2 Web服务的创建者

礼仪 456

20.13.3 将Web应用程序作为

Web服务使用 456

20.14 本章小结 456

20.15 习题 457

第21章 集成Java与Python 459

21.1 在Java应用程序中编写

脚本 460

21.2 比较各种Python实现 461

21.3 安装Jython 461

21.4 运行Jython 461

21.4.1 交互地运行Jython 461

21.4.2 运行Jython脚本 463

21.4.3 控制jython脚本 463

21.4.4 创建可执行命令 464

21.5 独立运行Jython 465

21.6 打包基于Jython的应用

程序 466

21.7 集成Java和Jython 466

21.7.1 在Jython中使用

Java类 466

21.7.2 从Jython访问数据库 471

21.7.3 通过Jython编写

Java EE servlet 477

21.7.4 选择Jython开发工具 483

21.8 使用Jython进行测试 483

21.9 嵌入Jython解释器 484

21.10 处理C-Python和Jython

之间的差异 487

21.11 本章小结 488

21.12 习题 488

第Ⅳ部分 附 录

附录A 习题答案 491

附录B 在线资源 519

附录C Python 3.1的新特性 521

附录D 术语表 527

你可能感兴趣的:(python编程入门经典-Python编程入门经典PDF文档免费下载)