我正在尝试将字典形式的列表转换为实际字典。
这是用于刮网的工具。我曾尝试删除单个''
并将其设置为字典,但是我是编程新手,我认为我的逻辑在某种程度上已经过时。
我的列表的格式为
['"name":"jack"', '"address":"1234 College Ave"']
我正在尝试将一般形式转换为形式的字典
{"name":"jack", "address":"1234 College Ave"}
答案 0 :(得分:3)
您可以将其转换为字符串JSON表示形式,然后使用json.loads
。
>>> import json
>>> data = ['"name":"jack"', '"address":"1234 College Ave"']
>>> json.loads('{' + ', '.join(data) + '}')
{'name': 'jack', 'address': '1234 College Ave'}
答案 1 :(得分:0)
l = ['"name":"jack"', '"address":"1234 College Ave"']
d = {elem.split(":")[0][1:-1]:elem.split(":")[1][1:-1] for elem in l}
print(d)
答案 2 :(得分:0)
一种解决方法是在将每个字符串传递给json.loads之前对其进行修复。
inp = ['"name":"jack"', '"address":"1234 College Ave"']
import json
result = {}
for item in inp:
result.update(json.loads("{" + item + "}"))
print(result)
{'name': 'jack', 'address': '1234 College Ave'}
但是,理想情况下,您应该以更好的格式获取数据,而不必依赖于对数据的处理才能使用它。如果可以,请在“上游”解决此问题。