Мой текущий проект требует широкого использования битовых полей. Я нашел простой и функциональный рецепт для класса битового поля. но в нем не было нескольких нужных мне функций, поэтому я решил его расширить. Я только что реализовал __str__
и __repr__
и хочу убедиться, что соблюдаю соглашение.
__str__
должен быть неформальным и кратким, поэтому я заставил его возвращать десятичное значение битового поля (т. е. str(bit field 11)
будет "3"
.
Предполагается, что __repr__
является официальным представлением объекта, поэтому я заставил его возвращать фактическую битовую строку (т.е. repr(bit field 11)
будет "11"
).
По вашему мнению, будет ли эта реализация соответствовать соглашениям для str
и repr
?
Кроме того, я использовал функцию bin()
, чтобы получить битовую строку значения, хранящегося в классе. Это несовместимо с Python ‹ 2.6, есть ли альтернативный метод?
Ваше здоровье,
Пит