You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Pillow中加载open()打开的图像或base64解码数据且不保存直接展示

解决方案

你可以借助Python标准库的io.BytesIO将解码得到的二进制图像内容包装为类文件对象,直接传入Pillow接口读取操作,全程无需写入本地磁盘。

完整实现代码

import base64
from PIL import Image
from io import BytesIO

# 你原有解码逻辑
image_64_encode = 'this-string-is-big-so'
# 若base64串带data:image/xxx;base64,前缀,先执行下面的代码去掉前缀
# if image_64_encode.startswith('data:image'):
#     image_64_encode = image_64_encode.split(',')[1]
image_64_decode = base64.decodebytes(image_64_encode)

# 包装为类文件对象后直接读取展示
img = Image.open(BytesIO(image_64_decode))
img.show()

补充说明

上述操作全部在内存中完成,得到的img对象和你用open()读取本地图像文件得到的Pillow对象完全一致,可直接执行裁剪、调色、格式转换等所有Pillow支持的操作。
如果你在Jupyter Notebook环境下运行,不需要调用show()方法,直接返回img对象即可在页面内嵌入展示图像。

内容的提问来源于stack exchange,提问作者name

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 18:54:08