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

Python变量自增问题:如何让初始值为0的n累加1后输出1?

如何让变量n累加1后输出1

你之前的代码问题在于:sum()和reduce()函数只会返回计算后的新值,不会直接修改原变量n。因为Python的整数是不可变类型,这些函数计算时会生成新的整数对象,原变量n仍然指向初始的0,所以print(n)输出还是0。

正确的修改方式:

  • 最简洁的一行代码(推荐):
    n = 0
    n += 1  # 直接对n进行原地累加
    print(n)  # 输出1
    
  • 如果一定要用sum函数:
    n = 0
    n = sum([n, 1])  # 将sum的计算结果重新赋值给n
    print(n)  # 输出1
    
  • 如果用reduce函数(注意需要先导入模块):
    from functools import reduce
    from operator import add
    
    n = 0
    n = reduce(add, [n, 1])  # 将reduce的计算结果重新赋值给n
    print(n)  # 输出1
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.08 03:15:54