摘要:        
?==thread 模块== (可选) ``thread`` 模块提为线程提供了一个低级 (low_level) 的接口, 如 [Example 3-6 #eg-3-6] 所示. 只有你在编译解释器时打开了线程支持才可以使用它. 如果没有特殊需要, 最好使用高级接口 ``threading`` 模块替代. ====Example 3-6. 使用 thread 模块====[eg-3-6...    
阅读全文
 
        
        posted @ 2017-11-04 22:01
淋哥
阅读(919)
推荐(0)
        
            
        
        
摘要:        
Queue 模块 ``Queue`` 模块提供了一个线程安全的队列 (queue) 实现, 如 [Example 3-2 #eg-3-2] 所示. 你可以通过它在多个线程里安全访问同个对象. ====Example 3-2. 使用 Queue 模块====[eg-3-2] ``` File: queue-example-1.py import threading import Que...    
阅读全文
 
        
        posted @ 2017-11-04 21:59
淋哥
阅读(1748)
推荐(0)
        
            
        
        
摘要:        
threading 模块 (可选) ``threading`` 模块为线程提供了一个高级接口, 如 [Example 3-1 #eg-3-1] 所示. 它源自 Java 的线程实现. 和低级的 ``thread`` 模块相同, 只有你在编译解释器时打开了线程支持才可以使用它 . 你只需要继承 //Thread// 类, 定义好 ``run`` 方法, 就可以创建一 个新的线程. 使用时...    
阅读全文
 
        
        posted @ 2017-11-04 21:57
淋哥
阅读(1125)
推荐(0)
        
 
		
    
        
        
摘要:        
==code 模块== ``code`` 模块提供了一些用于模拟标准交互解释器行为的函数. ``compile_command`` 与内建 ``compile`` 函数行为相似, 但它会通过测试来保证你传递的是一个完成的 Python 语句. 在 [Example 2-47 #eg-2-47] 中, 我们一行一行地编译一个程序, 编译完成后会执行所得到的代码对象 (code objec...    
阅读全文
 
        
        posted @ 2017-10-31 21:31
淋哥
阅读(4835)
推荐(0)
        
            
        
        
摘要:        
==zlib 模块== (可选) ``zlib`` 模块为 "zlib" 压缩提供支持. (这种压缩方法是 "deflate".) [Example 2-43 #eg-2-43] 展示了如何使用 ``compress`` 和 ``decompress`` 函数接受字符串参数. ====Example 2-43. 使用 zlib 模块压缩字符串====[eg-2-43] ``` Fil...    
阅读全文
 
        
        posted @ 2017-10-31 21:30
淋哥
阅读(10258)
推荐(1)
        
            
        
        
摘要:        
==sha 模块== ``sha`` 模块提供了计算信息摘要(密文)的另种方法, 如 [Example 2-39 #eg-2-39] 所示. 它与 ``md5`` 模块类似, 但生成的是 160 位签名. ====Example 2-39. 使用 sha 模块====[eg-2-39] ``` File: sha-example-1.py import sha hash = sha...    
阅读全文
 
        
        posted @ 2017-10-31 21:16
淋哥
阅读(2117)
推荐(0)
        
            
        
        
摘要:        
==md5 模块== ``md5`` (Message-Digest Algorithm 5)模块用于计算信息密文(信息摘要). ``md5`` 算法计算一个强壮的128位密文. 这意味着如果两个字符串是不同的, 那么有极高可能它们的 ``md5`` 也不同. 也就是说, 给定一个 ``md5`` 密文, 那么几乎没有可能再找到另个字符串的密文与此相同. [Example 2-35 #...    
阅读全文
 
        
        posted @ 2017-10-31 21:15
淋哥
阅读(2883)
推荐(2)
        
            
        
        
摘要:        
==random 模块== "Anyone who considers arithmetical methods of producing random digits is, of course, in a state of sin." - John von Neumann, 1951 ``random`` 模块包含许多随机数生成器. 基本随机数生成...    
阅读全文
 
        
        posted @ 2017-10-31 21:14
淋哥
阅读(1069)
推荐(0)
        
            
        
        
摘要:        
==getopt 模块== ``getopt`` 模块包含用于抽出命令行选项和参数的函数, 它可以处理多种格式的选项. 如 [Example 2-23 #eg-2-23] 所示. 其中第 2 个参数指定了允许的可缩写的选项. 选项名后的冒号(:) 意味这这个选项必须有额外的参数. ====Example 2-23. 使用 getopt 模块====[eg-2-23] ``` File...    
阅读全文
 
        
        posted @ 2017-10-31 21:11
淋哥
阅读(883)
推荐(0)
        
            
        
        
摘要:        
==errno 模块== ``errno`` 模块定义了许多的符号错误码, 比如 ``ENOENT`` ("没有该目录入口") 以及 ``EPERM`` ("权限被拒绝"). 它还提供了一个映射到对应平台数字错误代码的字典. [Example 2-21 #eg-2-21] 展示了如何使用 ``errno`` 模块. 在大多情况下, //IOError// 异常会提供一个二元元组, 包含...    
阅读全文
 
        
        posted @ 2017-10-31 21:10
淋哥
阅读(2916)
推荐(0)
        
            
        
        
摘要:        
==UserString 模块== (2.0 新增) ``UserString`` 模块包含两个类, //UserString// 和 //MutableString// . 前者是对标准字符串类型的封装, 后者是一个变种, 允许你修改特定位置的字符(联想下列表就知道了). 注意 //MutableString// 并不是效率很好, 许多操作是通过切片和字符串连接实现的. 如果性能很对你...    
阅读全文
 
        
        posted @ 2017-10-31 21:09
淋哥
阅读(1604)
推荐(0)
        
            
        
        
摘要:        
==traceback 模块== [Example 2-18 #eg-2-18] 展示了 ``traceback`` 模块允许你在程序里打印异常的跟踪返回 (Traceback)信息, 类似未捕获异常时解释器所做的. 如 [Example 2-18 #eg-2-18] 所示. ====Example 2-18. 使用 traceback 模块打印跟踪返回信息====[eg-2-18] `...    
阅读全文
 
        
        posted @ 2017-10-31 21:09
淋哥
阅读(2346)
推荐(0)
        
            
        
        
摘要:        
==UserList 模块== ``UserList`` 模块包含了一个可继承的列表类 (事实上是对内建列表类型的 Python 封装). 在 [Example 2-16 #eg-2-16] 中, //AutoList// 实例类似一个普通的列表对象, 但它允许你通过赋值为列表添加项目. ====Example 2-16. 使用 UserList 模块====[eg-2-16] ```...    
阅读全文
 
        
        posted @ 2017-10-31 21:08
淋哥
阅读(2727)
推荐(1)
        
            
        
        
摘要:        
==UserDict 模块== ``UserDict`` 模块包含了一个可继承的字典类 (事实上是对内建字典类型的 Python 封装). [Example 2-15 #eg-2-15] 展示了一个增强的字典类, 允许对字典使用 "加/+" 操作并提供了接受关键字参数的构造函数. ====Example 2-15. 使用 UserDict 模块====[eg-2-15] ``` Fi...    
阅读全文
 
        
        posted @ 2017-10-31 21:07
淋哥
阅读(5258)
推荐(0)
        
            
        
        
摘要:        
==cStringIO 模块== ``cStringIO`` 是一个可选的模块, 是 ``StringIO`` 的更快速实现. 它的工作方式和 ``StringIO`` 基本相同, 但是它不可以被继承. [Example 2-11 #eg-2-11] 展示了 ``cStringIO`` 的用法, 另参考前一节. ====Example 2-11. 使用 cStringIO 模块====[...    
阅读全文
 
        
        posted @ 2017-10-31 21:06
淋哥
阅读(5052)
推荐(0)
        
            
        
        
摘要:        
==mmap 模块== (2.0 新增) ``mmap`` 模块提供了操作系统内存映射函数的接口, 如 [Example 2-13 #eg-2-13] 所示. 映射区域的行为和字符串对象类似, 但数据是直接从文件读取的. ====Example 2-13. 使用 mmap 模块====[eg-2-13] ``` File: mmap-example-1.py import mmap ...    
阅读全文
 
        
        posted @ 2017-10-31 21:04
淋哥
阅读(3421)
推荐(1)
        
            
        
        
摘要:        
==StringIO 模块== [Example 2-8 #eg-2-8] 展示了 ``StringIO`` 模块的使用. 它实现了一个工作在内存的文件对象 (内存文件). 在大多需要标准文件对象的地方都可以使用它来替换. ====Example 2-8. 使用 StringIO 模块从内存文件读入内容====[eg-2-8] ``` File: stringio-example-1.p...    
阅读全文
 
        
        posted @ 2017-10-31 21:02
淋哥
阅读(2606)
推荐(0)
        
            
        
        
摘要:        
==tempfile 模块== [Example 2-6 #eg-2-6] 中展示的 ``tempfile`` 模块允许你快速地创建名称唯一的临时文件供使用. ====Example 2-6. 使用 tempfile 模块创建临时文件====[eg-2-6] ``` File: tempfile-example-1.py import tempfile import os tempf...    
阅读全文
 
        
        posted @ 2017-10-31 21:01
淋哥
阅读(3838)
推荐(1)
        
            
        
        
摘要:        
``shutil`` 实用模块包含了一些用于复制文件和文件夹的函数. [Example 2-4 #eg-2-4] 中使用的 ``copy`` 函数使用和 Unix 下 ``cp`` 命令基本相同的方式复制一个文件. ====Example 2-4. 使用 shutil 复制文件====[eg-2-4] ``` File: shutil-example-1.py import shutil...    
阅读全文
 
        
        posted @ 2017-10-31 21:00
淋哥
阅读(1616)
推荐(0)
        
            
        
        
摘要:        
``fileinput`` 模块允许你循环一个或多个文本文件的内容, 如 [Example 2-1 #eg-2-1] 所示. ====Example 2-1. 使用 fileinput 模块循环一个文本文件====[eg-2-1] ``` File: fileinput-example-1.py import fileinput import sys for line in filein...    
阅读全文
 
        
        posted @ 2017-10-31 20:58
淋哥
阅读(520)
推荐(0)
        
 
		
    
        
        
摘要:        
==gc 模块== (可选, 2.0 及以后版本) ``gc`` 模块提供了到内建循环垃圾收集器的接口. Python 使用引用记数来跟踪什么时候销毁一个对象; 一个对象的最后一个引用一旦消失, 这个对象就会被销毁. 从 2.0 版开始, Python 还提供了一个循环垃圾收集器, 它每隔一段时间执行. 这个收集器查找指向自身的数据结构, 并尝试破坏循环. 如 [Example 1...    
阅读全文
 
        
        posted @ 2017-10-28 22:20
淋哥
阅读(1966)
推荐(0)
        
            
        
        
摘要:        
== types 模块== ``types`` 模块包含了标准解释器定义的所有类型的类型对象, 如 [Example 1-86 #eg-1-86] 所示. 同一类型的所有对象共享一个类型对象. 你可以使用 ``is`` 来检查一个对象是不是属于某个给定类型. ====Example 1-86. 使用 types 模块====[eg-1-86] ``` File: types-examp...    
阅读全文
 
        
        posted @ 2017-10-28 22:16
淋哥
阅读(4574)
推荐(0)
        
            
        
        
摘要:        
==time 模块== ``time`` 模块提供了一些处理日期和一天内时间的函数. 它是建立在 C 运行时库的简单封装. 给定的日期和时间可以被表示为浮点型(从参考时间, 通常是 1970.1.1 到现在经过的秒数. 即 Unix 格式), 或者一个表示时间的 struct (类元组). === 获得当前时间=== [Example 1-79 #eg-1-79] 展示了如何使用...    
阅读全文
 
        
        posted @ 2017-10-28 22:15
淋哥
阅读(1364)
推荐(0)
        
            
        
        
摘要:        
=== atexit 模块=== (用于2.0版本及以上) ``atexit`` 模块允许你注册一个或多个终止函数(暂且这么叫), 这些函数将在解释器终止前被自动调用. 调用 ``register`` 函数, 便可以将函数注册为终止函数, 如 [Example 1-78 #eg-1-78] 所示. 你也可以添加更多的参数, 这些将作为 ``exit`` 函数的参数传递. ===...    
阅读全文
 
        
        posted @ 2017-10-28 22:13
淋哥
阅读(1925)
推荐(0)
        
            
        
        
摘要:        
==sys 模块== ``sys`` 模块提供了许多函数和变量来处理 Python 运行时环境的不同部分. === 处理命令行参数=== 在解释器启动后, ``argv`` 列表包含了传递给脚本的所有参数, 如 [Example 1-66 #eg-1-66] 所示. 列表的第一个元素为脚本自身的名称. ====Example 1-66. 使用sys模块获得脚本的参数====[eg-1...    
阅读全文
 
        
        posted @ 2017-10-28 22:11
淋哥
阅读(2538)
推荐(0)
        
            
        
        
摘要:        
==copy 模块== ``copy`` 模块包含两个函数, 用来拷贝对象, 如 [Example 1-64 #eg-1-64] 所示. ``copy(object) => object`` 创建给定对象的 "浅/浅层(shallow)" 拷贝(copy). 这里 "浅/浅层(shallow)" 的意思是复制对象本身, 但当对象是一个容器 (container) 时, 它的成员仍然指...    
阅读全文
 
        
        posted @ 2017-10-28 22:09
淋哥
阅读(1401)
推荐(0)
        
            
        
        
摘要:        
==operator 模块== ``operator`` 模块为 Python 提供了一个 "功能性" 的标准操作符接口. 当使用 ``map`` 以及 ``filter`` 一类的函数的时候, ``operator`` 模块中的函数可以替换一些 ``lambda`` 函式. 而且这些函数在一些喜欢写晦涩代码的程序员中很流行. [Example 1-62 #eg-1-62] 展示了 `...    
阅读全文
 
        
        posted @ 2017-10-28 22:01
淋哥
阅读(11572)
推荐(3)
        
            
        
        
摘要:        
[Example 1-61 #eg-1-61] 所展示的 ``cmath`` 模块包含了一些用于复数运算的函数. ====Example 1-61. 使用 cmath 模块====[eg-1-61] ``` File: cmath-example-1.py import cmath print "pi", "=>", cmath.pi print "sqrt(-1)", "=>",...    
阅读全文
 
        
        posted @ 2017-10-28 22:00
淋哥
阅读(1161)
推荐(0)
        
            
        
        
摘要:        
==math 模块== ``math`` 模块实现了许多对浮点数的数学运算函数. 这些函数一般是对平台 C 库中同名函数的简单封装, 所以一般情况下, 不同平台下计算的结果可能稍微地有所不同, 有时候甚至有很大出入. [Example 1-60 #eg-1-60] 展示了如何使用 ``math`` 模块. ====Example 1-60. 使用 math 模块====[eg-1-60...    
阅读全文
 
        
        posted @ 2017-10-28 21:59
淋哥
阅读(1272)
推荐(0)
        
            
        
        
摘要:        
== re 模块== "Some people, when confronted with a problem, think 'I know, I'll use regular expressions.' Now they have two problems." - Jamie Zawinski, on comp.lang.emacs ``re`` 模块提...    
阅读全文
 
        
        posted @ 2017-10-28 21:58
淋哥
阅读(2289)
推荐(0)