在哪里可以找到__bytes__方法?

时间:2017-08-05 13:36:15

标签: python python-3.x

官方文件说:

  

object.__bytes__(self)

     

bytes调用以计算字节字符串   对象的表示。这应该返回一个bytes对象。

但是当我执行dir(object)dir(bytes)dir(bytearray)时,__bytes__方法不会显示。那它在哪里可以找到?

1 个答案:

答案 0 :(得分:1)

PEP 428' s pathlib(因为Python 3.4)可能是bytes的最常见用法。

  

路径的字符串表示形式是原始文件系统路径本身(以原生形式,例如在Windows下使用反斜杠),您可以将其作为字符串传递给任何将文件路径作为函数:

>>>
>>> p = PurePath('/etc')
>>> str(p)
'/etc'
     

类似地,在路径上调用字节会将原始文件系统路径作为字节对象,由os.fsencode()编码:

>>>
>>> bytes(p)
b'/etc'

这些转化通过pathlib.__str__()pathlib.__bytes__()魔术方法进行。