Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python maketrans前面字符串的用途_Python_String_Dictionary - Fatal编程技术网

Python maketrans前面字符串的用途

Python maketrans前面字符串的用途,python,string,dictionary,Python,String,Dictionary,当所有这些代码输出相同的结果时,maketrans前面的字符串的用途是什么 'abc'.maketrans('abc','wty') 'wty'.maketrans('abc','wty') ''.maketrans('abc','wty') 'anything you like GH5641567sdfsd'.maketrans('abc','wty') #{97: 119, 98: 116, 99: 121} 另一方面,如果不使用字符串,则会出现错误: maketrans('abc','

当所有这些代码输出相同的结果时,
maketrans
前面的字符串的用途是什么

'abc'.maketrans('abc','wty')
'wty'.maketrans('abc','wty')
''.maketrans('abc','wty')
'anything you like GH5641567sdfsd'.maketrans('abc','wty')

#{97: 119, 98: 116, 99: 121}
另一方面,如果不使用字符串,则会出现错误:

maketrans('abc','wty')
文档中的所有示例似乎都是这样使用的:

s1.maketrans(s1,s2)

但是为什么第一次出现string
s1
似乎不相关呢?

maketrans
是a,这意味着应该像这样使用类
str
调用它(以避免混淆):


并使用
str
实例(文本或非文本)调用它,例如
'hello'。maketrans
'hello'
实际上不会影响静态方法
maketrans
的执行,因为它不会传递给该方法,因此,
maketrans
甚至不知道调用它的字符串是什么。
str
str.maketrans
中代表什么?为什么所有的例子似乎都使用一些字符串而不是
str
,而这样做毫无意义?当使用字符串而不是
str
时,它会影响执行时间吗?@azerbajdzan什么例子?比如说,但是有很多类似的例子。@azerbajdzan首先,我不推荐w3schools进行认真的学习,其次,如何调用
maketrans
,其实并不重要,无论是
str.maketrans
还是
'hi'.maketrans
,它都是相同的输出,因为该方法不关心调用它的内容,但人们使用实例调用静态方法的情况并不少见。@azerbajdzan在较旧版本的Python中(2.x,可能高达3.1,不太确定),
maketrans
可以通过
string
模块获得,现在可以通过
str
类获得。
str.maketrans