我的问题很简单我想将几个列表转换为列表列表:
以下是数据示例:
['DDD1', 'EEE1', 'AAA1']
['DDD2', 'EEE2', 'AAA2']
['DDD3', 'EEE3', 'AAA3']
['DDD4', 'EEE4', 'AAA4']
我试过这段代码:
lignes = data.split('\n')
lst =[[i] for i in lignes]
print(lst)
它给了我这个结果:
[["['DDD1', 'EEE1', 'AAA1']"],
["['DDD2', 'EEE2', 'AAA2']"],
["['DDD3', 'EEE3', 'AAA3']"],
["['DDD4', 'EEE4', 'AAA4']"]]
我想要的结果是:
[['DDD1', 'EEE1', 'AAA1'],
['DDD2', 'EEE2', 'AAA2'],
['DDD3', 'EEE3', 'AAA3'],
['DDD4', 'EEE4', 'AAA4']]
如果您有任何想法我可以如何解决这个问题,请帮助。谢谢!
答案 0 :(得分:1)
假设您的数据只是表格中的长字符串:
data = """['DDD1', 'EEE1', 'AAA1']
['DDD2', 'EEE2', 'AAA2']
['DDD3', 'EEE3', 'AAA3']
['DDD4', 'EEE4', 'AAA4']"""
首先,您可以将其拆分为单独的行,然后再次使用拆分以一种格式输出,该格式允许您从每一行创建列表,最后追加到您要创建的列表:
data_splt = data.split('\n')
output = []
for i in range(len(data_splt)):
temp = data_splt[i].split("'")[1:6:2]
output.append(temp)
输出:
[['DDD1', 'EEE1', 'AAA1'],
['DDD2', 'EEE2', 'AAA2'],
['DDD3', 'EEE3', 'AAA3'],
['DDD4', 'EEE4', 'AAA4']]
编辑: 甚至更好,使用列表理解:
data_splt = data.split('\n')
new = [data_splt[i].split("'")[1:6:2] for i in range(len(data_splt))]