我有一个包含年份[1745,1742,1743,1730,1739]
的列表和另一个嵌套列表
[['Bassett', 'Richard', '1745-04-02', 'M', 'sen', 'DE', 'Anti-Administration']]
我正在尝试使用列表理解将列表的第一年值附加到嵌套列表的最后一位。
required output:
[['Bassett', 'Richard', '1745-04-02', 'M', 'sen', 'DE', 'Anti-Administration', 1745],
['Bland', 'Theodorick', '1742-03-21', 'M', 'rep', 'VA', 'Pro-Administration', 1742]]
我尝试过,但无法弄清楚。谢谢。
答案 0 :(得分:3)
您可以使用zip
将两个列表配对:
y = [1745,1742,1743,1730,1739]
l = [['Bassett', 'Richard', '1745-04-02', 'M', 'sen', 'DE', 'Anti-Administration'],
['Bland', 'Theodorick', '1742-03-21', 'M', 'rep', 'VA', 'Pro-Administration']]
print([s + [n] for s, n in zip(l, y)])
这将输出:
[['Bassett', 'Richard', '1745-04-02', 'M', 'sen', 'DE', 'Anti-Administration', 1745], ['Bland', 'Theodorick', '1742-03-21', 'M', 'rep', 'VA', 'Pro-Administration', 1742]]
答案 1 :(得分:1)
列表理解会创建一个 new 列表。如果要更改现有列表,请使用list.append()
:
lst1 = [1745,1742,1743,1730,1739]
lst2 = [['Bassett', 'Richard', '1745-04-02', 'M', 'sen', 'DE',
'Anti-Administration'],
['Bland', 'Theodorick', '1742-03-21', 'M', 'rep', 'VA',
'Pro-Administration']]
for year, data in zip(lst1, lst2):
data.append(year)