2017-06-12 36 views
2

我在python中有一個自定義類,我需要將它傳遞給外部API。 API只需要能夠在我的課程上調用bytes(...)自定義類的Python字節(...)

我的問題是,我如何決定在我的自定義python類上調用bytes()的行爲?

回答

7

你可以給你的自定義類__bytes__ method

通過bytes調用來計算對象的字節字符串表示。這應該返回一個bytes對象。

演示:

>>> class Foo: 
...  def __bytes__(self): 
...   return b'This is a bytes result for this instance' 
... 
>>> bytes(Foo()) 
b'This is a bytes result for this instance'