Sto provando a sviluppare uno strumento che legge un file binario, apporta alcune modifiche e lo salva. Quello che sto cercando di fare è fare una lista di ogni riga nel file, lavorare con diverse linee e poi unirmi di nuovo alla lista.Unione di una lista di byte con python
Questo è quello che ho provato:
file = open('myFile.exe', 'r+b')
aList = []
for line in f:
aList.append(line)
#Here im going to mutate some lines.
new_file = ''.join(aList)
e mi danno questo errore:
TypeError: sequence item 0: expected str instance, bytes found
che ha un senso perché sto lavorando con i byte.
C'è un modo per utilizzare la funzione join o qualcosa di simile per unire byte? Grazie.
per quello che vale, si potrebbe fare 'aList = f.readlines()' o 'aList = lista (f)' – mgilson
Prova: 'new_file = '\ x01'.join (a lista)' – karthikr
Ha senso parlare di "linee" in un file binario? Solitamente aggiungiamo newline per la leggibilità e questo non si applica ai file binari. Mi chiedo se starai meglio lavorando con stringhe a lunghezza fissa, come ogni 80 byte. (Solo un pensiero.) – Rob