Python 字符串 translate()

translate() 方法使用翻译表来根据映射表替换/翻译给定字符串中的字符。

翻译表由静态方法 maketrans() 创建。

translate() 方法的语法是

string.translate(table)

String translate() 参数

translate() 方法接受一个参数

  • table - 一个包含两个字符之间映射的翻译表;通常由 maketrans() 创建

String translate() 的返回值

translate() 方法返回一个字符串,其中每个字符都根据翻译表映射到其相应的字符。


示例 1:使用 translate() 的翻译表进行翻译/映射

# first string
firstString = "abc"
secondString = "ghi"
thirdString = "ab"

string = "abcdef"
print("Original string:", string)

translation = string.maketrans(firstString, secondString, thirdString)

# translate string
print("Translated string:", string.translate(translation))

输出

Original string: abcdef
Translated string: idef

在这里,翻译映射 translation 包含从 a, b 和 cg, h 和 i 的映射。

但是,移除字符串 thirdStringab 的映射重置为 None

因此,当使用 translate() 翻译字符串时,ab 被移除,c 被替换为 i,输出 idef

注意:如果您不理解 maketrans() 内部发生了什么,请参阅字符串 maketrans()


示例 2:使用 translate() 和手动翻译表的翻译/映射

# translation table - a dictionary
translation = {97: None, 98: None, 99: 105}

string = "abcdef"
print("Original string:", string)

# translate string
print("Translated string:", string.translate(translation))

输出

Original string: abcdef
Translated string: idef

在这里,我们不从 maketrans() 创建翻译表,而是手动创建映射字典translation

然后使用此翻译来翻译 string,以获得与上一个示例相同的输出。


另请阅读

你觉得这篇文章有帮助吗?

我们的高级学习平台,凭借十多年的经验和数千条反馈创建。

以前所未有的方式学习和提高您的编程技能。

试用 Programiz PRO
  • 交互式课程
  • 证书
  • AI 帮助
  • 2000+ 挑战