Python中如何将类字典列表结构字符串转换为单字典字符串元素列表
转换实现方案
整个逻辑不需要手动做字符串切割匹配,依托Python内置的JSON处理能力就能稳定实现,避免因为原始字符串的换行、空格格式变动导致解析失效:
核心步骤
- 首先识别
parser_text的本质是标准格式的JSON字符串,不需要依赖第三方库处理,直接通过内置json模块解析成Python原生的列表结构,列表内每个元素对应单条数据的字典对象。 - 遍历列表内的每个字典元素,按照目标格式要求将单个字典序列化为字符串。
- 把所有序列化后的字符串拼接组装成最终要求的列表结构。
可直接复用的代码
在原有代码拿到parser_text之后,追加以下逻辑即可:
import json # 解析原始JSON字符串为Python原生列表 raw_data_list = json.loads(parser_text) # 按要求格式序列化每个字典元素,生成目标列表 target_result = [ json.dumps(item, separators=(", ", ": "), ensure_ascii=False) for item in raw_data_list ]
关键参数说明
- 用
json.dumps的separators参数控制输出格式:设置为(", ", ": ")时,键与值的分隔符为:,不同键值对的分隔符为,,和要求的目标字符串格式完全匹配,不会出现默认序列化的紧凑格式问题。 - 加
ensure_ascii=False是为了兼容可能存在的非英文字符内容,避免特殊字符被转义为Unicode编码。
冗余代码提醒
原有代码中使用BeautifulSoup处理响应的步骤是多余的:这个金融接口返回的内容本身就是纯JSON文本,不是HTML格式的网页内容,BeautifulSoup在这里仅仅是把原始响应文本提取了出来,没有做任何有效加工,完全可以去掉这部分逻辑,直接用response.json()方法一步拿到结构化数据,减少不必要的依赖。
内容的提问来源于stack exchange,提问作者C.C
相关产品推荐
相关产品推荐

