如果OSError:无法打开资源,如何跳过

2024-06-26 11:26:04 发布

您现在位置:Python中文网/ 问答频道 /正文

如何避免OSError:如果没有文件,则无法打开资源,但下次会有文件。你知道吗

    trend_ext = r"C:\Users\Angel ONC\Desktop\mapas-delitos-master\Series\Baja California\Ext.png"
    trend_fem = r"Series\Baja California\Fem.png"
    trend_homculp = r"Series\Baja California\Hcul.png"
    trend_homdol = r"Series\Baja California\Hdol.png"
    trend_narco = r"Series\Baja California\Nar.png"


    Mapa_ext = r"Mapas\Baja California\Ext.png"
    Mapa_fem = r"Mapas\Baja California\Fem.png"
    Mapa_homculp = r"Mapas\Baja California\Hcul.png"
    Mapa_homdol = r"Mapas\Baja California\Hdol.png"
    Mapa_narco = r"Mapas\Baja California\Nar.png"
    Mapa_robcas = r"Mapas\Baja California\Cas.png"


    doc = SimpleDocTemplate("Reportes\Baja California.pdf",pagesize=letter,
                            rightMargin=72,leftMargin=72,
                            topMargin=72,bottomMargin=18)
    Story=[]

        try:
            im_Mapa_fem = Image(Mapa_fem, 6*inch, 4*inch)
            Story.append(im_Mapa_fem)
            im_trend_fem = Image(trend_fem, 6*inch, 4*inch)
            Story.append(im_trend_fem)

        except:
            pass
try:
    im_Mapa_ext = Image(Mapa_ext, 6*inch, 4*inch)
    Story.append(im_Mapa_ext)
    im_trend_ext = Image(trend_ext, 6*inch, 4*inch)
    Story.append(im_trend_ext)

except:
    pass


try:
    im_Mapa_secuestro = Image(Mapa_secuestro, 6*inch, 4*inch)
    Story.append(im_Mapa_secuestro)
    im_trend_secuestro = Image(trend_secuestro, 6*inch, 4*inch)
    Story.append(im_trend_secuestro)

except:
    pass

OSError:无法打开资源“Mapas\Baja California”\有限元.png““

我需要找到一个解决方案时,找不到文件。你知道吗


Tags: imagepngtrendextseriesfemimstory
1条回答
网友
1楼 · 发布于 2024-06-26 11:26:04

尝试重写Try execpt块,如下所示:

#Package for iterating through directories
import glob as glob 

directory = r'Mapas\Baja California\*.png'
try:

    for files in glob.glob(directory):

        im_Mapa_fem = file

        im_Mapa_fem = Image(Mapa_fem, 6*inch, 4*inch)
        Story.append(im_Mapa_fem)
        im_trend_fem = Image(trend_fem, 6*inch, 4*inch)
        Story.append(im_trend_fem)

except Exception as e:
        print(e)
        continue

使用continue时,如果满足某个条件,Python将忽略for循环的一部分,但继续完成循环的其余部分。但是,当使用pass时,Python会忽略该条件,并像往常一样继续执行for循环。你知道吗

因此,如果您想捕获异常,然后移动到下一个迭代,您应该使用continue而不是pass。你知道吗

这可能无法正常工作,因为您没有包含MCVE,但这应该是一般方法。你知道吗

也不要使用空块。您应该始终捕获异常并对其进行一些处理,以便将来进行调试。你知道吗

相关问题 更多 >