Python에서 사전을 문자열로 변환

Samyak Jain 2023년1월30일
  1. json 모듈을 사용하여 사전을 문자열로 변환하고 Python에서 다시 변환
  2. str()literal_eval() 함수를 ast 라이브러리에서 사용하여 Python에서 사전을 문자열로 변환하고 다시 되돌리기
  3. pickle 모듈을 사용하여 사전을 문자열로 변환하고 Python에서 다시 변환
Python에서 사전을 문자열로 변환

Python의 사전은 키:값 쌍에 저장된 데이터 값의 정렬된 컬렉션입니다. 중괄호 안에 요소를 배치하고 쉼표로 구분하여 만들 수 있습니다. 파이썬에서 문자열은 유니코드 문자의 시퀀스입니다. 작은따옴표나 큰따옴표로 문자를 묶어 생성할 수 있습니다.

이 자습서에서는 사전을 문자열로 변환하고 다시 Python으로 변환하는 방법에 대해 설명합니다.

json 모듈을 사용하여 사전을 문자열로 변환하고 Python에서 다시 변환

‘json’은 ‘JavaScript Object Notation’의 약자입니다. 이 모듈은 출력을 일반 텍스트로만 생성합니다. 또한 크로스 플랫폼 및 크로스 버전을 지원합니다.

예를 들어,

import json

dict = {"Hello": 60}
s = json.dumps(dict)
print(s)
d = json.loads(s)
print(d)

출력:

{"Hello": 60}
{'Hello': 60}

json.dumps() 함수는 매개변수로 전달된 json 객체에서 데이터를 추출하여 문자열 형태로 반환합니다. json.loads() 함수는 문자열을 매개변수로 받아 json 객체를 반환합니다.

str()literal_eval() 함수를 ast 라이브러리에서 사용하여 Python에서 사전을 문자열로 변환하고 다시 되돌리기

이 방법은 사전의 길이가 너무 크지 않은 경우에 사용할 수 있습니다. Python의 str() 메서드는 사전을 문자열 표현으로 변환하는 데 사용됩니다. ast 라이브러리의 literal_eval()은 Python에서 문자열을 사전으로 변환하는 데 사용됩니다.

예를 들어,

import ast

dict = {"Hello": 60}
str(dict)
ast.literal_eval(str(dict))

출력:

"{'Hello': 60}"
{'Hello': 60}   

pickle 모듈을 사용하여 사전을 문자열로 변환하고 Python에서 다시 변환

pickle 모듈의 dumps() 함수는 Python에서 사전을 바이트 스트림으로 변환하는 데 사용됩니다. loads() 함수는 반대의 작업을 수행합니다. 즉, Python에서 바이트 스트림을 사전으로 다시 변환하는 데 사용됩니다.

예를 들어,

import pickle

dict = {"Hello": 60, "World": 100}
s = pickle.dumps(dict)
print(s)
d = pickle.loads(s)
print(d)

출력:

b'\x80\x04\x95\x19\x00\x00\x00\x00\x00\x00\x00}\x94(\x8c\x05Hello\x94K<\x8c\x05World\x94Kdu.'
{'Hello': 60, 'World': 100}

관련 문장 - Python String

관련 문장 - Python Dictionary