我当前的项目需要大量使用位域。我为 bit a field 类找到了一个简单、实用的配方,但它缺少一些我需要的功能,所以我决定扩展它。我刚刚开始实施__str__
,__repr__
并且我想确保我遵循惯例。
__str__
应该是非正式和简洁的,所以我让它返回位字段的十进制值(str(bit field 11)
即"3"
.
__repr__
应该是对象的官方表示,所以我让它返回实际的位字符串(即repr(bit field 11)
是"11"
)。
在您看来,这种实现是否符合 和 的str
约定repr
?
此外,我使用该bin()
函数来获取存储在类中的值的位串。这与 Python < 2.6 不兼容,是否有替代方法?
干杯,
皮特