Python JSON“column1 = value1; column2 = value2”到{“column1”:“value1”,“column2”:“value2”}

时间:2017-02-25 11:43:05

标签: python json text

一个非常基本的要求。 我想从这种格式转换:

"column1=value1;column2=value2" 

到这种格式(JSON):

{"column1":"value1","column2":"value2"}

我们将非常感谢Python中的任何最佳方法。

提前致谢。

2 个答案:

答案 0 :(得分:2)

使用正则表达式

import re

REGEX = r"([^=;]+)=([^=;]+)"
finder = re.compile(REGEX)

s = "column1=value1;column2=value2"

matches = re.finditer(finder, s)

d = {}
for match in matches:
    key = match.group(1)
    val = match.group(2)
    d[key] = val

print(d)

输出:

{'column2': 'value2', 'column1': 'value1'}

答案 1 :(得分:1)

如果你真的想要将你的字符串解析为JSON,你应该尝试这样的事情:

import json # simplejson if you use a python version below 2.6 

string = u'{"column1":"value1", "column2": "value2"}'
json = json.loads(string)

如果你想将你的字符串解析为字典,你应该试试:

import ast

string = u'{"column1":"value1", "column2": "value2"}'
ast.literal_eval(string)=>{'column1': 'value1', 'column2': 'value2'}