打印编码为字符串的png文件而不保存到fi

2024-10-04 07:29:11 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用的是一个库函数,它以字符串的形式返回png图像。 可以将此字符串写入如下文件:

    img_string = png_print_formatter(weblogoData, weblogoFormat)
    f = file('test.png', 'w')
    f.write(img_string)
    f.close()

它也可以被matplotlib读取,例如通过plt.imread公司()功能。 但是,我想将字符串转换成一种格式,可以用来直接显示图像(不必保存到文件中)。 我知道plt.imread公司()以二进制模式读取文件。在

Google建议我使用字符串的encode()函数,但没想到:

^{pr2}$

你知道怎么解决这个问题吗?我不是这些方面的专家,但我确信有解决办法。在

非常感谢并致以诚挚的问候

罗马人


Tags: 文件字符串图像imgstringpngformatter公司
1条回答
网友
1楼 · 发布于 2024-10-04 07:29:11

使用StringIO:

from cStringIO import StringIO

img_string = png_print_formatter(weblogoData, weblogoFormat)
fake_file = StringIO(img_string)
plt.imread(fake_file)

上面的代码是针对python2的。在python3中,StringIO是io模块,您应该使用BytesIO类而不是StringIO类。在

相关问题 更多 >