반응형
dict를 문자열로 변경하고 파일에 저장하는 스크립트가 있습니다. 그런 다음 해당 파일을로드하고 dict로 사용하고 싶지만 문자열입니다. dict ( {a : 1, b : 2}
) 형식의 문자열을 dict로 변경할 수있는 int ( "7")
같은 것이 있습니까? 나는 dict ()
를 시도했지만 이것이하는 일이 아닌 것 같습니다. JSON 및 eval ()
과 관련된 일부 프로세스에 대해 들어 봤지만 이것이 어떤 역할을하는지 잘 모르겠습니다. 이 프로그램은 저장 한 것과 동일한 데이터를로드하고, 누군가가 그것을 편집하고 작동하지 않는 경우, 그것은 내 문제가 아닙니다 (사전 데이터 또는 다른 것을 확인하는 고급 방법이 필요하지 않습니다).
해결 방법
이것이 가장 안전한 방법입니다.
import ast
ast.literal_eval("{'x':1, 'y':2}")
=> {'y': 2, 'x': 1}
eval ()
에 기반한 모든 솔루션은 위험하며, 악성 코드가 문자열 내부에 삽입되어 실행될 수 있습니다.
참조 페이지 https://stackoverflow.com/questions/13675942
반응형
'파이썬' 카테고리의 다른 글
파이썬 문자열을 길이별로 문자열로 분할 하시겠습니까? (0) | 2021.02.01 |
---|---|
파이썬 클래스 내부에 메서드를 장식하는 방법은 무엇입니까? (0) | 2021.02.01 |
파이썬 Is a Python list guaranteed to have its elements stay in the order they are inserted in? (0) | 2021.02.01 |
파이썬 python-dev 설치 오류 : ImportError : apt_pkg라는 모듈이 없습니다. (0) | 2021.02.01 |
파이썬 이동 평균 또는 실행 평균 (0) | 2021.02.01 |
댓글