如何将字符串格式的嵌套列表转换为Python列表类型?
解决方案
方法1:使用ast.literal_eval(推荐)
这是最安全可靠的方式,专门用于解析Python字面量格式的字符串,不会执行任意代码,完美适配你的场景:
import ast data = "[['asdaddas','asdasdasd'],['asdawdasd','asdwdefe']]" converted_list = ast.literal_eval(data) # 验证结果 print(type(converted_list)) # 输出: <class 'list'> print(converted_list) # 输出: [['asdaddas', 'asdasdasd'], ['asdawdasd', 'asdwdefe']]
方法2:使用json模块(需预处理字符串)
JSON语法要求字符串用双引号,所以先把原字符串里的单引号替换成双引号,再用json.loads解析:
import json data = "[['asdaddas','asdasdasd'],['asdawdasd','asdwdefe']]" # 替换单引号为双引号,适配JSON格式 formatted_data = data.replace("'", '"') converted_list = json.loads(formatted_data) # 验证结果 print(type(converted_list)) # 输出: <class 'list'> print(converted_list) # 输出: [['asdaddas', 'asdasdasd'], ['asdawdasd', 'asdwdefe']]
注意:如果你的字符串中包含双引号或者转义的单引号,这种替换方式可能会出错,因此优先推荐方法1。
内容的提问来源于stack exchange,提问作者Piyush Jain
相关产品推荐
相关产品推荐

