在jupyter中对一个PIL.Image
类型的对象img使用img.show()
,报错:
Error: no "view" mailcap rules found for type "image/png"
img.show()
实际上调用的是PIL.ImageShow.show()
。
查看PIL.ImageShow
源码,发现会根据系统类型将对应的图像浏览器注册到全局变量_viewers
中。
当使用Unix系统时,会先注册其他的图像浏览器,最后才注册IPythonViewer,源码如下:
if sys.platform not in ("win32", "darwin"):