我收到错误'raise UnidentifiedImageError(PIL.UIdentifiedImageError:无法识别图像文件<_位于0x0000018CA596D350>;'的io.BytesIO对象在以下代码中:
import io
from PIL import Image
file = io.BytesIO(str.encode('D:/Downloads/imagens/0b4d4db99a7b8ecba24909d277556de8.png'))
img1=Image.open(file)
img1.show()
还有很多其他类似的问题,但似乎都不是同一个问题。如果我去掉"str.encode",则错误将转到";TypeError:需要类似字节的对象,而不是"str">
你是想打开那个文件吗?
img1 = Image.open('D:/Downloads/imagens/0b4d4db99a7b8ecba24909d277556de8.png')
# or
with open('D:/Downloads/imagens/0b4d4db99a7b8ecba24909d277556de8.png', 'rb') as fh:
img1 = Image.open(fh)
参考文件:
这是一个懒惰的操作;此函数标识文件,但文件保持打开状态,并且在您尝试处理数据(或调用load((方法(之前,不会从文件中读取实际的图像数据。请参见new((。请参阅Pillow中的文件处理。
参数
fp
–文件名(字符串(,pathlib。路径对象或文件对象。文件对象必须实现file.read、file.sek和file.tell方法,并以二进制模式打开。