Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

사전의 문자열 표현을 Python에서 사전으로 변환하는 방법은 무엇입니까?


Dictionary 객체는 str() 함수를 통해 쉽게 문자열로 변환할 수 있습니다.

>>> D1={'1':1, '2':2, '3':3}
>>> D1
{'1': 1, '2': 2, '3': 3}
>>> str(D1)
"{'1': 1, '2': 2, '3': 3}"

문자열을 사전으로 변환하려면 문자열에 사전의 유효한 표현이 포함되어 있는지 확인해야 합니다. 이것은 eval() 함수로 수행할 수 있습니다.

>>> D1={'1':1, '2':2, '3':3}
>>> s=str(D1)
>>> s
"{'1': 1, '2': 2, '3': 3}"
>>> D2=eval(s)
>>> D2
{'1': 1, '2': 2, '3': 3}

Python의 Abstract Syntax Tree(ast) 모듈에는 유효한 Python 리터럴 구조를 안전하게 평가하는 literal_eval() 메서드가 있습니다.

>>> D1={'1':1, '2':2, '3':3}
>>> s=str(D1)
>>> import ast
>>> D2=ast.literal_eval(s)
>>> D2
{'1': 1, '2': 2, '3': 3}