Bootstrap

python怎么读取png_如何在python中读取PNG的字节?

我想读取PNG的字节,并修改它们。我已经试过这个代码了:import codecs

ed = input("Would you like to encode or decode?\n(e/d)> ")

image = input("What image would you like to use?\n> ")

if(ed == 'e'):

imagef = codecs.open(image, encoding = "hex")

imagel = imagef.read()

img = imagel.decode('hex')

print(img)

但是我得到了错误:Would you like to encode or decode?

(e/d)> e

What image would you like to use?

> i.png

Traceback (most recent call last):

File "main.py", line 7, in

imagel = imagef.read()

File "/usr/local/Cellar/python/3.6.5/Frameworks/Python.framework/Versions/3.6/lib/python3.6/codecs.py", line 700, in read

return self.reader.read(size)

File "/usr/local/Cellar/python/3.6.5/Frameworks/Python.framework/Versions/3.6/lib/python3.6/codecs.py", line 503, in read

newchars, decodedbytes = self.decode(data, self.errors)

File "/usr/local/Cellar/python/3.6.5/Frameworks/Python.framework/Versions/3.6/lib/python3.6/encodings/hex_codec.py", line 25, in decode

return hex_decode(input, errors)

File "/usr/local/Cellar/python/3.6.5/Frameworks/Python.framework/Versions/3.6/lib/python3.6/encodings/hex_codec.py", line 19, in hex_decode

return (binascii.a2b_hex(input), len(input))

binascii.Error: Non-hexadecimal digit found

我如何修复它?

;