Computer >> Computer tutorials >  >> Programming >> Python

How to convert a string to dictionary in Python?


We can use ast.literal_eval() here to evaluate the string as a python expression. It safely evaluates an expression node or a string containing a Python expression.The string or node provided may only consist of the following Python literal structures: strings, numbers, tuples, lists, dicts, booleans, and None. For example: 

 >>>import ast
>>>x = ast.literal_eval("{'foo' : 'bar', 'hello' : 'world'}")
>>>type(x)
<type'dict'>
 

Dictionaries can also be seen as JSON strings. Thus we can use the json module to convert a string to dict as well. For example,

 >>>import json
>>>x = json.loads("{'foo' : 'bar', 'hello' : 'world'}")
>>>type(x)
<type'dict'>