Я пытаюсь выучить Python, это первый код, который я написал:
#!/usr/bin/python
# Filename: read_image.py
f=open('1.raw','r+b')
image=f.read()
f.close()
f=open('copy.raw','w+b')
f.write(image)
f.close()
for i in range(1,256):
image[i]=0
В первой части я просто читаю изображение .raw в виде двоичного файла и делаю его копию. Эта часть отлично работает сама по себе, и я получаю копию изображения после выполнения кода. Однако я хочу манипулировать этим изображением, для начала я пытался затемнить первую строку изображения, однако я получаю следующую ошибку:
Traceback (most recent call last):
File "C:/Python32/read_image.py", line 15, in <module>
image[i]=0
TypeError: 'bytes' object does not support item assignment
Я попытался использовать переменные типа 'int', скопировав в них изображение, однако ошибка сохраняется, за исключением того, что вместо объекта 'bytes' не поддерживается присваивание, я получаю, что объект 'int' не поддерживает присваивание. Как мне решить эту проблему?
Обратите внимание, что это изображение в градациях серого, и значения пикселей варьируются от 0 до 255, я попытался напечатать изображение массива на оболочке, и оно показало мне значения в этом диапазоне.