关于python浅拷贝问题
[[0]*3]*3,这种方式构建二维数组会出现浅拷贝问题,但是[0]*3却不会。感觉这两种方式是一样的,唯一的区别是[[0]*3]*3多套了一层。
举例如下:
栗1
>>> a = [[0]*3]*3
>>> a
[[0, 0, 0], [0, 0, 0], [0, 0, 0]]
>>> a[0][0]=1
>>> a
[[1, 0, 0], [1, 0, 0], [1, 0, 0]]
栗2
>>> a = [0]*3
>>> a
[0, 0, 0]
>>> a[0] = 1
>>> a
[1, 0, 0]
举例如下:
栗1
>>> a = [[0]*3]*3
>>> a
[[0, 0, 0], [0, 0, 0], [0, 0, 0]]
>>> a[0][0]=1
>>> a
[[1, 0, 0], [1, 0, 0], [1, 0, 0]]
栗2
>>> a = [0]*3
>>> a
[0, 0, 0]
>>> a[0] = 1
>>> a
[1, 0, 0]
全部评论
相关推荐
点赞 评论 收藏
分享
点赞 评论 收藏
分享
2025-12-31 13:48
门头沟学院 产品经理
一天代码十万三:但有没有可能,想进高质量实习也需要实习经历?有时候多段实习就是为了找到更好的实习,并不一定是为了写到简历 点赞 评论 收藏
分享