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 <400 or y < 300:
      os.remove(fileName)

      本文无毫无技术含量,只希望遇到同样问题的仁兄能够看到,节省一些google的时间。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM