Python编程入门经典
《 Python编程入门经典》是清华大学出版社出版的图书。
基本信息
- 作者
美James W. Payne
- 译者
张春晖
- ISBN
9787302257097
- 页数
533
- 定价
68.00元
- 出版社
清华大学出版社
- 出版时间
2011-7
- 装帧
平装
内容介绍
作为一门面向对象的开源编程语言,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版本
作者介绍
James Payne居住在佛罗里达州马盖特市,他是Developer Shed公司的主编,从7岁起就开始写作和编程。James精通多门语言,已经撰写了400余篇文章,囊括了几乎每一种主流编程语言。James的工作是使用Python为金融业开发专有软件,在业余时间他喜欢涉猎Django方面的知识。
作品目录
第Ⅰ部分 初步了解Python第1章 编程基础和字符串 31.1 编程与使用计算机的区别 31.1.1 编程的一致性 31.1.2 编程的可控性 41.1.3 程序要应对变化 41.1.4 小结 41.2 准备工作 41.2.1 在非Windows系统上安装Python 3.1 51.2.2 使用Python Shell 51.3 开始使用Python——字符串 61.3.1 字符串概述 61.3.2 为什么需要引号 61.3.3 为什么有3种类型的引号 71.3.4 使用print()函数 71.3.5 理解不同的引号 81.4 串联两个字符串 101.5 用不同的方法串联字符串 111.6 本章小结 121.7 习题 13第2章 数值与运算符 152.1 不同类型的数值 152.2 程序文件 172.2.1 使用不同的类型 182.2.2 基本算术 202.2.3 一些惊喜 222.3 使用数值 232.3.1 求值顺序 232.3.2 数值格式 242.3.3 可能会发生的错误 252.3.4 几个不寻常的例子 262.4 本章小结 262.5 习题 27第3章 变量 293.1 引用数据——使用数据的名称 293.1.1 使用名称修改数据 303.1.2 复制数据 313.1.3 禁用的名称以及一些规则 313.2 使用更多的内置类型 313.2.1 元组——不可更改的数据序列 323.2.2 列表——可以更改的数据序列 353.2.3 字典——以名称索引的分组数据 363.2.4 像列表一样处理字符串 383.2.5 特殊类型 393.3 序列的其他共有属性 403.3.1 引用最后一个元素 403.3.2 序列的范围 413.3.3 通过附加序列增长列表 413.3.4 使用列表临时存储数据 423.3.5 处理集合 433.4 本章小结 443.5 习题 44第Ⅱ部分 Python语言和标准库第4章 做出决策 494.1 比较两个值是否相等 494.2 比较两个值是否不相等 514.3 比较两个值的大小 514.4 对真值和假值取反 534.5 观察多个比较运算的结果 544.6 循环 574.6.1 重复执行操作 574.6.2 终止循环 594.7 处理错误 624.8 本章小结 644.9 习题 65第5章 函数 675.1 将程序放在单独的文件中 675.2 函数:在一个名称下聚集代码 695.2.1 选择名称 705.2.2 在函数中描述函数 705.2.3 不同的位置相同的名称 725.2.4 添加注释 735.2.5 要求函数使用提供的值 735.2.6 检查参数 755.2.7 为参数设置默认值 775.2.8 在函数中调用其他函数 785.2.9 函数嵌套函数 805.2.10 用自己的词语标记错误 815.3 函数的层次 815.4 本章小结 825.5 习题 83第6章 类与对象 856.1 考虑编程 856.1.1 对象的含义 856.1.2 已经了解的对象 856.1.3 展望:如何使用对象 876.2 定义类 876.2.1 如何创建对象 876.2.2 对象和它们的作用域 956.3 本章小结 986.4 习题 99第7章 组织程序 1017.1 模块 1027.1.1 导入可用模块 1027.1.2 通过已有模块创建新模块 1027.1.3 从命令行开始使用模块 1047.1.4 改变导入方式 1067.2 包 1067.3 模块和包 1087.3.1 将所有内容引入当前作用域 1087.3.2 重新导入模块和包 1097.4 测试模块和包的基础知识 1117.5 本章小结 1127.6 习题 112第8章 文件和目录 1158.1 文件对象 1158.1.1 编写文本文件 1168.1.2 向文件中追加文本 1168.1.3 读文本文件 1178.1.4 文件异常 1198.2 路径和目录 1198.3 os中的异常 1198.3.1 路径 1208.3.2 目录内容 1228.3.3 获取文件信息 1238.3.4 重命名、移动、复制和删除文件 1258.3.5 示例:轮换文件 1268.3.6 创建和删除目录 1278.3.7 通配 1288.4 本章小结 1298.5 习题 129第9章 Python语言的其他特性 1319.1 lambda和filter:简单匿名函数 1319.2 Map:短路循环 1329.3 在列表中做出决策——列表解析 1339.4 为循环生成迭代器 1339.5 使用字典的特殊字符串替换 1359.6 重要模块 1379.6.1 getopt——从命令行中得到选项 1379.6.2 使用一个以上的进程 1399.6.3 线程——在相同的进程中完成多个工作 1419.7 本章小结 1439.8 习题 144第10章 创建模块 14510.1 研究模块 14510.1.1 导入模块 14710.1.2 查找模块 14710.1.3 理解模块 14810.2 创建模块和包 14910.3 使用类 15010.3.1 定义面向对象编程 15110.3.2 创建类 15110.3.3 扩展已有的类 15210.4 完成模块 15310.4.1 定义模块特定的错误 15410.4.2 选择导出哪些内容 15410.4.3 为模块建立文档 15510.4.4 测试模块 16410.4.5 将模块作为程序运行 16510.5 创建一个完整的模块 16610.6 安装模块 17110.7 本章小结 17410.8 习题 175第11章 文本处理 17711.1 文本处理的用途 17711.1.1 搜索文件 17811.1.2 日志剪辑 17911.1.3 邮件筛选 17911.2 使用os模块导航文件系统 17911.3 使用正则表达式和re模块 18511.4 本章小结 18911.5 习题 189第Ⅲ部分 开始使用Python第12章 测试 19312.1 断言 19312.2 测试用例和测试套件 19512.3 测试装置 19812.4 用极限编程整合 20112.4.1 用Python实现搜索实用程序 20212.4.2 一个更加强大的Python搜索 20712.5 软件生命周期中的正规测试 21012.6 本章小结 210第13章 使用Python编写GUI 21313.1 Python的GUI编程工具箱 21313.2 Tkinter简介 21513.3 用Tkinter创建GUI小组件 21513.3.1 改变小组件的尺寸 21513.3.2 配置小组件选项 21613.3.3 使用小组件 21713.3.4 创建布局 21713.3.5 填充顺序 21813.3.6 控制小组件的外观 21913.3.7 单选按钮和复选框 22013.3.8 对话框 22113.3.9 其他小组件类型 22213.4 本章小结 22213.5 习题 223第14章 访问数据库 22514.1 使用dbm持久字典 22614.1.1 选择dbm模块 22614.1.2 创建持久字典 22714.1.3 访问持久字典 22814.1.4 dbm与关系数据库的适用场合 23014.2 使用关系数据库 23114.2.1 编写SQL语句 23214.2.2 定义表 23414.2.3 建立数据库 23514.3 使用Python的数据库API 23714.3.1 下载各个模块 23714.3.2 创建连接 23814.3.3 使用游标 23814.3.4 使用事务并提交结果 24514.3.5 检查模块的功能和元数据 24614.3.6 处理错误 24614.4 本章小结 24714.5 习题 248第15章 使用Python处理XML 24915.1 XML的含义 24915.1.1 层次标记语言 24915.1.2 一组标准 25115.2 模式/DTD 25115.2.1 文档模型的用途 25115.2.2 是否需要文档模型 25215.3 文档类型定义 25215.3.1 DTD示例 25215.3.2 DTD不完全是XML 25315.3.3 DTD的局限性 25315.4 模式 25415.4.1 示例模式 25415.4.2 模式是纯粹的XML 25415.4.3 模式具有层次 25515.4.4 模式的其他优点 25515.5 XPath 25515.6 HTML是XML的子集 25615.6.1 HTML DTD 25615.6.2 HTMLParser 25615.7 Python中可用的XML库 25715.8 SAX的含义 25715.8.1 基于流 25815.8.2 事件驱动 25815.8.3 DOM的含义 25815.8.4 内存中访问 25815.9 使用SAX或者DOM的理由 25915.9.1 能力权衡 25915.9.2 内存考虑 25915.9.3 速度考虑 25915.10 Python中可用的SAX和DOM解析器 25915.10.1 xml.sax 25915.10.2 xml.dom.minidom 26015.11 XSLT简介 26215.11.1 XSLT是XML 26215.11.2 转换和格式语言 26315.11.3 函数式、模板驱动 26315.12 lxml简介 26315.13 元素类 26315.14 使用lxml解析 26615.15 本章小结 26715.16 习题 267第16章 网络编程 26916.1 理解协议 27116.1.1 比较协议和程序语言 27116.1.2 Internet协议栈 27216.1.3 Internet协议简介 27316.2 发送电子邮件 27416.2.1 E-mail文件格式 27516.2.2 MIME消息 27616.2.3 使用SMTP和smtplib发送邮件 28416.3 检索Internet邮件 28616.3.1 使用mailbox解析本地邮筒 28616.3.2 使用poplib从POP3服务器获取邮件 28816.3.3 使用imaplib从IMAP服务器获取邮件 29016.3.4 安全的POP3和IMAP 29416.3.5 Webmail应用程序不是E-mail应用程序 29416.4 套接字编程 29416.4.1 套接字简介 29516.4.2 绑定到外部主机名 29716.4.3 镜像服务器 29816.4.4 镜像客户端 29916.4.5 套接字服务器 30016.4.6 多线程服务器 30216.4.7 Python聊天服务器 30316.4.8 设计Python聊天服务器 30316.4.9 Python聊天服务器协议 30416.4.10 Python聊天客户端 30916.4.11 基于select的单线程多任务 31216.5 其他主题 31316.5.1 协议设计的多种考虑 31316.5.2 对等架构 31416.6 本章小结 31416.7 习题 315第17章 用C扩展编程 31717.1 扩展模块概述 31817.2 构建并安装扩展模块 32017.3 从Python向C传递参数 32217.4 从C向Python返回值 32517.5 LAME项目 32617.6 LAME扩展模块 33017.7 在C代码中使用Python对象 34217.8 本章小结 34517.9 习题 346第18章 数值编程 34718.1 Python语言中的数值 34718.1.1 整数 34818.1.2 长整数 34818.1.3 浮点数 34918.1.4 格式化数值 35018.1.5 作为数值的字符 35218.2 数学 35318.2.1 算术运算 35418.2.2 内置数学函数 35518.3 复数 35718.4 数组 35918.5 本章小结 36318.6 习题 363第19章 Django简介 36519.1 框架的定义以及使用框架的理由 36519.2 Web框架的其他功能 36619.3 Django发展史 36719.4 理解Django的架构 36819.4.1 项目初始设置 36819.4.2 创建视图 37119.5 使用模板 37319.6 使用模板和视图 37519.6.1 模型 37819.6.2 创建模型的第一步——配置数据库设置 37919.7 创建模型:创建一个应用程序 38019.8 本章小结 38219.9 习题 383第20章 Web应用程序与Web服务 38520.1 REST:Web架构 38620.1.1 REST的特性 38620.1.2 REST操作 38820.2 HTTP:REST的实际应用 38820.2.1 可见的Web服务器 39020.2.2 HTTP请求 39320.2.3 HTTP响应 39320.3 CGI:将脚本变为Web应用程序 39520.3.1 Web服务器与CGI脚本的协议 39720.3.2 CGI的特殊环境变量 39720.3.3 通过HTML表单接收用户输入 39920.4 HTML表单的有限词汇 40020.5 访问表单值的安全性 40120.6 构建wiki 40520.6.1 BittyWiki核心库 40620.6.2 BittyWiki的Web接口 40920.7 Web服务 41820.8 REST Web 服务 41920.8.1 REST快速入门:在Amazon.com上寻找廉价商品 41920.8.2 WishListBargainFinder简介 42220.8.3 向BittyWiki提供REST API 42520.8.4 使用REST Web服务实现搜索和替换功能 42820.9 XML-RPC 43220.9.1 XML-RPC请求 43420.9.2 XML-RPC中的数据表示 43420.9.3 XML-RPC响应 43520.9.4 错误处理机制 43620.9.5 通过XML-RPC展示BittyWiki API 43720.9.6 基于XML-RPC Web服务的wiki搜索和替换 44020.10 SOAP 44220.10.1 SOAP快速入门 44220.10.2 SOAP请求 44320.10.3 SOAP响应 44420.10.4 错误处理机制 44420.10.5 展示一个BittyWiki的SOAP接口 44520.10.6 基于SOAP Web服务的wiki搜索和替换 44720.11 为Web服务API创建文档 44920.11.1 人类可读的API文档 44920.11.2 XML-RPC自省API 45020.11.3 WSDL 45120.12 选择Web服务标准 45520.13 Web服务礼仪 45620.13.1 Web服务的使用者礼仪 45620.13.2 Web服务的创建者礼仪 45620.13.3 将Web应用程序作为Web服务使用 45620.14 本章小结 45620.15 习题 457第21章 集成Java与Python 45921.1 在Java应用程序中编写脚本 46021.2 比较各种Python实现 46121.3 安装Jython 46121.4 运行Jython 46121.4.1 交互地运行Jython 46121.4.2 运行Jython脚本 46321.4.3 控制jython脚本 46321.4.4 创建可执行命令 46421.5 独立运行Jython 46521.6 打包基于Jython的应用程序 46621.7 集成Java和Jython 46621.7.1 在Jython中使用Java类 46621.7.2 从Jython访问数据库 47121.7.3 通过Jython编写Java EE servlet 47721.7.4 选择Jython开发工具 48321.8 使用Jython进行测试 48321.9 嵌入Jython解释器 48421.10 处理C-Python和Jython之间的差异 48721.11 本章小结 48821.12 习题 488第Ⅳ部分 附 录附录A 习题答案 491附录B 在线资源 519附录C Python 3.1的新特性 521附录D 术语表 527
1
参考资料
- 1Python编程入门经典豆瓣读书(引用日期 2012-10-23)