반응형
파이썬 JSON은 첫 번째 수준에서만 키를 얻습니다.
매우 길고 복잡한 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
파이썬 객체가 유형의 인스턴스인지 확인하는 좋은 방법 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
참고 URL : https://stackoverflow.com/questions/15789059/python-json-only-get-keys-in-first-level
반응형
'IT TIP' 카테고리의 다른 글
| git bash Windows 바로 가기를 수정할 수 없습니다. (0) | 2020.11.20 |
|---|---|
| GIT_WORK_TREE는 무엇입니까?이 ENV 변수를 설정할 필요가없는 이유는 무엇입니까? (0) | 2020.11.20 |
| LINQPad는 다른 클래스 (예 : LINQ in Action 샘플의 Books)를 어떻게 참조합니까? (0) | 2020.11.20 |
| Visual Studio : 프로세스가 생성 될 때 프로세스에 자동 연결 (0) | 2020.11.20 |
| 숨겨진 파일을 제외한 파일 목록 가져 오기 (0) | 2020.11.20 |