Mi proyecto actual requiere un amplio uso de los campos de bits. Encontré un recipe for bit a field class simple pero funcional pero me faltaban algunas características que necesitaba, así que decidí extenderlo. Solo tengo que implementar __str__
y __repr__
y quiero asegurarme de seguir las convenciones.Python uso apropiado de __str__ y __repr__
__str__
se supone que es informal y concice, así que he hecho lo devolverá valor decimal del campo de bits (es decir str(bit field 11)
habría "3"
.
__repr__
se supone que es una representación oficial del objeto, por lo que 've hizo volver la cadena de bits real (es decir repr(bit field 11)
habría "11"
).
En su opinión sería esta implementación cumplir con las convenciones de str
y repr
?
Además, he usado la función bin()
para obtener la cadena de bits del valor almacenado en la clase. Esto no es compatible con Python < 2.6, ¿hay algún método alternativo?
Saludos,
Pete
Hay módulos de campo de bits disponibles, como bitstring, bitarray y bitvector (compruebe PyPi). Puede valer la pena echarles un vistazo si no quieres reinventar la rueda. –
Sé que estoy reinventando la rueda aquí, pero estoy haciendo este proyecto por diversión y de alguna manera es insatisfactorio usar el código que alguien más está escrito en este contexto (¡lo sé tonto!). – Peter