You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python中嵌套列表(list of lists)内用前序年份值替换0的实现

嵌套列表年份值替换解决方案

没问题,针对你给出的Names嵌套列表,我们可以通过简单的遍历逻辑,轻松把年份列(索引7)为0的元素替换成前一个子列表的年份值。下面是具体的实现方式:

核心思路

  • 从列表的第二个子元素开始遍历(第一个元素没有前置元素,不需要处理)
  • 逐个检查每个子列表的第8个元素(索引为7)
  • 如果该元素值为0,就用前一个子列表对应位置的年份值来覆盖它

代码实现

Names = [['Bassett', 'Richard', '1745-04-02', 'M', 'sen', 'DE', 'Anti-Administration', 1745], 
         ['Bland', 'Theodorick', '1742-03-21', 'M', 'rep', 'VA', '', 1742], 
         ['Burke', 'Aedanus', '1743-06-16', 'M', 'rep', 'SC', '', 0]]

# 从索引1开始遍历,因为索引0没有前一个元素
for idx in range(1, len(Names)):
    current_year = Names[idx][7]
    if current_year == 0:
        # 替换为前一个子列表的年份值
        Names[idx][7] = Names[idx-1][7]

# 验证结果
print(Names)

运行结果

执行这段代码后,Names列表会被更新为:

[['Bassett', 'Richard', '1745-04-02', 'M', 'sen', 'DE', 'Anti-Administration', 1745], 
 ['Bland', 'Theodorick', '1742-03-21', 'M', 'rep', 'VA', '', 1742], 
 ['Burke', 'Aedanus', '1743-06-16', 'M', 'rep', 'SC', '', 1742]]

可以看到第三个子列表里的0已经被成功替换成了前一个子列表的1742,完全符合你的需求。

内容的提问来源于stack exchange,提问作者MJP

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 09:17:43