如何在python中显示和关闭图像?

gor*_*i93 7 python python-imaging-library

我想在python中显示图像,并在用户输入终端中的图像名称后将其关闭.我使用PIL来显示图像,这里是代码:

im = Image.open("image.jpg")
im.show()
Run Code Online (Sandbox Code Playgroud)

我的应用程序显示此图像,但用户任务是识别图像上的对象并在终端中写入答案.如果输入的答案是正确的,用户应获得另一张图像 PIL的问题在于我无法关闭图像,并且通过研究,唯一的解决方案是杀死图像查看器的过程,但这并不是真正可靠和优雅的.是否有其他库用于显示具有.show()和.close()等方法的图像?

Anu*_*yal 4

只需在单独的进程中打开任何图像查看器/编辑器,并在用户回答您的问题后将其终止,例如

from PIL import Image
import subprocess

p = subprocess.Popen(["display", "/tmp/test.png"])
raw_input("Give a name for image:")
p.kill()
Run Code Online (Sandbox Code Playgroud)

  • 这是否依赖于“显示”是在用户路径上显示图像的可执行文件?这看起来有点……脆弱? (3认同)