学习Python中的翻译表

138 阅读3分钟

Python为我们提供了不同的方法,我们可以用它来操作字符串。在这篇文章中,我们将讨论翻译表,并使用它来用python中的另一个字符替换字符串中的一个字符。

什么是翻译表?

简单地说,翻译表是一个字符到另一个字符的映射。在处理字符串时,我们可能需要用字符串中的另一个字符替换一个字符。在这种情况下,我们可以使用一个翻译表来确定哪个字符必须被替换成哪个字符。

你可以把翻译表看作是一个字典,其中的键是字符串中最初存在的字符,值是现有字符将被替换的字符。

现在,让我们看看如何在python中创建一个翻译表。

如何创建一个翻译表?

Python为我们提供了maketrans()函数,我们可以用它来创建一个翻译表。maketrans()函数接受三个参数并返回一个翻译表。第一个参数是包含需要被替换的字符的字符串。第二个输入参数是包含新字符的字符串。第三个也是可选的参数是一个包含需要从任何字符串中删除的字符的字符串。 maketrans()函数的语法如下。

maketrans(old_characters,new_characters,characters_to_delete). 这里

  • old_characters是包含需要被替换的字符的字符串。
  • new_characters是包含将被用来替代old_characters中的字符的字符串。理想情况下,new_characters的长度应该与old_characters相等。这样,old_characters中的每个字符将被映射到new_characters中的相应位置。
  • characters_to_delete 包含将从任何字符串中删除的字符。

我们可以在python中创建一个翻译表,如下面的例子所示。

import string
input_string = """This is PythonForBeginners.com.
Here, you   can read python tutorials for free."""
translation_table = input_string.maketrans("abcdefghijklmnopqrstupwxyz", "ABCDEFGHIJKLMNOPQRSTUVWXYZ")
print("The translation table is:")
print(translation_table)

输出。

The translation table is:
{97: 65, 98: 66, 99: 67, 100: 68, 101: 69, 102: 70, 103: 71, 104: 72, 105: 73, 106: 74, 107: 75, 108: 76, 109: 77, 110: 78, 111: 79, 112: 86, 113: 81, 114: 82, 115: 83, 116: 84, 117: 85, 119: 87, 120: 88, 121: 89, 122: 90}

这里,字符A到Z和a到z的ASCII值被用来创建翻译表。翻译表的键是小写字母的ASCII值,相应的值是大写字母的ASCII值。我们可以使用这个翻译表将一个小写字母替换成大写字母的对应值。我们没有指定要删除的任何字符。

如何使用翻译表?

我们使用翻译表和 translate() 方法来替换字符串中的字符。当对一个字符串调用 translate() 方法时,将翻译表作为其输入,并根据翻译表替换原始字符串中的字符。你可以从下面的例子中理解这一点。

import string
input_string = """This is PythonForBeginners.com.
Here, you   can read python tutorials for free."""
translation_table = input_string.maketrans("abcdefghijklmnopqrstupwxyz", "ABCDEFGHIJKLMNOPQRSTUVWXYZ")
new_string = input_string.translate(translation_table)
print("The original string is:")
print(input_string)
print("Output String is:")
print(new_string)

输出。

The original string is:
This is PythonForBeginners.com.
Here, you   can read python tutorials for free.
Output String is:
THIS IS PYTHONFORBEGINNERS.COM.
HERE, YOU   CAN READ VYTHON TUTORIALS FOR FREE.

在这里,我们使用前一个例子中创建的翻译表将所有小写字母替换为大写字母。

总结

在这篇文章中,我们已经讨论了python中的翻译表。我们还看到了如何使用maketrans()方法和translate()方法来替换字符串中的字符。