toolkit, environment, 

ast - literal_eval 에러 기록

ast - literal_eval 에러 기록

ast - literal_eval 에러 기록

ast의 literal_eval을 사용하면 문자열 형태의 자료형을 파이썬 자료형으로 바꿔줄 수 있다.

>>> from ast import literal_eval
>>> test_dict = "{'a': 1, 'b': 2}"
>>> literal_eval(test_dict)
{'a': 1, 'b': 2}

오늘 ValueError: malformed node or string: <ast.Name object at 0x7f2a381c2fd0> 이 에러가 났다.

{..., 'is_self':false, ...}

이런 구조였는데, 왜 에러가 나는지 몰랐는데 literal_eval말고 json.loads를 사용하면 에러 없이 동작한다.

이유는 literal_eval과 json의 포맷이 달라서 그러는데 위 예시에서 false를 False로 수정해주면 literal_eval로도 동작한다.

Subscribe to SOOFTWARE

Get the latest posts delivered right to your inbox