您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Python列表混乱

Python列表混乱

您对复制地址的直觉是正确的。像这样思考:

sub_list = [0] * 10
a_list = [sub_list] * 10

代码实际上与您上面发布的代码等效。这意味着您实际上sub_list在更改的任何元素时都在更改同一列表a_list。您甚至可以通过输入以下内容来确保:

a_list = [[0] * 10] * 10
for n in a_list:
    print id(n)

并且每个元素都会显示相同的内容。为了解决这个问题,您应该使用:

a_list = [[0] * 10 for _ in range(10)]

为了为的每个元素创建一个新的子列表a_list

python 2022/1/1 18:44:29 有289人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶