Python 字符串 translate() 方法返回修改后的字符串,替换字典或哈希表中说明的字符。
用法:string.translate(哈希映射)
参数
- string- 原始字符串
- 哈希映射 - 原始字符串中两个字符之间的映射。
Python 字符串 translate() 方法示例
示例 1:
Python3
# hash map
trans_dic = {101: None, 102: None, 103: 105}
original_str = "geeksforgeeks"
print("Original string:", original_str)
# Altered string
print("Modified string:", original_str.translate(trans_dic))
输出:
Original string: geeksforgeeks Modified string: iksoriks
解释:
这里‘e’和‘f’映射为None,类似地‘g’映射为‘i’,将字符串修改为“iksoriks”。
示例 2:
Python3
s = "GeeksforGeeks"
trans = s.maketrans("G", "g")
print(s.translate(trans))
输出:
geeksforgeeks
解释:
这里‘G’通过maketrans()方法映射到‘g’。
示例 3:
Python3
# strings
str1 = "gfg"
str2 = "abc"
str3 = "gf"
original_string = "geeksforgeeks"
print("Initial string:", original_string)
translation = original_string.maketrans(str1, str2, str3)
# Altered String
print("Modified string:", original_string.translate(translation))
输出:
Initial string: geeksforgeeks Modified string: eeksoreeks
解释:
这里 g、f 和 g 通过 maketrans() 方法映射到 a、b 和 c,类似地,g、f 映射到 None,将字符串修改为 “eeksoreeks”。
笔记:
- 如果指定的字符不在哈希表中,则不会替换该字符。
- 如果我们使用哈希表,我们必须使用ascii码而不是字符。
示例 4:
方法:
在此示例中,我们首先将示例输入字符串定义为“hello world”。然后,我们使用 str.maketrans() 方法定义一个转换表。 str.maketrans() 方法返回一个转换表,translate() 方法可以使用该转换表来替换字符串中的字符。
在本例中,我们定义一个转换表,将所有出现的字符 ‘e’ 和 ‘l’ 分别替换为 ‘x’ 和 ‘y’。我们将此转换表分配给变量translation_table。
最后,我们使用translate()方法将翻译表应用到输入字符串string。这将返回一个新字符串,其中的字符根据翻译表进行替换。我们将这个新字符串分配给变量translated_string。
Python3
# Sample input string
string = "hello world"
# Define the translation table
translation_table = str.maketrans('el', 'xy')
# Use the translate() method to apply the translation table to the input string
translated_string = string.translate(translation_table)
# Print the translated string
print(translated_string)
hxyyo woryd
该代码的时间复杂度为 O(n),其中 n 是输入字符串的长度。 str.maketrans() 方法具有恒定的时间复杂度,因为它只是创建一个翻译表,而 translate() 方法也具有线性时间复杂度,因为它循环遍历输入字符串中的每个字符并根据该表执行翻译。
空间复杂度也是 O(n),因为翻译后的字符串与输入字符串具有相同的长度,并且无论输入字符串的长度如何,翻译表的大小都是恒定的。
相关用法
- Python String translate()用法及代码示例
- Python String title()用法及代码示例
- Python String title方法用法及代码示例
- Python String format()用法及代码示例
- Python String capitalize()用法及代码示例
- Python String center()用法及代码示例
- Python String casefold()用法及代码示例
- Python String count()用法及代码示例
- Python String endswith()用法及代码示例
- Python String expandtabs()用法及代码示例
- Python String encode()用法及代码示例
- Python String find()用法及代码示例
- Python String index()用法及代码示例
- Python String isalnum()用法及代码示例
- Python String isalpha()用法及代码示例
- Python String isdecimal()用法及代码示例
- Python String isdigit()用法及代码示例
- Python String isidentifier()用法及代码示例
- Python String islower()用法及代码示例
- Python String isnumeric()用法及代码示例
- Python String isprintable()用法及代码示例
- Python String isspace()用法及代码示例
- Python String istitle()用法及代码示例
- Python String isupper()用法及代码示例
- Python String join()用法及代码示例
注:本文由纯净天空筛选整理自shlokdi35dq大神的英文原创作品 Python String translate() method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。