私は非常に長くて複雑なjsonオブジェクトを持っていますが、最初のレベルでアイテム/キーを取得したいだけです!
例:
{
"1": "a",
"3": "b",
"8": {
"12": "c",
"25": "d"
}
}
結果として1,3,8を取得したい!
私はこのコードを見つけました:
for key, value in data.iteritems():
print key, value
ただし、すべてのキーを出力します(12および25)
簡単な.keys()
を実行するだけです
>>> dct = {
... "1": "a",
... "3": "b",
... "8": {
... "12": "c",
... "25": "d"
... }
... }
>>>
>>> dct.keys()
['1', '8', '3']
>>> for key in dct.keys(): print key
...
1
8
3
>>>
ソートされたリストが必要な場合:
keylist = dct.keys()
keylist.sort()
for key in data.keys():
print key
pythonオブジェクトが型のインスタンスであるかどうかを確認する良い方法は、Pythonの「組み込み」関数であるisinstance()
を使用することです。 Python 3.6の場合:
dct = {
"1": "a",
"3": "b",
"8": {
"12": "c",
"25": "d"
}
}
for key in dct.keys():
if isinstance(dct[key], dict)== False:
print(key, dct[key])
#shows:
# 1 a
# 3 b