杨jun坚 2020-04-04 19:00 采纳率: 0%
浏览 598
已结题

x[i] +=1 为何没有累加??

x = np.zeros(10)

x[[0,0]] = [4,6]

i = [3,3]

x[i] +=1

x # array([6., 0., 0., 1., 0., 0., 0., 0., 0., 0.])

x[[0,0]] = [4,6] 的结果是 x[0]为6

而x[i] +=1 的结果 x[3]为1,为何没有累加?

  • 写回答

1条回答 默认 最新

  • threenewbee 2020-04-04 20:14
    关注

    你估计认为
    x[[3,3]]+=1
    等价
    x[3]=x[3]+1
    x[3]=x[3]+1
    但是其实是
    x[3]=x[3]的原始值+1,同时x[3]=x[3]的原始值+1

    好比
    a,b=b,a
    是a=b的同时,b=a,也就是交换ab,而不是a=b,b=a(也就是原来的b),b不变


    自己理解下

    a = 1
    b = 2
    a,b=b,a
    print("a="+str(a) + ",b=" + str(b))
    

    a=2,b=1

    a = 1
    b = 2
    a,a=a,b
    print("a="+str(a) + ",b=" + str(b))
    

    a=2,b=2

    最后看这个

    a = 1
    a,a=a+1,a+1
    print("a="+str(a))
    

    a=2

    结果是2不是3

    自己领悟下吧,这就是语法这么规定的。

    评论

报告相同问题?

悬赏问题

  • ¥60 更换迈创SOL6M4AE卡的时候,驱动要重新装才能使用,怎么解决?
  • ¥15 让node服务器有自动加载文件的功能
  • ¥15 jmeter脚本回放有的是对的有的是错的
  • ¥15 r语言蛋白组学相关问题
  • ¥15 Python时间序列如何拟合疏系数模型
  • ¥15 求学软件的前人们指明方向🥺
  • ¥50 如何增强飞上天的树莓派的热点信号强度,以使得笔记本可以在地面实现远程桌面连接
  • ¥20 双层网络上信息-疾病传播
  • ¥50 paddlepaddle pinn
  • ¥20 idea运行测试代码报错问题