How do I close an image opened in Pillow?

PythonPython Imaging-LibraryPillow

Python Problem Overview


I have a python file with the Pillow library imported. I can open an image with

Image.open(test.png)

But how do I close that image? I'm not using Pillow to edit the image, just to show the image and allow the user to choose to save it or delete it.

Python Solutions


Solution 1 - Python

With Image.close().

You can also do it in a with block:

with Image.open('test.png') as test_image:
    do_things(test_image)

An example of using Image.close():

test = Image.open('test.png')
test.close()

Solution 2 - Python

If you create a PIL object you will see there is no close method.

from PIL import Image

img=Image.open("image.jpg")
dir(img)

['_Image__transformer', '_PngImageFile__idat', '__doc__', '__getattr__', '__init__', '__module__', '__repr__', '_copy', '_dump', '_expand', '_makeself', '_new', '_open', 'category', 'convert', 'copy', 'crop', 'decoderconfig', 'decodermaxblock', 'draft', 'filename', 'filter', 'format', 'format_description', 'fp', 'frombytes', 'fromstring', 'getbands', 'getbbox', 'getcolors', 'getdata', 'getextrema', 'getim', 'getpalette', 'getpixel', 'getprojection', 'histogram', 'im', 'info', 'load', 'load_end', 'load_prepare', 'load_read', 'map', 'mode', 'offset', 'palette', 'paste', 'png', 'point', 'putalpha', 'putdata', 'putpalette', 'putpixel', 'quantize', 'readonly', 'resize', 'rotate', 'save', 'seek', 'show', 'size', 'split', 'tell', 'text', 'thumbnail', 'tile', 'tobitmap', 'tobytes', 'tostring', 'transform', 'transpose', 'verify']

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionChase CromwellView Question on Stackoverflow
Solution 1 - PythonMorgan ThrappView Answer on Stackoverflow
Solution 2 - Pythontzimhs panousisView Answer on Stackoverflow