Closed. This question does not meet Stack Overflow guidelines。它当前不接受答案。












想改善这个问题吗?更新问题,以便将其作为on-topic用于堆栈溢出。

7年前关闭。



Improve this question




如果任何文件已损坏且无法打开,则以下代码会引发值错误并停止打开其他文件。
如何打印出出现增值错误的文件的名称,并使程序进一步运行以检测并打印出出现增值错误的下一个文件?
import glob
from PIL import Image
files = glob.glob('*.jpg')
for f in files:
    im = Image.open(f)
    print im

最佳答案

您可以使用try:/except:处理程序捕获异常:

for f in files:
    try:
        im = Image.open(f)
    except IOError as e:
        print '{} failed to load: {}'.format(f, e)
    else:
        print im

您可能需要阅读Python教程中的chapter devoted to error handling

07-24 21:57