将字符串解析为Dictionary

时间:2014-06-22 10:18:25

标签: python dictionary

我有一个字符串肯定是字典。 我需要解析它并将其存储为python中的字典。

我试过的是这个:

myObj={}
tmp=""
if ':' in line:
    key,value = line.split(':')
    key = key.strip('"')
    value = value.lstrip(' ').rstrip(',')
    if value == '{':
        tmp += key + '.'
    if value == '}':
        tmp = ''
    if(value!="{"):
        myObj[tmp + key] = value

逐行阅读并解析它。但是我遇到了不同格式的问题。

对于E.G。

        {
        "id": 1,
        "name": "Foo",
        "price": 123,
        "tags": [ "Bar", "Eek" ],
        "stock": {
            "warehouse": 300,
            "retail": 20
        }
    }

不使用eval或任何内置函数或库,如json。我可以在这里使用正则表达式吗? 我该怎么做呢?

1 个答案:

答案 0 :(得分:2)

你有JSON数据,使用json library来解析它:

import json

data = json.loads(yourstring)

Python附带电池,不要重新发明轮子。