【Python】详解 str.maketrans() (附 Unicode 码速查表)

本文详细介绍了Python3中的str.maketrans()函数,包括其函数原型、使用方法,特别是通过字典和字符串操作创建转换表。通过示例展示了如何利用str.maketrans()和str.translate()进行字符串解密,同时附带了Unicode码速查表作为参考。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

一、说明

1.1 函数原型

1.2 dict 操作

1.3 string 操作

二、典例 —— 字符串解密

三、附录 —— Unicode 码速查表


一、说明


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}

但该操作并不常用。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值