📜  Python | 字符串translate

📅  最后修改于: 2020-07-13 04:26:57             🧑  作者: Mango

translate()返回一个字符串,该字符串是根据给定的转换映射修改成给定字符串的字符串。

有两种翻译方法:

提供映射作为字典

参数:

string.translate(映射)

mapping–在两个字符之间映射的字典。
返回:返回修改后的字符串,其中每个字符根据提供的映射表映射到其对应的字符。

 

# Python3代码演示不带maketrans()的翻译  
  
# 使用ASCII指定映射号  
table = { 119 : 103, 121 : 102, 117 : None }  
  
# 目标字符串  
trg = "weeksyourweeks"
  
# Printing 原始字串  
print ("The string before translating is : ", end ="")  
print (trg)  
  
# 使用translate()进行翻译.  
print ("The string after translating is : ", end ="")  
print (trg.translate(table))  

输出:

The string before translating is : weeksyourweeks
The string after translating is : geeksforgeeks

再举一个例子:

# Python 3程序展示了translate()方法的工作 
  
# 使用ASCII指定映射   
translation = {103: None, 101: None, 101: None} 
  
string = "geeks"
print("原始字串:", string) 
  
# translate string 
print("翻译的字符串:",  
       string.translate(translation)) 

输出:

原始字串: geeks
翻译的字符串: ks

使用maketrans()提供映射 

语法:maketrans(str1,str2,str3)
参数:
str1:指定需要替换的字符列表。
str2:指定需要替换字符的字符列表。
str3:指定需要删除的字符列表。

返回:返回转换表,该表指定了translate()可以使用的转换

 

# Python 3程序展示了translate()方法的工作 
  
# First String 
firstString = "gef"
  
# Second String 
secondString = "eks"
  
# Third String 
thirdString = "ge"
  
# 原始字串 
string = "geeks"
print("原始字串:", string) 
  
translation = string.maketrans(firstString,  
                               secondString,  
                               thirdString) 
  
# 翻译的字符串 
print("翻译的字符串:",  
       string.translate(translation)) 

输出: 

原始字串: geeks
翻译的字符串: ks

输出: 

原始字串: geeks
翻译的字符串: ks