首页 > 解决方案 > 如何正确地将字符串转换为列表

问题描述

我有一个函数将消息作为字符串返回,如下所示:

 l = ['["sure","kkk"]', '["sure","ii"]']

我试图"'"通过迭代删除角色,但它对我不起作用。这是我的代码:

print([item.replace('\'["','"').replace('"]\'','"') for item in l])

有没有更好的方法来做到这一点,因为我想要这样的结果:

l = [["确定","kkk"], ["确定","ii"]]

标签: python-3.xstringlist

解决方案


这些是 JSON 编码的字符串,因此您应该为此使用jsonAPI,而不是尝试“自己”解析它:

import json

l = ['["sure","kkk"]', '["sure","ii"]']
l = [json.loads(s) for s in l]
print(l)  # [['sure', 'kkk'], ['sure', 'ii']]

也可以用map而不是列表理解来实现:

l = list(map(json.loads, l))

推荐阅读