Recent Posts
Recent Comments
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- pwnable
- Couldn't read row 0
- 블록체인
- 클라우드가 뭐야
- 클라우드란?
- SQLiteConstraintException
- cmd1
- Make sure the Cursor is initialized correctly before accessing data for it.
- 액션바 필요없숴
- col -1 from CursorWindow
- 페니빙
- 포너블
- 애너그램 그룹
- 쏘큩
- 10814
- kotlin
- Docker
- 파이썬
- pwable.kr
- Drive-By-Download
- cmd2
- python
- tlqkf
- 코틀린
- java.lang.IllegalStateException
- 나이순 정렬
- UNIQUE constraint failed
- 백준
- 6566
- pwnable.kr
Archives
- Today
- Total
푸르미르
[Error]유니코드 인코딩 문제로 인해 json파일이 저장되지 않을 때 본문
데이터 전처리 과정에서 data를 json형태로 저장하려 했다.
허나 한국어 관련 프로젝트라 그런지 data에 한국어가 포함되어있어 위와같은 오류가 발생한 것으로 보인다.
기존 코드는 이런 식이였다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
import json
DATA_IN_PATH = '../data/'
DATA_CONFIGS = 'data_configs.json'
data_configs = []
data_configs['vocab'] = word_vocab
data_configs['vocab_size'] = len(word_vocab)+1
import os
if not os.path.exists(DATA_IN_PATH):
os.makedirs(DEFAULT_PATH + DATA_IN_PATH)
json.dump(data_configs, open(DATA_IN_PATH + DATA_CONFIGS, 'w'), ensure_ascii=False)
|
cs |
위와 같은 오류를 발견한 후 수정한 코드는 아래와 같다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
import json
from collections import OrderedDict
DATA_IN_PATH = '../data/'
DATA_CONFIGS = 'data_configs.json'
data_configs = OrderedDict()
data_configs['vocab'] = word_vocab
data_configs['vocab_size'] = len(word_vocab)+1
import os
if not os.path.exists(DATA_IN_PATH):
os.makedirs(DEFAULT_PATH + DATA_IN_PATH)
np.save(open(DATA_IN_PATH + TEST_LABEL_DATA, 'wb'), test_labels)
#json 파일 생성
with open(DATA_IN_PATH + DATA_CONFIGS, 'w', encoding='UTF-8') as f:
json_data = json.dumps(data_configs)
json_decode_data = json_data.encode('utf8').decode('unicode-escape')
f.write(json_decode_data)
|
cs |
일단 json형태로 저장하려 했던 대상은 data_configs인데 이것을 OrderedDict형태로 바꿔주어
일반 딕셔너리와 다르게 저장하였고, file을 open하고 write할 때, 22번째 줄을 실행하였다.
이렇게 해야 한글이 깨지지 않고, 저장되는 모습을 확인 할 수 있다.
'AI' 카테고리의 다른 글
pip 버그 (0) | 2021.10.23 |
---|---|
[유사 프로젝트 코드 리뷰] 딥러닝 기반 영상 속 유해 언어 실시간 차단 시스템 -2 (0) | 2021.09.27 |
[유사 프로젝트 코드 리뷰] 딥러닝 기반 영상 속 유해 언어 실시간 차단 시스템 -1 (0) | 2021.09.20 |
SystemError: java.nio.file.InvalidPathException 해결방법 (0) | 2021.08.03 |