当你用如下方法创建一个python二维数组时

memo = [[1] * 3] * 4

于是你得到

memo = [ [1, 1 ,1],[1, 1 ,1],[1, 1 ,1],[1, 1 ,1]> 这里是引用]

当你修改memo当个元素时

memo[2,1] = 0

你会发现memo整列数字都变换了

memo = [[1,0,1,1],[1,0,1,1],[1,0,1,1],[1,0,1,1]]

有一篇文章说

这是因为 [[0]*5]*5 表示的是指向 [0]*5 这个列表的引用,所以当你修改某一个值时,整个列表都会被改变
https://blog.csdn.net/zzc15806/article/details/82629406

大概意思是指这样子初始化的二维数组的引用不同,需要修改二维数组初始化,可以用**print(id())**来验证他们的引用地址
解决方法:列表生成法

test = [[0] * n for _ in range(m)]
详细地址:https://blog.csdn.net/qq_1290259791/article/details/81009164

python二维数组单个元素赋值相关推荐

  1. python给矩阵赋值_解决Python二维数组赋值问题

    解决Python二维数组赋值问题 当我们采用s=[[0]*3]*2初始化一个数组,然后对s[0][0]进行赋值,改变的是第一列所有的值.因为用s = [[0]*3]*2 初始化数组,他表示的是指向这个 ...

  2. python 求出4行5列的二维数组周边元素之和

    题目:求出4行5列的二维数组周边元素之和 代码: import random x = [[random.randint(1,10)for j in range(5)]for i in range(4) ...

  3. python统计数组元素个数_统计二维数组里元素的个数

    记录一下一个问题的解决,里面涉及几个函数的用法,当作复习啦. 先说明一下问题.数据表里面的字段 content 存储了一个以逗号分割的字符串,最大有20个数,最大数字为40.比如3,24,33,40类 ...

  4. [Python] 二维数组初始化实践

    背景 参考博客Python二维数组初始化问题_NobiShinnosuke的博客-CSDN博客_python 二维数组初始化,文中提到正确的初始化方式是a = [[0 for j in range(n ...

  5. 正确创建Python二维数组

    Java创建二维数组 我门来看看Java创建二维数组的格式: type arrayName[ ][ ]; type [ ][ ]arrayName; 比如: int [ ][ ] arr=new in ...

  6. python三维图切片提取_详解Python二维数组与三维数组切片的方法

    如果对象是二维数组,则切片应当是x[:]的形式,里面有一个冒号,冒号之前和之后分别表示对象的第0个维度和第1个维度: 如果对象是三维数组,则切片应当是x[::],里面有两个冒号,分割出三个间隔,三个间 ...

  7. C++二维数组的初始化赋值及示例

    C++二维数组可以看作一个表格,横向为表格的行,纵向为表格的列,数组定义时行号在前,列号在后.二维数组的定义格式为: 数据类型  数组名[常量行表达式][常量列表达式]. 二维数组的元素是按先行后列的 ...

  8. python二维数组自定义排序

    二维数组排序 python二维数组自定义排序 基础二维数组排序 二维数组自定义排序 python二维数组自定义排序 基础二维数组排序 y = sorted(x, key = lambda x:(x[0 ...

  9. python二维数组切片举例

    python二维数组切片举例 案例数据 data[] 为下面的二维数组 [1, 2, 3] [4, 5, 6] [7, 8, 9] 说明: 逗号","分隔各个维度,":& ...

最新文章

  1. Matlab数据的可视化 -- 简易线性函数图
  2. 根据windows域名找ip
  3. 《当程序员的那些狗日日子》(十二)公司里的靓丽风景
  4. Colder框架硬核更新(Sharding+IOC)
  5. ssm框架里面前端拿HTML写,ssm框架引入Vue,声明式渲染,标签的href拼接字符串
  6. Taro+dva+Typescript 搭建微信小程序架构
  7. linux系统计时,关于linux:计算机系统中的计时机制
  8. cocos2dx-lua 骨骼动画spine使用心得(cocos2dx版本 3.17 spine版本3.6.53)
  9. putty怎么更改为中文_Putty怎么样设置显示中文 设置Putty显示中文
  10. 论文的中期检查表应该怎么写?
  11. 项目管理:项目开发类型、模型、流程以及案例介绍
  12. 51nod 1509 加长棒 插板法
  13. 2019数据结构考研复习指导习题代码(王道论坛)
  14. python禅语_42:对象、类、以及从属关系
  15. 关于解决win10的 tencent qqmail plugin 卸载不了的问题
  16. 怎么做个修改ip服务器,自己做一个服务器怎么固定ip地址
  17. oracle ora 02437,给表追加主键-----报错ORA-02437: 无法验证 (DENGCHAO.TEST) - 违反主键
  18. 计算机如何启动远程服务,Win7如何开启远程桌面服务
  19. 【20190427】【Python】MOOC学习中的小代码总结(已完结)
  20. 创建ROS工作空间,ROS功能包(Package)

热门文章

  1. T检验与Z检验的区别
  2. 微信视频号留给微商的最后机会,微商要不要做视频号呢?
  3. 详细讲解CISCO ACS AAA认证(A):
  4. agc003_c BBuBBBlesort!
  5. 苹果怎么换自定义铃声?不用电脑也能换!
  6. iOS 11 自适应布局教程: 开始
  7. Outlook 解决“附件大小超出了允许的范围”
  8. Java实习生求职应具备哪些能力?
  9. 苹果A10处理器内核图曝光:找不到小核心CPU
  10. javaweb实现qq邮箱