gpt4 book ai didi

python - 检查文件夹是否存在于 simplekml - python

转载 作者:太空宇宙 更新时间:2023-11-04 05:01:42 25 4
gpt4 key购买 nike

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

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

if 'testfolder' in kml.containers:
print True

似乎唯一返回折叠名称的是:

for x in kml.containers:
print x.name

但当然,我不希望遍历 kml 文件中的每个容器来查找文件夹,如果找不到则写入它。请告诉我有更好的方法吗?!

最佳答案

这是因为,kml.containers 包含类 simplekml.featgeom.Folder 的对象列表,而 name 是该类的属性!

因此,当您检查 if 'testfolder' in kml.containers 时,它会返回 false!您必须获取该容器的名称属性中的值,然后检查 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

关于python - 检查文件夹是否存在于 simplekml - python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45558778/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com