使用 plistlib 访问 1 个键,后面没有其他嵌套键
Using plistlib to access 1 key with out the other nested keys after it
这将是一个愚蠢的。
我想从下面的 Plist 中删除 "YES":
<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 库我可以做到:
import plistlib as pl
pplist = pl.readPlist(plistPath)
pplist['Sample']['No']['Still No']
{'YES': {'DontCare'}}
我会得到 "YES" 和 "Dont care",但由于它不仅仅是一个标准列表,我无法使用 [0]
访问它
使用 for 循环虽然我只能得到 "YES" 但我觉得应该有更简洁的方法来做到这一点。
for x in pplist['Sample']['No']['Still No']:
thisIsYES = x
break
print x
'YES'
有点不清楚如果数据结构与示例中的数据结构不完全相同(如果字典中有多个键怎么办?),但我猜你想看看dict 的 .keys()
方法(或类似 dict 的对象,我不确定)你离开了 plistlib。
这将是一个愚蠢的。
我想从下面的 Plist 中删除 "YES":
<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 库我可以做到:
import plistlib as pl
pplist = pl.readPlist(plistPath)
pplist['Sample']['No']['Still No']
{'YES': {'DontCare'}}
我会得到 "YES" 和 "Dont care",但由于它不仅仅是一个标准列表,我无法使用 [0]
访问它使用 for 循环虽然我只能得到 "YES" 但我觉得应该有更简洁的方法来做到这一点。
for x in pplist['Sample']['No']['Still No']:
thisIsYES = x
break
print x
'YES'
有点不清楚如果数据结构与示例中的数据结构不完全相同(如果字典中有多个键怎么办?),但我猜你想看看dict 的 .keys()
方法(或类似 dict 的对象,我不确定)你离开了 plistlib。