非常教程

Python参考手册

网络数据 | Internet Data

binascii

binascii模块包含许多在二进制和各种ASCII编码二进制表示之间转换的方法。通常情况下,你不会直接使用这些功能,但使用的包装模块一样uubase64或者binhex相反。该binascii模块包含用C语言编写的低级函数,以获得更高级别模块使用的更高速度。

binascii模块定义了以下功能:

binascii.a2b_uu(string)

将一行uuencoded数据转换回二进制并返回二进制数据。行通常包含45(二进制)字节,除了最后一行。行数据后面可能会出现空格。

binascii.b2a_uu(data)

将二进制数据转换为一行ASCII字符,返回值是转换后的行,包括换行符char。数据的长度最多应为45。

binascii.a2b_base64(string)

将一段base64数据转换回二进制并返回二进制数据。一次可以传递多个行。

binascii.b2a_base64(data)

将二进制数据转换为base64编码中的一行ASCII字符。返回值是转换后的行,包括换行符char。新行被添加,因为这个函数的原始用例是为它提供一系列57字节的输入行以获得符合MIME-base64标准的输出行。否则,输出符合RFC 3548

binascii.a2b_qp(string[, header])

将一段引用可打印的数据转换回二进制并返回二进制数据。一次可以传递多个行。如果可选参数存在且为true,则下划线将被解码为空格。

binascii.b2a_qp(data[, quotetabs, istext, header])

将二进制数据转换为带引号的可打印编码中的ASCII字符行。返回值是转换后的行。如果可选参数quotetabs存在且为true,则所有制表符和空格都将被编码。如果可选参数istext存在并且为true,则不对新行进行编码,但将对后面的空白进行编码。如果可选参数存在且为true,则根据RFC1522将空格编码为下划线。如果可选参数存在且为假,则换行符也将被编码; 否则换行转换可能会破坏二进制数据流。

binascii.a2b_hqx(string)

将binhex4格式的ASCII数据转换为二进制,而不进行RLE解压缩。该字符串应该包含完整数量的二进制字节,或者(在binhex4数据的最后一部分的情况下)剩余的位为零。

binascii.rledecode_hqx(data)

根据binhex4标准对数据执行RLE解压缩。该算法0x90在一个字节之后用作重复指示符,然后是一个计数。计数值0指定一个字节值0x90。该例程返回解压缩的数据,除非数据输入数据以孤立重复指示符结束,在这种情况下Incomplete引发异常。

binascii.rlecode_hqx(data)

数据执行binhex4样式的RLE压缩并返回结果。

binascii.b2a_hqx(data)

执行hexbin4二进制转ASCII转换并返回结果字符串。参数应该已经是RLE编码的,并且长度可以被3除尽(可能除了最后一个片段)。

binascii.crc_hqx(data, crc)

计算的一个16位的CRC值的数据,开始以初始CRC并返回结果。这使用CRC-CCITT多项式_x_16 + _x_12 + _x_5 + 1,通常表示为0x1021。该CRC以binhex4格式使用。

binascii.crc32(data[, crc])

计算数据的32位校验和CRC-32,从最初的crc开始。这与ZIP文件校验和一致。由于该算法被设计用作校验和算法,因此不适合用作通用哈希算法。使用方法如下:

print binascii.crc32("hello world")
# Or, in two pieces:
crc = binascii.crc32("hello")
crc = binascii.crc32(" world", crc) & 0xffffffff
print 'crc32 = 0x%08x' % crc

注意

要在所有Python版本和平台上生成相同的数值,请使用crc32(data)&0xffffffff。如果仅使用压缩二进制格式的校验和,则不需要返回值,因为无论符号如何,返回值都是正确的32位二进制表示。

版本2.6中更改:无论平台如何,返回值都在-2 ** 31,2 ** 31-1的范围内。过去,价值将在一些平台上签名,并在其他平台上签名。如果您希望它匹配Python 3行为,请对该值使用&0xffffffff。

版本3.0中更改:返回值是无符号的,范围为0,2 ** 32-1,无论平台如何。

binascii.b2a_hex(data)binascii.hexlify(data)

返回二进制数据的十六进制表示。数据的每个字节都被转换成相应的2位十六进制表示。结果字符串因此是数据长度的两倍。

binascii.a2b_hex(hexstr)binascii.unhexlify(hexstr)

返回由十六进制字符串hexstr表示的二进制数据。这个函数是与之相反的b2a_hex()hexstr必须包含偶数个十六进制数字(可以是大写或小写),否则TypeError会引发a。

exception binascii.Error

异常引发的错误。这些通常是编程错误。

exception binascii.Incomplete

不完整的数据引发异常。这些通常不是编程错误,但可以通过读取更多的数据并再次尝试来处理。

Python

Python 是一种面向对象的解释型计算机程序设计语言,由荷兰人 Guido van Rossum 于1989年发明,第一个公开发行版发行于1991年。 Python 是纯粹的自由软件, 源代码和解释器 CPython 遵循 GPL 协议。Python 语法简洁清晰,特色之一是强制用空白符( white space )作为语句缩进。

主页 https://www.python.org/
源码 https://github.com/python/cpython
版本 2.7
发布版本 2.7.13

Python目录

1.内置常量 | Built-in Constants
2.内置例外 | Built-in Exceptions
3.内置函数 | Built-in Functions
4.内置类型 | Built-in Types
5.编译器 | Compiler
6.加密 | Cryptography
7.数据压缩 | Data Compression
8.数据持久性 | Data Persistence
9.数据类型 | Data Types
10.调试和分析 | Debugging & Profiling
11.开发工具 | Development Tools
12.文件和目录访问 | File & Directory Access
13.文件格式 | File Formats
14.构架 | Frameworks
15.输入 | Importing
16.输入/输出 | Input/ouput
17.国际化 | Internationalization
18.网络 | Internet
19.网络数据 | Internet Data
20.翻译 | Interpreters
21.语言 | Language
22.记录 | Logging
23.Mac OS
24.MS Windows
25.多媒体 | Multimedia
26.联网 | Networking
27.数字与数学 | Numeric & Mathematical
28.操作系统 | Operating System
29.可选操作系统 | Optional Operating System
30.限制执行 | Restricted Execution
31.运行 | Runtime
32.SGI IRIX
33.软件包装与分销 | Software Packaging & Distribution
34.字符串 | String
35.结构化标记 | Structured Markup
36.Tk
37.Unix
38.Python 简介
39.Python pass 语句
40.Python 循环嵌套
41.Python 运算符
42.Python log10() 函数
43.Python log() 函数
44.Python floor() 函数
45.Python fabs() 函数
46.Python exp() 函数
47.Python cmp() 函数
48.Python ceil() 函数
49.Python abs() 函数
50.Python Number(数字)
51.Python pow() 函数
52.Python modf() 函数
53.Python min() 函数
54.Python max() 函数
55.Python asin() 函数
56.Python acos() 函数
57.Python uniform() 函数
58.Python shuffle() 函数
59.Python seed() 函数
60.Python random() 函数
61.Python randrange() 函数
62.Python choice() 函数
63.Python sqrt() 函数
64.Python round() 函数
65.Python radians() 函数
66.Python degrees() 函数
67.Python tan() 函数
68.Python sin() 函数
69.Python hypot() 函数
70.Python cos() 函数
71.Python atan2() 函数
72.Python atan() 函数
73.Python 元组
74.Python 列表(List)
75.Python 字符串
76.Python 字典(Dictionary)
77.Python 日期和时间
78.Python 函数
79.Python 模块
80.Python capitalize()方法
81.Python center()方法
82.Python count() 方法
83.Python expandtabs()方法
84.Python endswith()方法
85.Python encode()方法
86.Python decode()方法
87.Python find()方法
88.Python index()方法
89.Python 异常处理
90.Python isspace()方法
91.Python isnumeric()方法
92.Python islower()方法
93.Python isdigit()方法
94.Python isalpha()方法
95.Python isalnum()方法
96.Python isupper()方法
97.Python istitle()方法
98.Python min()方法
99.Python max()方法
100.Python maketrans()方法