目录
一、说明
1.1 函数原型
static str.maketrans(x[, y[, z])
此静态方法返回一个 可供 str.translate() 使用的转换对照表。
注意:Python3.4+ 已移除 string.maketrans(),由内建函数 bytearray.maketrans()、bytes.maketrans()、str.maketrans() 替代。
1.2 dict 操作
若只输入1个参数 x,则 x 必须是一个将 Unicode 码位序号 (int) 或字符 (长度为1的 string) 映射到 Unicode 码位序号、(任意长度的)字符串或 None 的字典。 注意,若输入字典 x 的 key 为字符,则输出字典的 key 会被转换为 Unicode 码位序号。例如:
>>> dict0 = {'a': 1, 'b': 2, 'c': 3} # key 为字符 (长度为1的 string)
>>> str.maketrans(dict0) # ord('a')=97, ord('b')=98, ord('c')=99
{97: 1, 98: 2, 99: 3}
# ---------------------------------------------------------------------
>>> dict1 = {10: 1, 11: 2, 12: 3} # key 为 Unicode 码位序号 (int)
>>> str.maketrans(dict1) # key 类型为 int 输出不变
{10: 1, 11: 2, 12: 3}
# ---------------------------------------------------------------------
>>> dict2 = {'n': None, '0': None, 0: None} # key 混合类型
>>> str.maketrans(dict2) # ord('n')=110, ord('0')=48
{110: None, 48: None, 0: None}
但该操作并不常用。