파이썬으로 JSON데이터를 파일에 옮겨적는 법
조회수 9019회
JSON 데이터를 저장하는 변수 data
를 텍스트 파일에 적으려고 합니다.
일반 파일처럼 적었더니 에러가 나는데 왜 그런걸까요?
소스코드
obj = open('data.txt', 'wb')
obj.write(data)
obj.close
에러내용
TypeError: must be string or buffer, not dict
1 답변
-
파일을 여는 데에는 아무런 문제도 없습니다.
JSON data는 dict타입이기 때문에 JSON-encode해야 쓸 수 있습니다.
#파이썬 2,3 모두 사용 가능 import json with open('data.txt', 'w') as outfile: json.dump(data, outfile)
#파이썬 2.x에서 사용 가능 import io, json with io.open('data.txt', 'w', encoding='utf-8') as f: f.write(unicode(json.dumps(data, ensure_ascii=False)))
#파이썬 3.x에서 사용 가능 import json with open('data.txt', 'w') as f: json.dump(data, f, ensure_ascii=False)
댓글 입력