weixin_42377016 2022-02-18 09:09 采纳率: 100%
浏览 31
已结题

关于python中List赋值的问题

学习python时,有发现如下问题,不是很明白其赋值原理,请各位帮忙解答一下,谢谢!
1.

img


如上代码

img

个人感觉"result"应该是“nameList”的初始数据,为什么将“nameList”数据修改后,“result”的数据也随之改变?
2.

img


如上代码

img

为什么“print(result)”的结果直接是“None”?

  • 写回答

3条回答 默认 最新

  • CSDN专家-sinJack 2022-02-18 09:13
    关注

    因为列表是引用数据类型,这是浅复制。
    浅复制分析:python列表的浅复制对于列表中存在可变的可迭代对象如列表,集合,字典这样的存在也是引用的原对象的地址空间,所以会一同改变。对于列表中存在的数值型数据浅复制会直接创建新的地址空间用以保存。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 2月26日
  • 已采纳回答 2月18日
  • 创建了问题 2月18日