Jak czyta się bajty z pliku w Pythonie
Podobny doto pytanie, próbuję odczytać nagłówek tagu ID3v2 i mam problem z ustaleniem, jak uzyskać poszczególne bajty w Pythonie.
Najpierw przeczytałem wszystkie dziesięć bajtów w łańcuch. Chcę następnie przeanalizować poszczególne informacje.
Mogę złapać dwa znaki numeru wersji w łańcuchu, ale nie mam pojęcia, jak wziąć te dwa znaki i uzyskać z nich liczbę całkowitą.
Pakiet struct wydaje się być tym, czego chcę, ale nie mogę go uruchomić.
Oto mój kod do tej pory (jestem bardzo nowy w pythonie btw ... więc spokojnie się na mnie):
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]
Wydrukowanie dowolnej wartości z wyjątkiem jest oczywiście bzdurą, ponieważ nie są poprawnie sformatowane.