资源大小: 68.72MB
发布时间: 2013-01-31
文件格式: pdf
下载次数: 1
分享到:

下载地址:

下载地址1
(本站为飞网专业下载站,域名:down.cfei.net)

资源简介:

中文名: Python Cookbook(第2版)中文版原名: Python Cookbook, 2nd Edition作者: (美)马特利(美)阿舍尔译者: 高铁军资源格式: PDF版本: 扫描版出版社: 人民邮电出版社书号: 9787115222664发行时间: 2010年05月01日地区: 大陆语言: 简体中文简介: 内容简介  本书介绍了Python应用在各个领域中的一些使用技巧和方法,从最基本的字符、文件序列、字典和排序,到进阶的面向对象编程、数据库和数据持久化、XML处理和Web编程,再到比较高级和抽象的描述符、装饰器、元类、迭代器和生成器,均有涉及。书中还介绍了一些第三方包和库的使用,包括Twisted、GIL、PyWin32等。本书覆盖了Python应用中的很多常见问题,并提出了通用的解决方案。书中的代码和方法具有很强的实用性,可以方便地应用到实际的项目中,并产生立竿见影的效果。尤为难得的是,本书的各位作者都具有丰富的业界实践经验,因此,本书不仅给出了对各种问题的解决方案,同时还体现了很多专家的思维方式和良好的编程习惯,与具体的细节性知识相比,这部分内容无疑是本书的精华。  本书适合具有一定Python基础的读者阅读参考。 目录: 第1章 文本引言1.1 每次处理一个字符1.2 字符和字符值之间的转换1.3 测试一个对象是否是类字符串1.4 字符串对齐1.5 去除字符串两端的空格1.6 合并字符串1.7 将字符串逐字符或逐词反转1.8 检查字符串中是否包含某字符集合中的字符1.9 简化字符串的translate方法的使用1.10 过滤字符串中不属于指定集合的字符1.11 检查一个字符串是文本还是二进制1.12 控制大小写1.13 访问子字符串1.14 改变多行文本字符串的缩进1.15 扩展和压缩制表符1.16 替换字符串中的子串1.17 替换字符串中的子串——Python 2.41.18 一次完成多个替换1.19 检查字符串中的结束标记1.20 使用Unicode来处理国际化文本1.21 在Unicode和普通字符串之间转换1.22 在标准输出中打印Unicode字符1.23 对Unicode数据编码并用于XML和HTML1.24 让某些字符串大小写不敏感1.25 将HTML文档转化为文本显示到UNIX终端上第2章 文件引言2.1 读取文件2.2 写入文件2.3 搜索和替换文件中的文本2.4 从文件中读取指定的行2.5 计算文件的行数2.6 处理文件中的每个词2.7 随机输入/输出2.8 更新随机存取文件2.9 从zip文件中读取数据2.10 处理字符串中的zip文件2.11 将文件树归档到一个压缩的tar文件2.12 将二进制数据发送到Windows的标准输出2.13 使用C++的类iostream语法2.14 回退输入文件到起点2.15 用类文件对象适配真实文件对象2.16 遍历目录树2.17 在目录树中改变文件扩展名2.18 从指定的搜索路径寻找文件2.19 根据指定的搜索路径和模式寻找文件2.20 在Python的搜索路径中寻找文件2.21 动态地改变Python搜索路径2.22 计算目录间的相对路径2.23 跨平台地读取无缓存的字符2.24 在Mac OS X平台上统计PDF文档的页数2.25 在Windows平台上修改文件属性2.26 从OpenOffice.org文档中提取文本2.27 从微软Word文档中抽取文本2.28 使用跨平台的文件锁2.29 带版本号的文件名2.30 计算CRC-64循环冗余码校验第3章 时间和财务计算引言3.1 计算昨天和明天的日期3.2 寻找上一个星期五3.3 计算日期之间的时段3.4 计算歌曲的总播放时间3.5 计算日期之间的工作日3.6 自动查询节日3.7 日期的模糊查询3.8 检查夏令时是否正在实行3.9 时区转换3.10 反复执行某个命令3.11 定时执行命令3.12 十进制数学计算3.13 将十进制数用于货币处理3.14 用Python实现的简单加法器3.15 检查信用卡校验和3.16 查看汇率第4章 Python技巧引言4.1 对象拷贝4.2 通过列表推导构建列表4.3 若列表中某元素存在则返回之4.4 循环访问序列中的元素和索引4.5 在无须共享引用的条件下创建列表的列表4.6 展开一个嵌套的序列4.7 在行列表中完成对列的删除和排序4.8 二维阵列变换4.9 从字典中取值4.10 给字典增加一个条目4.11 在无须过多援引的情况下创建字典4.12 将列表元素交替地作为键和值来创建字典4.13 获取字典的一个子集4.14 反转字典4.15 字典的一键多值4.16 用字典分派方法和函数4.17 字典的并集与交集4.18 搜集命名的子项4.19 用一条语句完成赋值和测试4.20 在Python中使用printf4.21 以指定的概率获取元素4.22 在表达式中处理异常4.23 确保名字已经在给定模块中被定义第5章 搜索和排序引言5.1 对字典排序5.2 不区分大小写对字符串列表排序5.3 根据对象的属性将对象列表排序5.4 根据对应值将键或索引排序5.5 根据内嵌的数字将字符串排序5.6 以随机顺序处理列表的元素5.7 在增加元素时保持序列的顺序5.8 获取序列中最小的几个元素5.9 在排序完毕的序列中寻找元素5.10 选取序列中最小的第n个元素5.11 三行代码的快速排序5.12 检查序列的成员5.13 寻找子序列5.14 给字典类型增加排名功能5.15 根据姓的首字母将人名排序和分组第6章 面向对象编程引言6.1 温标的转换6.2 定义常量6.3 限制属性的设置6.4 链式字典查询6.5 继承的替代方案——自动托管6.6 在代理中托管特殊方法6.7 有命名子项的元组6.8 避免属性读写的冗余代码6.9 快速复制对象6.10 保留对被绑定方法的引用且支持垃圾回收6.11 缓存环的实现6.12 检查一个实例的状态变化6.13 检查一个对象是否包含某种必要的属性6.14 实现状态设计模式6.15 实现单例模式6.16 用Borg惯用法来避免“单例”模式6.17 Null对象设计模式的实现6.18 用__init__参数自动初始化实例变量6.19 调用超类的__init__方法6.20 精确和安全地使用协作的超类调用第7章 持久化和数据库引言7.1 使用marshal模块序列化数据7.2 使用pickle和cPickle模块序列化数据7.3 在Pickling的时候压缩7.4 对类和实例使用cPickle模块7.5 Pickling被绑定方法7.6 Pickling代码对象7.7 通过shelve修改对象7.8 使用Berkeley DB数据库7.9 访问MySQL数据库7.10 在MySQL数据库中储存BLOB7.11 在PostgreSQL中储存BLOB7.12 在SQLite中储存BLOB7.13 生成一个字典将字段名映射为列号7.14 利用dtuple实现对查询结果的灵活访问7.15 打印数据库游标的内容7.16 适用于各种DB API模块的单参数传递风格7.17 通过ADO使用Microsoft Jet7.18 从Jython Servlet访问JDBC数据库7.19 通过Jython和ODBC获得Excel数据第8章 调试和测试引言8.1 阻止某些条件和循环的执行8.2 在Linux上测量内存使用8.3 调试垃圾回收进程8.4 捕获和记录异常8.5 在调试模式中跟踪表达式和注释8.6 从traceback中获得更多信息8.7 当未捕获异常发生时自动启用调试器8.8 简单的使用单元测试8.9 自动运行单元测试8.10 在Python 2.4中使用doctest和unittest8.11 在单元测试中检查区间第9章 进程、线程和同步引言9.1 同步对象中的所有方法9.2 终止线程9.3 将Queue.Queue用作优先级队列9.4 使用线程池9.5 以多组参数并行执行函数9.6 用简单的消息传递协调线程9.7 储存线程信息9.8 无线程的多任务协作9.9 在Windows中探测另一个脚本实例的运行9.10 使用MsgWaitForMultipleObjects处理Windows消息9.11 用popen驱动外部进程9.12 获取UNIX Shell命令的输出流和错误流9.13 在UNIX中fork一个守护进程第10章 系统管理引言10.1 生成随机密码10.2 生成易记的伪随机密码10.3 以POP服务器的方式验证用户10.4 统计Apache中每个IP的点击率10.5 统计Apache的客户缓存的命中率10.6 在脚本中调用编辑器10.7 备份文件10.8 选择性地复制邮箱文件10.9 通过邮箱创建一个邮件地址的白名单10.10 阻塞重复邮件10.11 检查你的Windows声音系统10.12 在Windows中注册和反注册DLL10.13 检查并修改Windows自动运行任务10.14 在Windows中创建共享10.15 连接一个正在运行的Internet Explorer实例10.16 读取Microsoft Outlook Contacts10.17 在Mac OS X中收集详细的系统信息第11章 用户界面引言11.1 在文本控制台中显示进度条11.2 避免在编写回调函数时使用lambda11.3 在tkSimpleDialog函数中使用默认值和区间11.4 给Tkinter列表框增加拖曳排序能力11.5 在Tkinter部件中输入一个重音字符11.6 在Tkinter中嵌入内联的GIF11.7 转换图片格式11.8 在Tkinter中实现一个秒表11.9 用线程实现GUI和异步I/O的结合11.10 在Tkinter中使用IDLE的 Tree部件 111.11 在Tkinter Listbox中支持单行多值11.12 在Tkinter部件之间复制Geometry方法和选项11.13 在Tkinter中实现一个带标签的记事本11.14 使用wxPython实现带面板的记事本 111.15 在Jython中实现一个ImageJ插件11.16 用Swing和Jython来通过URL查看图片11.17 在Mac OS中获得用户输入11.18 程序化地创建Python Cocoa GUI11.19 用IronPython实现淡入窗口第12章 XML处理引言12.1 检查XML的格式完好性12.2 计算文档中标签的个数12.3 获得XML文档中的文本12.4 自动探测XML的编码12.5 将一个XML文档转化成Python对象树12.6 从XML DOM节点的子树中删除仅有空白符的文本节点12.7 解析Microsoft Excel的XML12.8 验证XML文档12.9 过滤属于指定命名空间的元素和属性12.10 用SAX合并连续的文本事件12.11 使用MSHTML来解析XML或HTML第13章 网络编程引言13.1 通过Socket数据报传输消息13.2 从Web抓取文档13.3 过滤FTP站点列表13.4 通过SNTP协议从服务器获取时间13.5 发送HTML邮件13.6 在MIME消息中绑入文件13.7 拆解一个分段MIME消息13.8 删除邮件消息中的附件13.9 修复Python 2.4的email.FeedParser解析的消息13.10 交互式地检查POP3邮箱13.11 探测不活动的计算机13.12 用HTTP监视网络13.13 网络端口的转发和重定向13.14 通过代理建立SSL隧道13.15 实现动态IP协议13.16 登录到IRC并将消息记录到磁盘13.17 访问LDAP服务第14章 Web编程引言14.1 测试CGI是否在工作14.2 用CGI脚本处理URL14.3 用CGI上传文件14.4 检查web页面的存在14.5 通过HTTP检查内容类型14.6 续传HTTP下载文件14.7 抓取Web页面时处理Cookie14.8 通过带身份验证的代理进行HTTPS导航14.9 用Jython实现Servlet14.10 寻找Internet Explorer的cookie14.11 生成OPML文件 114.12 聚合RSS Feed14.13 通过模板将数据放入Web页面14.14 在Nevow中呈现任意对象第15章 分布式编程引言15.1 实现一个XML-RPC方法调用15.2 服务XML-RPC请求15.3 在Medusa中使用XML-RPC15.4 允许XML-RPC服务被远程终止 115.5 SimpleXMLRPCServer的一些细节 215.6 给一个XML-RPC服务提供一个wxPython GUI15.7 使用Twisted的Perspective Broker15.8 实现一个CORBA服务和客户15.9 使用telnetlib执行远程登录15.10 使用SSH执行远程登录15.11 通过HTTPS验证一个SSL客户端第16章 关于程序的程序引言16.1 验证字符串是否代表着一个合法的数字16.2 导入一个动态生成的模块16.3 导入一个名字在运行时被确定的模块16.4 将参数和函数联系起来16.5 组合函数16.6 使用内建的Tokenizer给Python源码上色16.7 合并和拆解Token16.8 检查字符串是否有平衡的圆括号16.9 在Python中模拟枚举16.10 在创建列表推导时引用它自身16.11 自动化py2exe将脚本编译成Windows可执行文件的过程16.12 在UNIX中将主脚本和模块绑成一个可执行文件第17章 扩展和嵌入引言17.1 实现一个简单的扩展类型17.2 用Pyrex实现一个简单的扩展类型17.3 在Python中使用C++库17.4 调用Windows DLL的函数17.5 在多线程环境中使用SWIG生成的模块17.6 用PySequence_Fast将Python序列转为C数组17.7 用迭代器逐个访问Python序列的元素17.8 从Python可调用的C函数中返回None17.9 用gdb调试动态载入的C扩展17.10 调试内存问题第18章 算法引言18.1 消除序列中的重复18.2 在保留序列顺序的前提下消除其中的重复 118.3 生成回置采样18.4 生成无回置的抽样18.5 缓存函数的返回值18.6 实现一个FIFO容器18.7 使用FIFO策略来缓存对象 118.8 实现一个Bag(Multiset)收集类型18.9 在Python模拟三元操作符18.10 计算素数18.11 将整数格式化为二进制字符串 218.12 以任意数为基将整数格式化为字符串18.13 通过法雷分数将数字转成有理数18.14 带误差传递的数学计算18.15 以最大精度求和 118.16 模拟浮点数 318.17 计算二维点集的凸包和直径第19章 迭代器和生成器引言19.1 编写一个类似range的浮点数递增的函数19.2 从任意可迭代对象创建列表19.3 生成Fibonacci序列19.4 在多重赋值中拆解部分项19.5 自动拆解出需要的数目的项19.6 以步长n将一个可迭代对象切成n片19.7 通过重迭窗口循环序列19.8 并行地循环多个可迭代对象19.9 循环多个可迭代对象的矢量积19.10 逐段读取文本文件19.11 读取带有延续符的行19.12 将一个数据块流处理成行流19.13 用生成器从数据库中抓取大记录集19.14 合并有序序列19.15 生成排列、组合以及选择19.16 生成整数的划分19.17 复制迭代器19.18 迭代器的前瞻19.19 简化队列消费者线程19.20 在另一个线程中运行迭代器19.21 用itertools.groupby来计算汇总报告第20章 描述符、装饰器和元类引言20.1 在函数调用中获得常新的默认值20.2 用嵌套函数来编写property属性20.3 给属性值起别名20.4 缓存属性值20.5 用同一个方法访问多个属性20.6 封装一个方法来给类增加功能20.7 增强所有方法来给类增加功能20.8 在运行时给一个类实例添加方法20.9 检查接口的实现20.10 在自定义元类中正确地使用__new__和__init__20.11 允许对List的可变方法的链式调用20.12 通过更紧凑的语法使用协作的超类调用20.13 不使用__init__来初始化实例属性20.14 实例属性的自动初始化20.15 重新加载时自动更新类实例20.16 在编译时绑定常量20.17 解决元类冲突


飞网下载站,免费下载共享资料,内容涉及教育资源、专业资料、IT资源、娱乐生活、经济管理、办公文书、游戏资料等。