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

Python函数返回列表后添加至列表的结果不符合预期求助

问题分析

你的代码里,something()返回的是完整列表['note'],而b_list.append(c)会把这个列表作为单个元素添加到b_list中,最终得到嵌套列表[['note']],和预期不符。

解决方案

有两种常用方法可以得到你想要的结果:

方法1:使用extend()替代append()

extend()会将传入的可迭代对象(比如列表)中的每个元素逐个添加到目标列表里,而非把整个对象作为单个元素添加。修改后的代码:

def something():
    a_list = []
    a_list.append("note")
    return a_list
def main():
    b_list = []
    c = something()
    b_list.extend(c)  # 替换为extend
    print(b_list)
main()

方法2:直接合并列表

用+=操作符直接合并两个列表,效果和extend()一致:

def something():
    a_list = []
    a_list.append("note")
    return a_list
def main():
    b_list = []
    c = something()
    b_list += c  # 直接合并列表
    print(b_list)
main()

运行上述任意一种修改后的代码,都会输出['note'],符合预期。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.20 17:09:33