himary 发表于 2022-9-8 20:59:14

求助谁能详细解释一下translate(table)的用法

translate(table) 方法,这个是返回一个根据 table 参数(用于指定一个转换规则的表格)转换后的新字符串。

需要使用 str.maketrans(x[, y[, z]]) 方法制定一个包含转换规则的表格。

>>> table = str.maketrans("ABCDEFG", "1234567")
>>> "I love FishC.com".translate(table)
'I love 6ish3.com' 包括小甲鱼讲的这段代码解释
谢谢各位大神

Twilight6 发表于 2022-9-8 21:56:49


maketrans 方法,制作映射表,例如你 这里填写入的ABCDEFG依次对应 1234567:

ABCDEFG         检索的key
|   ||||   ||
12345   6   7         映射的value

这样一一对应,然后对一个字符串进行调用 translate 方法,传入个映射表

只要字符串中有字符存对应上 映射表的 key ,就会替换为对应 key 的 value,形成新的字符串

ba21 发表于 2022-9-8 22:01:35

maketrans(oldtab, newtab [, deltab] )
参数解释:
oldtab = " " # 要转换的字符
newtab = "." # 转换后的字符
deltab = "," # 要删除的字符 (可选参数)
注:以上的字符 可以多个, 转换后的字符位置要转换的字符位置一一对应(也就是说oldtab的长度==newtab的长度)如:str.maketrans("ABCDEFG", "1234567"), A->1, F->6。
把oldtab字符转换为newtab字符,删除deltab中的字符
trantab1 = str.maketrans(oldtab,newtab) # 只转换
trantab2 = str.maketrans(oldtab,newtab,deltab) # 删除后转换


页: [1]
查看完整版本: 求助谁能详细解释一下translate(table)的用法