Take the 2-minute tour ×

I'm using IDLE Python on Win7 x64 (x86 version of Python though as PIL doesn't work with x64) and it's working properly, but I have a problem in that the show() method for an image opens in what it must think is the default image viewer (in my case, Photoshop).

The documentation for the PIL module states that show() "displays it using an external viewer (usually xv on Unix, and the paint program on Windows)". [link]

Photoshop is not my default image viewer in Windows (Picasa is), so that doesn't explain it.

I have a netbook running Ubuntu and that works fine - it opens a small image viewer window, not a massive 64-bit image editing application!

Does anyone know of a reason for this, and how I can change the image viewer IDLE uses to a more sensible one?

share|improve this question
Note: The image file I'm opening is a .jpg, not something different like a .bmp or .png which may default to another image viewer in Windows. –  ben_nuttall Jun 20 '11 at 15:39
Any difference if you show() the image before you process it? –  blork Jun 20 '11 at 15:50
PIL works well on 64 bit Python for Windows. PIL show() converts images to BMP files and opens them with the default program that is associated with BMP files, in your case Photoshop. –  cgohlke Jun 20 '11 at 16:11
Yup - that's right! Changed default viewer for .bmp files and it worked. Thanks for the explanation. –  ben_nuttall Jun 20 '11 at 16:33

Your Answer



Browse other questions tagged or ask your own question.