Skip to main content
 首页 » 编程设计

python将列表字符串转换为列表列表

2025年05月04日24insus

<分区>

我正在寻找一种将字符串转换为列表列表的优雅方法。我正在从一个文本文件中读取它们,所以不能改变我接收字符串的格式。这里是一个示例字符串:

a = "[[1,2,3],[4,5,6],[7,8,9]]" 

我想把它转换成这样的:

c = [[1,2,3],[4,5,6],[7,8,9]] 

我能想到的唯一方法是有点笨拙,涉及使用 .split() 和 .replace() 的几个步骤

b = a.split('],[') 
for i in range(len(b)): 
    b[i] = b[i].replace('[','') 
    b[i] = b[i].replace(']','') 
 
b=[[x] for x in b] 
b = [float(x[0].split(',')) for x in b] 
 
c=[] 
for l in b: 
    n=[] 
    for x in l: 
        n.append(float(x)) 
    c.append(n) 

虽然这有效,但它令人厌恶且笨重。如果有人知道这样做的优雅方式,请告诉我。非常感谢