2017-01-11 1 views
-1

API 호출시 JSON을 반환하는 작은 프로젝트에서 작업합니다. 그러나, 나는 문자열에서 값을 얻을 수없는 것 같습니다. JSON을 인쇄 할 수는 있지만 개별 요소를 얻을 수는 없습니다.파이썬에서 레이블이 지정되지 않은 JSON 배열 요소에 액세스하는 방법은 무엇입니까?

json.loads()를 사용하여 JSON 객체에서 작동하는지 확인했습니다.

data = response.read() 
dataStream = json.dumps(data) 
faceIdentification = dataStream[0]['faceId'] 

나는 또한 시도 :

faceIdentification = dataStream['faceId'] 

faceIdentification = dataStream['faceId'][0] 

가 나는 또한 시도 "faceId"키와 연관된 값에 액세스하려면 I는하지만 아무 소용이 다음 시도 받은 JSON에서 직접 작동하지만 운이 없다.

[{"faceId":"52f388ad-6789-4657-af4d-0dc308cc9aaa","faceRectangle":{"top":237,"left":204,"width":226,"height":226}}] 
+4

당신은'json.loads()'를 의미하지 않습니다.'json.dumps()' – furas

+0

아, 그게 오류였습니다. –

답변

1

JSON 문자열 형식입니다 :이다에서 json으로는 나는 faceId의 값을 얻을합니다. 당신이 "로드", 파이썬 데이터 구조로 그것을 켜려면 :

data = response.read() 
dataStream = json.loads(data) 

지금 dataStream이 사전의 목록입니다. 첫 번째 문자는 dataStream[0]이고 'faceId'요소는 dataStream[0]['faceId']입니다.

+0

고맙습니다. 오류는 코드의 "덤프"섹션이었습니다. –

관련 문제