python - 为什么追加追溯链接两个列表中的值?
问题描述
我正在初始化一个列表,然后更新其中的值,但是我用于初始化行的变量也正在追溯更新- 可以这么说。
我希望这段代码能输出[['first', ''], ['', 'last']]
。如何更改我的代码以便输出?
array_row = ['', '']
array = []
# array = [['', '']]
array.append(array_row)
# array = [['first','']]
# array_row = ['first', ''] <---- !!! Why does array_row also get updated???
array[0][0] = 'first'
# array = [['first',''], ['first','']]
# array_row = ['first', '']
array.append(array_row)
# array = [['first','last'], ['first','last']]
# array_row = ['first', 'last'] <---- !!! Why does array_row also get updated???
array[1][1] = 'last'
# [['first', 'last'], ['first', 'last']]
print(array)
解决方案
推荐阅读
- keyboard - Ionic3 的键盘问题
- html - CSS + 图像不能在 github 页面上工作,但在本地工作
- android - 在具有多个值的 ValueAnimator 中添加延迟
- nexus3 - Init Eclipse Che 将图像从 Nexus 组存储库拉取到 docker hub
- python - Pandas dataFrame.nunique() : ("unhashable type : 'list'", 'occured at index columns')
- python - 如何在 PyQt4 中的 QListWidget 中制作同步滚动条
- json - Swift 4.1 JSON 到 Struct 然后到不同日期的数组
- jquery - jQuery将CSS类添加到选定的单选按钮
- string - 如何用另一个 [ELIXIR/ERLANG] 替换字符串中的第 n 个字符
- powershell - 带有 wmi 的复制项:找不到接受参数的位置参数