python - 在列表中的列表中添加元素
问题描述
我有一个列表列表,我想只在其中一个列表中添加一个元素,但它被添加到任何地方。你可以在下面找到我的代码
repartition_labels = [[]]*3
repartition_labels[2].append(2)
我得到的结果是
[[2], [2], [2]]
我想得到结果
[[], [], [2]]
我已经尝试过插入和扩展功能,但没有解决问题
解决方案
使用repartition_labels = [[]]*3
,您将生成一个列表,其中包含对同一对象的 3 个引用。
当您更改该对象时,所有引用都将显示(相同)更新的对象。
推荐阅读
- caching - 带有 RequestContext 构造函数的 FatalError
- jasmine - Angular cli:如果通过“npm run”运行,ng 测试会得到不同的结果
- python - Python BeautifulSoup4 不嵌套/迭代
- javascript - 使用调用自身的循环函数而不是嵌套循环来遍历数组对象的对象,但会遇到异步问题
- python - 如何从字符串的 DataFrame 列中获取唯一单词?
- python - Python 差异 Lambda 函数和普通函数
- c++ - 是否有任何内置的 hashmap 函数来处理 c++ 中的值输入?
- ruby-on-rails - PG::UndefinedFunction: 错误: 运算符不存在: text = boolean
- javascript - 预先检查的输入框没有被序列化
- c# - 如何在 WPF UserControl 中实现自定义接口并避免动态转换?