我有一个从 csv 文件导入的巨大列表。这个列表有超过 40,000 个字符串元素。我想把每个元素分成一个独立的列表。
这是我列表中的摘录:
['090-102 XX.Abcdefg;Female;95 y más años;1985;24\n',
'090-102 XX.Abcdefg;Female;95 y más años;1984;52\n',
'090-102 XX.Abcdefg;Female;95 y más años;1983;60\n',
'090-102 XX.Abcdefg;Female;95 y más años;1982;61\n',
'090-102 XX.Abcdefg;Female;95 y más años;1981;63\n',
'090-102 XX.Abcdefg;Female;95 y más años;1980;48\n']
我希望列表中的每个项目都被分成一个新列表,如下所示:
[['090-102 XX.Abcdefg,Female,95 y más años,1985,24\n']
['090-102 XX.Abcdefg,Female,95 y más años,1984,52\n']
['090-102 XX.Abcdefg,Female,95 y más años,1983,60\n']
['090-102 XX.Abcdefg,Female,95 y más años,1982,61\n']
['090-102 XX.Abcdefg,Female,95 y más años,1981,63\n']
['090-102 XX.Abcdefg,Female,95 y más años,1980,48\n']]
而且我还必须将新元素(来自其他两个列表的元素)插入到新的分隔子列表中:
other_list = ['XX','XX','XX','XX','XX','XX']
other_list2 = [20, 20, 20, 20, 20, 20]
所以我的最终输出如下所示:
[['090-102 XX', 'XX', 20, 'Abcdefg,Female,95 y más años, 1985, 24\n']
['090-102 XX', 'XX', 20, 'Abcdefg,Female,95 y más años, 1985, 24\n']
['090-102 XX', 'XX', 20, 'Abcdefg,Female,95 y más años, 1985, 24\n']
['090-102 XX', 'XX', 20, 'Abcdefg,Female,95 y más años, 1985, 24\n']
['090-102 XX', 'XX', 20, 'Abcdefg,Female,95 y más años, 1985, 24\n']
['090-102 XX', 'XX', 20, 'Abcdefg,Female,95 y más años, 1985, 24\n']]
我不知道是否应该先将项目附加到巨大的列表中,然后再将其分成子列表。任何帮助将不胜感激。
答案 0 :(得分:1)
我假设您所有的列表长度相同,否则,您必须先填补空白。我看到您正在尝试从 3 个(或更多)列表中创建一个新列表,并且新列表的所有元素都具有相同的格式。您可能首先通过以下方式将第一个列表中的项目拆分为:
newList1=[]
for i in list11:
newList1.append(i.split('.'))
这会将列表中的每个元素转换为一个列表,其中第一项是点之前的任何内容,第二项是点之后的任何内容。然后将此列表添加到 newList1
变量中。
之后就是一个简单的for循环:
a = [['xx','xx'], ['yy', 'yy'] , [ 'zz', 'zz']]
b = [1,2,3]
c = [0, 00, 000]
newList2 = []
for i in range(len(a)):
newList2.append(a[i][0]+str(b[i])+a[i][1]+str(c[i])) #adjust to your format