学习Python,对它的文档越来越失望。你知道吗
对于以下脚本:
utf_string = "文言"
raw_bytes = b'\xe6\x96\x87\xe8\xa8\x80'
print(raw_bytes.decode())
print(utf_string.encode())
print(raw_bytes == utf_string.encode())
print(utf_string == raw_bytes.decode())
1)这些encode()和decode()方法的文档在哪里?你知道吗
2)我已经使用print(type(utfèu string))测试了变量的数据类型,并意识到我同时处理字符串和字节。你知道吗
3)如何找出这些方法属于哪个类?我试着在Google上搜索“python3string方法”和“Python解码方法”,但毫无乐趣。你知道吗
我需要知道一种方法,这样我就可以找出该方法所属的类,然后很容易找到该方法的文档。否则我真的不知道怎么用这个方法。你知道吗
变量
raw_bytes
不是字符串,它的类型是bytes
。这就是b
前缀的含义。decode
是bytes
对象的方法,默认编码是UTF-8,但您可以指定其他编码。你知道吗变量
utf_string
是一个字符串。encode
是一个字符串方法。默认编码是UTF-8,但您可以指定其他编码。你知道吗正如您所发现的,将这两种方法结合在一起,可以在
bytes
和表示Unicode码点的字符串之间进行来回转换,前者像字符串一样是不可变的,但是是一个小整数序列。这两种方法在Pythonstandard library docs中都有文档记录。你知道吗Python标准库通常有示例性文档,当您遇到这样的问题时,文档应该是您的第一个调用端口。你知道吗
两者的文档都可以在here中找到。搜索'字节.解码'和'str.encode编码'.
从(1)中明显可见。
您可以在pythonshell中使用
help(<type>)
,例如help(str)
,以查看可用于相应对象类型的方法(和其他内容)。相关问题 更多 >
编程相关推荐