爱是王道 发表于 2015-4-24 05:15:16

Python PIL Image模块中有Open方法却没有Close方法!?

  刚才写代码遇到个问题,根据图片的大小判断是否删除一个图片,代码大致如下:



im = Image.Open(fileName)
x,y = im.size
if x < 600 or y < 400:
os.remove(fileName)
  运行后果断报错,是个windows错误。当时想可能是因为文件被占用而一直没有释放,所有不能删除。查看了文档发现image没有提供Close方法,去google查了下,有人说Open方法得到个对象后可能就自动释放文件了,对象独立存在于内存中。可是我这里确实是无法删除,后来将代码改为如下才可用运行了:



fp = open(fileName,'r')
im = Image.open(fp)
fp.close()
x,y = im.size
if x
页: [1]
查看完整版本: Python PIL Image模块中有Open方法却没有Close方法!?