检查simplekml python中是否存在文件夹

2024-07-08 11:14:57 发布

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

这应该是非常容易的,但我现在已经做了一个小时没有结束的网站。我在python中使用simplekml模块,如果不存在的话,我想创建一个文件夹。如果不创建for循环,我无论如何也找不到检查文件夹是否存在的方法。我认为下面的方法可行,但当然不行

    kml = simplekml.Kml()
    testfold = kml.newfolder(name = 'testfolder')
    testfold2 = kml.newfolder(name = 'testfolder2')

    if 'testfolder' in kml.containers: 
        print True

唯一能返回折叠名称的是:

^{pr2}$

但当然,我不希望遍历kml文件中的每个容器,然后再编写文件夹(如果找不到)。请告诉我还有更好的方法?!在


Tags: 模块方法name文件夹for网站kml小时
1条回答
网友
1楼 · 发布于 2024-07-08 11:14:57

那是因为,kml.集装箱保存类的对象列表simplekml.featgeom.Folder并且name是该类的一个属性!在

所以当你检查if 'testfolder' in kml.containers时,它返回false!您必须获取该容器的name属性中的值,然后检查testfolder

>>> [each for each in kml.containers]
[<simplekml.featgeom.Folder object at 0x2ac156d8e910>, <simplekml.featgeom.Folder object at 0x2ac156d8e890>]
>>> [x.name for x in kml.containers]
['testfolder', 'testfolder2']
>>> True if 'testfolder' in [x.name for x in kml.containers] else False
True

相关问题 更多 >

    热门问题