La imagen PIL show () no funciona en Windows 7

Me gustaría mostrar una imagen usando python en windows y otras plataformas. Cuando lo hago:

from PIL import Image im = Image.open('image.png') im.show() 

mi visor predeterminado se abre y me dice que Windows Photo Viewer can't open this picture because either this file was deleted , etc.

El archivo probablemente se elimine porque PIL llama al sistema operativo con el siguiente comando: "start /wait %s && del /f %s" % (file, file)

He encontrado una solución aquí . Recomiendan cambiar el código de PIL para "start /wait %s && PING 127.0.0.1 -n 5 > NUL && del /f %s" % (file, file) . Sin embargo, quiero que otros puedan usar mi código.

¿Hay una solución simple? ¿Debo buscar una alternativa a PIL que funcione en multiplataforma?

Ok, encontré una solución aquí :

 import webbrowser webbrowser.open('image.png') 

Abre el visor predeterminado, no el navegador, en mi máquina.

Además, hay os.startfile .

Si desea que MS Paint lo abra solo, puede utilizar:

start /wait mspaint %s && del /f %s" % (file, file)

La /wait no tiene ningún efecto cuando el nombre del archivo se especifica directamente.

Cuando aparezca el Visor de fotos, vaya al menú en la parte superior -> Abrir-> Progtwig de elección-> Seleccionar pintura
En español -> Abrir -> Elegir Progtwig -> seleccionar Pintar

referencia de la imagen : imagen