? Similar a la pregunta this, estoy tratando de leer en un encabezado de etiqueta ID3v2 y tengo problemas para averiguar cómo obtener bytes individuales en python.¿Cómo se pueden leer bytes del archivo en Python
Primero leí los diez bytes en una cadena. Entonces quiero analizar las piezas individuales de información.
Puedo agarrar los dos caracteres de número de versión en la cadena, pero no tengo idea de cómo tomar esos dos caracteres y obtener un número entero de ellos.
El paquete struct parece ser lo que quiero, pero no puedo hacer que funcione.
Aquí está mi código tan lejos (yo soy muy nuevo a Python por cierto ... así que tomarlo con calma en mí):
def __init__(self, ten_byte_string):
self.whole_string = ten_byte_string
self.file_identifier = self.whole_string[:3]
self.major_version = struct.pack('x', self.whole_string[3:4]) #this
self.minor_version = struct.pack('x', self.whole_string[4:5]) # and this
self.flags = self.whole_string[5:6]
self.len = self.whole_string[6:10]
Impresión a cabo cualquier valor excepto obviamente basura porque no tienen el formato correctamente.
para 'H', tendrá que usar un corte de 2 bytes. – Brian
Tienes razón, pasé por alto eso. Arreglaré mi ejemplo para que funcione, pero la tuya es una mejor respuesta de todos modos. –