Уважаемые форумчане прошу помощи. У меня возникла проблема, в которой мне нужно сравнить два файла и заменить разные значения числом, скажем 23. Я написал небольшой код, который выводит мне разные значения в двух файлах, но я просто не могу найти информацию о том, как заменять только разные биты в двоичных файлах. Спасибо
Python:
from PySide2.QtWidgets import QApplication
import struct
file1 = r"C:\1\\in1.bin" #read file 1
file2 = r"C:\1\\in2.bin" #read file 2
with open(file1, 'br') as of1, open(file2, 'br') as of2:
l1 = of1.read()
l2 = of2.read()
f1_f2 = set(enumerate(l1)) - set(enumerate(l2))
f2_f1 = set(enumerate(l2)) - set(enumerate(l1))
for offset, char in sorted(f1_f2, key=lambda x: x[0]):
print("offset: {}\tchar: {:X}".format(offset, char))
print()
for offset, char in sorted(f2_f1, key=lambda x: x[0]):
print("offset: {}\tchar: {:X}".format(offset, char))
if __name__ == "__main__":
app = QApplication([])
# ...
sys.exit(app.exec_())```