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

Python调用自定义函数时无法向列表追加值问题求助

错误原因
  • 未初始化全局变量qwert:全局变量需要先定义初始值才能在函数内部修改,你没有提前给qwert赋值为空列表,不仅最终输出为空,正常运行还会触发NameError报错,你看到的空输出大概率是运行环境残留了之前定义的空qwert变量。
  • 追加逻辑方向颠倒:你写的qwe.append(qwert)是把qwert的内容追加到你生成的小列表qwe中,和你要实现的「把生成的列表追加到qwert」需求完全相反,全程没有对qwert做任何修改操作,它自然保持初始的空值。
修正后的代码
# 提前初始化全局列表
qwert = []

def func(n):
    global qwert
    qwe = [n]
    # 改为把生成的qwe追加到qwert中
    qwert.append(qwe)
    print('qwe=')
    print(qwe)
    print('\nqwert=')
    print(qwert)
    return 1

func(3)
func(4)
func(5)

print(qwert)

运行后最终输出qwert的结果就是你预期的[[3], [4], [5]]。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 08:39:03