gpt4 book ai didi

Python:字符串 [ [k1:v1, k2:v2], [k3:v3] ] 到对象

转载 作者:太空宇宙 更新时间:2023-11-04 05:25:27 25 4
gpt4 key购买 nike

我遇到了一个输出以下内容的应用程序

[[_type:logs, _id:AVY0ofxOHiyEPsw_vkZS, _index:firewall-all-2016.07.29, _score:13.445344], [_type:logs, _id:AVY1EI1z79siNC3TEi7P, _index:firewall-all-2016.07.29, _score:13.445344]]

我想将此文本解析为一个可迭代对象。但是使用 ast.literal_eval 的标准方法不喜欢输入。

在我开始研究 str 替换等之前,还有什么我可以尝试的吗...

谢谢

最佳答案

这个怎么样:

import re

data = "[[_type:logs, _id:AVY0ofxOHiyEPsw_vkZS, _index:firewall-all-2016.07.29, _score:13.445344], [_type:logs, _id:AVY1EI1z79siNC3TEi7P, _index:firewall-all-2016.07.29, _score:13.445344]]"

parsed_1 = re.findall("\[(.*?)\]", data[1:-1])

parsed_list = []
for line in parsed_1:
parsed_dict = {}
for record in line.split(","):
k, v = record.split(":")
parsed_dict[k] = v
parsed_list.append(parsed_dict)

print(parsed_list)

输出是字典列表,您可以通过多种方式迭代它。

关于Python:字符串 [ [k1:v1, k2:v2], [k3:v3] ] 到对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38913684/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com