파이썬 JSON, CSV 다루기
- 파일에서 읽고, 파일로 저장하기
- json.load(파일핸들) : JSON 파일에서 읽어 파싱하기
- json.dump(데이터, 파일핸들, indent=4) : 데이터를 JSON 파일로 저장
-
12345678910import jsonfile_name = 'E:\\aa.json'with open(file_name, 'r', encoding='utf-8') as json_file:items = json.load(json_file)print(item['temp'])with open('E:\\dump.json', 'w', encoding='utf-8') as dump_file:json.dump(items, dump_file, indent=4)
- 문자열을 JSON으로, JSON을 문자열로
- json.loads() : 문자열을 JSON으로 파싱하기
- json.dumps() : JSON을 문자열로 변환하기
-
1234567891011import jsondata = '[{"_id" : "KF","farmID" : "KF13","dongID" : "15","temp" : 30.2,"humi" : 31.5}, {"_id" : "KF","farmID" : "KF13","dongID" : "15","temp" : 31.2,"humi" : 33.5}]'items = json.loads(data)for item in items:print(item['temp'])dump = json.dumps(items, indent=4)print(dump)
- CSV 파일을 읽어서 list에 저장, list의 내용을 CSV파일로 저장
1234567891011121314import csvfile_name = 'E:\\aa.csv'with open(file_name, 'rt', encoding='utf-8') as csv_file:reader = csv.reader(csv_file)list_items = list(reader)print(list_items[0:10])#newline='' : writerow() 함수가 자동으로 \n을 넣어주기에 줄바꿈 제거with open('E:\\dump2.csv', 'w', encoding='utf-8', newline='') as dump_file:wr = csv.writer(dump_file)wr.writerow([1,2,3])wr.writerows(list_items[0:10])
- 딕셔너리를 JSON으로 변환
123456import jsondic = {'a':1, 'b':[1,2,3], 'c': 3}st = json.dumps(dic)print(st)- 결과 : {“a”: 1, “b”: [1, 2, 3], “c”: 3}