首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用plistlib访问1键,然后去掉其他嵌套键。

使用plistlib访问1键,然后去掉其他嵌套键。
EN

Stack Overflow用户
提问于 2017-10-03 08:08:33
回答 1查看 264关注 0票数 1

这会是个愚蠢的决定。

我想把“是的”从下面的夹板中拿出来:

代码语言:javascript
运行
复制
<key>Sample</key>
    <dict>
        <key>No</key>
        <dict>
            <key>Still No</key>
            <dict>
                <key>YES</key>
                <array>
                    <dict>
                        <key>Dont care</key>
                    </dict>
            </dict>
        </dict>
    </dict>

使用plist库我可以做到:

代码语言:javascript
运行
复制
import plistlib as pl
pplist = pl.readPlist(plistPath)
pplist['Sample']['No']['Still No']
{'YES': {'DontCare'}}

我会得到“是”和“不关心”,但因为这不仅仅是一个标准列表,我不能使用

使用for循环,虽然我可以得到“是”,但我觉得应该有一个更干净的方法来做到这一点。

代码语言:javascript
运行
复制
for x in pplist['Sample']['No']['Still No']:
    thisIsYES = x
    break

print x
'YES'
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-10-03 08:23:50

如果数据结构与示例中的不完全相同(如果dict中有多个键怎么办?),但我的猜测是,您想要查看dict的.keys()方法(或者类似于dict的对象,我不确定)--退出plistlib。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46539929

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档