【问题标题】:Creating Dictionary from dictionary formatted string? using python从字典格式的字符串创建字典?使用蟒蛇
【发布时间】:2020-03-17 15:00:57
【问题描述】:

假设我有一个字典列表,看起来像 这是字符串格式的

“[{key1:{key11:val11,key12:val12}},{key2:{key21:val21,key22:val22}}]”

如何将此字符串(以字典格式)更改为实际字典?同时保持格式?

【问题讨论】:

标签: python string dictionary parsing


【解决方案1】:

这不是 json 数据,也不是 dict,它是一个集合中的 2 个单独的 dict,甚至不正确。虽然您可以使用ast.literal_eval 将两个字典作为元组获取,但如果您正确格式化它可以使用re 完成

data = "{{key1:{key11:val11,key12:val12}},{key2:{key21:val21, key22:val22}}}"
dicts = ast.literal_eval(re.sub(r'(\w+)', r'"\1"', data [1:-1]))

结果:

({'key1': {'key11': 'val11', 'key12': 'val12'}}, {'key2': {'key21': 'val21', 'key22': 'val22'}})

【讨论】:

  • 嗨 Jab,如果它的格式是“[{key1:{key11:val11,key12:val12}},{key2:{key21:val21, key22:val22}}] “?每个说的字典列表
  • 你试过了吗?
  • 您在评论中输入的内容对我来说效果很好。
  • 您只需要删除切片即可将其作为列表获取
  • 如果你对字符串进行切片,你还没有得到字符串吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-12-01
  • 2018-11-22
  • 1970-01-01
  • 2014-04-19
  • 2016-12-02
  • 2021-08-21
相关资源
最近更新 更多