我有一个列表 [i],其中包含 20 个其他列表 [j],在该列表中我有其他列表 [k],其中包含 96 个元素。我正在尝试将该列表添加到另一个包含 96 个元素的列表。我得到了正确的结果,但是列表中列表中列表的格式不再存在,我只有一个包含整个结果的列表。要获得正确的结果但仅在一个列表中,则代码如下:reslist = []for i in range(len(listi)): for j in range(len(listi[i])): for k in range(96): reslist.append(listi2[k]+listi[i][j][k]) 就像我说的,这给了我一个正确的结果,但只是在一个列表中。我试过像这样做更多的列表:reslist = []for i in range(len(listi)): reslist.append([]) for j in range(len(listi[i])): for k in range(96): reslist[i].append(listi2[k]+listi[i][j][k]) 然后我将 reslist[i] 与旧的 20 相邻,但我得到的 reslist[j] 比它应该的大得多。我正在寻找的格式与列表的格式相同,内部有 3 个列表,每个列表有 96 个元素。我还有其他问题,因为不需要制作新列表,更理想的是可能只将 list2[k] 添加到 list[k] 元素。我添加了列表的图片,我也想添加元素。总之:我有 2 个列表。选项 1:不是制作新列表,而是将列表 2 的元素添加到列表 1。(我在代码中的解决方案是制作一个新列表)列表 1 在 20 个列表中有 20 个列表和 x 个列表,然后是 96 个元素。列表 2 只有 96 个元素。所以:list[k] = 2.5 和 list[i][j][k] 有 1 那么列表中的新值应该是 list[i][j][k] =3.5 并且到列表中的所有元素. 我希望这是可以理解的。
1 回答

HUWWW
TA贡献1874条经验 获得超12个赞
根据您的帖子,现有的列表结构是:
list1
- 0
- 0 - [.....96......]
- 1 - [.....96......]
- 2 - [.....96......]
|
- 1
- 0 - [.....96......]
- 1 - [.....96......]
- 2 - [.....96......]
|
- 2
- 3
- 4
|
- 19
list2 - [.....96......]
目标是:
复制list1到新列表
在新列表中,对于最低级别子列表中的每个元素,添加来自的匹配元素list2
此代码应该适用于此。
# create new list for totals
lstNew = copy.deepcopy(list1)
# process adds
for e1 in lstNew: # 20 elements
for e2 in e1: # each sublist
for i in range(len(e2)): # 96 elements
e2[i] += lists[i] # add element from list2
print(lstNew)
添加回答
举报
0/150
提交
取消