Dictionary객체 생성 후 JSON파일로 만들기 위해서 dump()
or dumps()
를 사용하게 된다.
이때 대부분의 경우 dictionary가 순서가 있다면 순서대로 JSON화 되지만, 최근 진행한 파일에서는 뒤죽박죽으로 들어가서 이를 해결했다.
dumps(a, b, sort_keys=True)
사용하기json.dumps의 파라미터 중 하나인 sort_keys옵션을 사용하여 순서를 정렬함
collections.OrderedDict()
사용하기OrderedDict()는 이름에서 나와있듯이 정렬한다기보단, 순서를 고정한다.
import collections # collections을 import해줘야함
index_json = collections.OrderedDict()
# for문으로 index_json의 값이 쌓이게 만들면 그 순서대로 저장된다
index_json["index"] = {"_index" : "extract_word", "_type" : "keyword", "_id" : f"{j}"}
with open('word_1.json', 'a', encoding = "utf-8") as make_file:
json.dump(index_json, make_file, indent = ' ')
이런 식으로 사용해서 순서대로 정리된 JSON을 얻었다