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

Python中如何提取嵌套列表首尾元素生成一维新列表?

嵌套列表首尾元素提取代码修正

你的代码当前输出二维列表的原因是:每次循环都把子列表的首尾元素打包成一个新列表,再用append()添加到结果中,导致结果里嵌套了子列表。要得到一维列表,需要将首尾元素分别添加到结果列表,而不是添加一个包含两个元素的列表。

方法一:修改循环内的添加逻辑

直接对首尾元素分别调用append():

def first_and_last(l):
    result = []
    for x in l:
        result.append(x[0])
        result.append(x[-1])
    return result

fl = first_and_last([[True, True, False], ['a', 'b', 'z']])
print(fl)  # 输出: [True, False, 'a', 'z']

方法二:使用列表推导式简化代码

用双层列表推导式直接生成一维结果,写法更简洁:

def first_and_last(l):
    return [elem for sublist in l for elem in [sublist[0], sublist[-1]]]

fl = first_and_last([[True, True, False], ['a', 'b', 'z']])
print(fl)  # 输出: [True, False, 'a', 'z']

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 13:01:43