V Pythone 2 sa z binárneho súboru šťastne načítajú prvé dva bajty:
with open(file_name) as f:
b = f.read(2)
Avšak v Pythone 3 to môže mať za následok napríklad:
UnicodeDecodeError: "utf-8" codec can"t decode byte 2: invalid start byte
Čo ma prináša k otázke: ako čítať N surové bajty zo súboru v Pythone 3 bez určenia kódovania?
odpovede:
3 pre odpoveď č. 1Zadajte binárny režim:
with open(file_name, "rb") as f:
Mali by ste to urobiť aj v systéme Python 2, ak nechcete, aby sa chyby ako CRLF stali LF vo vašom binárnom súbore.