转自:http://it.zhaozhao.info/archives/941
字节数组 (bytearray) 属于可变 (mutable) 的序列 (sequence) 型态,可进行以下序列通用的计算
计算 | 描述 |
---|---|
x in s | 判断 x 是否在 s 中 |
x not in s | 判断 x 是否不在 s 中 |
s + t | 连接 s 及 t |
s * n, n * s | 将 s 重复 n 次连接 s 本身 |
s[i] | 取得索引值 i 的元素 |
s[i:j] | 取得索引值 i 到 j 的子序列 |
s[i:j:k] | 取得索引值 i 到 j ,间隔 k 的子序列 |
len(s) | 回传 s 的元素个数 |
min(s) | 回传 s 中的最小值 |
max(s) | 回传 s 中的最大值 |
字节数组有以下的方法 (method)
方法 | 描述 |
---|---|
bytearray.decode(encoding="utf-8", errors="strict") | 将 bytearray 解译为指定编码的字符串 |
classmethod bytearray.fromhex(string) | 将具有十六进制数字的字符串 string 转换为字节数组 |
bytearray.translate(table[, delete]) | 将 bytearray 依 table 替换字符, delete 为所要删除的字符 |
static bytearray.maketrans(from, to) | 回传字节数组的转换表,使之用于 translate() 方法 |
字节数组是用双引号或单引号加上 b 前缀围起来的复合数据型态,里头的每一个字符都是整数的元素,举例示范如下
a = bytearray(b"361497258")
print("a: ", a)
print("6 in a:", 6 in a)
print("6 not in a:", 6 not in a)
print("a + a: ", a + a)
print("a * 2: ", a * 2)
print("a[6]: ", a[6])
print("len(a): ", len(a))
print("max(a): ", max(a))
print("min(a): ", min(a))
# 檔名:bytearraytype.py
# 功能:示范 Python 程序
#
# 时间:公元 2010 年 12 月
执行结果如下