반응형
json
을 사용하여 바이트 문자열이 포함 된 사전을 인코딩하려고하는데 is not JSON serializable 오류
가 발생합니다.
import base64
import json
data = {}
encoded = base64.b64encode(b'data to be encoded')
data['bytes'] = encoded
print(json.dumps(data))
내가 얻는 오류 :
TypeError: b'ZGF0YSB0byBiZSBlbmNvZGVk\n' is not JSON serializable
JSON으로 바이트가 포함 된 사전을 올바르게 인코딩하려면 어떻게해야합니까?
해결 방법
import base64
encoded = base64.b64encode(b'data to be encoded') # b'ZGF0YSB0byBiZSBlbmNvZGVk' (notice the "b")
data['bytes'] = encoded.decode('ascii') # 'ZGF0YSB0byBiZSBlbmNvZGVk'
decoded = base64.b64decode(data['bytes']) # b'data to be encoded'
참조 페이지 https://stackoverflow.com/questions/40000495
반응형
'파이썬' 카테고리의 다른 글
파이썬 Eclipse에서 pep8.py를 통합하는 방법은 무엇입니까? (0) | 2020.10.28 |
---|---|
파이썬 Pandas를 사용하여 데이터 프레임에 빈 행 추가 (0) | 2020.10.28 |
파이썬 지도가 Python 3에서 목록 대신지도 객체를 반환하는 이유는 무엇입니까? (0) | 2020.10.28 |
파이썬 빈 목록을 초기화하는 방법은 무엇입니까? (0) | 2020.10.28 |
파이썬 태그 이름으로 요소 내에서 태그 이름으로 요소 찾기 (Selenium) (0) | 2020.10.28 |
댓글