python 中的maketrans()
函数有助于返回映射表。映射表用于使用maketrans()
方法的转换。python 中的maketrans()
方法返回一个字符串,其中每个字符都映射到映射表中对应的字符。
**string.maketrans(x[, y[, z]])** #where x,y,z are strings
maketrans()
参数:
maketrans()
函数接受三个参数。maketrans()
方法可以创建字符到其翻译的一对一映射。这个方法是静态方法。
参数 | 描述 | 必需/可选 |
---|---|---|
x | 如果只指定了一个参数,这必须是字典。如果指定了两个或多个参数,则该参数必须是指定要替换的字符的字符串。 | 需要 |
y | 长度与参数 x 相同的字符串。第一个参数中的每个字符都将被替换为该字符串中的相应字符。 | 可选择的 |
z | 描述要从原始字符串中删除哪些字符的字符串。 | 可选择的 |
maketrans()
返回值
返回值是一个字典,包含 Unicode 字符到其替换字符的映射。
| 投入 | 返回值 | | 字符串/字典 | 1 对 1 映射的翻译表 |
Python 中maketrans()
方法的示例
示例 1:如何使用带有maketrans()
的字典创建 Translation 表?
dictionary = {"a": "11", "b": "22", "c": "33"}
string1 = "abc"
print(string.maketrans(dict))
dicti "11", 98: "22", 99: "33"}
string2 = "abc"
print(string2.maketrans(dict))
输出:
{97: '11', 98: '22', 99: '33'}
{97: '11', 98: '22', 99: '33'}
示例 2:如何用maketrans()
创建两个字符串的翻译表?
# first string
String1 = "abc"
String2 = "def"
String = "abc"
print(String.maketrans(String1, String2))
# example dictionary
String1 = "abc"
String2 = "defghi"
String = "abc"
print(String.maketrans(String1, String2))
输出:
{97: 100, 98: 101, 99: 102}
ValueError: the first two maketrans arguments must have equal length
示例 3:如何用maketrans()
创建可移动字符串的 Translational 表?
String1 = "abc"
String2 = "def"
String3 = "abd"
String = "abc"
print(String.maketrans(String1, String2, String3))
输出:
{97: None, 98: None, 99: 102, 100: None}