《Python编程入门经典》PDF下载

  • 购买积分:16 如何计算积分?
  • 作  者:(美)佩恩著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2011
  • ISBN:9787302257097
  • 页数:533 页
图书介绍:本书介绍了Python语言的最新版本的基本概念及应用。

第Ⅰ部分 初步了解Python 3

第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语言和标准库 49

第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 193

第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.3Django发展史 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

第Ⅳ部分 附录 491

附录A习题答案 491

附录B在线资源 519

附录C Python 3.1的新特性 521

附录D术语表 527