字符串 str.maketrans()方法,translate()方法

limalove / 2023-08-26 / 原文

maketrans方法

translate方法

 

1,返回的是字典格式,字典内容为:{ 原字符串的unicode数值或ASCII数值:替换后字符串的unicode数值或ASCII数值 }

2,常和translate()方法搭配使用。

3,

maketrans()方法,如果有第三个参数,则把第三个参数中的字符替换为None。

translate ()方法,如果有第三个参数,在映射替换字符前先把第三个参数中的字符删除。

 注:Python3.4 已经没有 string.maketrans() 了,取而代之的是内建函数: bytearray.maketrans()、bytes.maketrans()、str.maketrans() 。

 

 

 

 

# 字母 R 替换为 N
txt = "Runoob!"
mytable = txt.maketrans("R", "N")

print(mytable)
print("82是哪个字符:",chr(82))



# # 使用字符串设置要替换的字符,一一对应
intab = "aeiou"
outtab = "12345"  #注意这里返回的是字符串'1'对应的编码,而不是数字1
trantab = str.maketrans(intab, outtab)


print(trantab)
print('"1"对应的Unicode数值:',ord('1'))

 

 

 1, TypeError: str.translate() takes exactly one argument (2 given)

 

 从下图可以看到str.translate方法没有delete参数

 

 从下图可以看到bytes/bytearray.translate方法有delete参数

 

注意:translate ()方法,如果有第三个参数delete参数,在映射替换字符前先把delete参数中的字符删除。