当前位置: 首页 > news >正文

python初始化矩阵相关

做算法题经常需要初始化一个二维的dp数组
下面两种方法是最常用的

matrix = [[0]*n]*n
matrix = [[0]*n for _ in range(n)]

以前经常混用也没发现什么问题,直到昨天debug的时候发现第一种初始化之后对矩阵进行赋值时混乱的,比如matrix[0][1]=2会导致所有行的第二列都变成2。
于是就发现了背后的原因:
第一种初始化方法创建矩阵时使用了相同的子列表对象。在Python中,使用 [0] * n 这样的方式创建子列表时,实际上是对相同的子列表对象的引用。因此,当你修改其中一个子列表的元素时,其他子列表也会受到影响。
为了避免这种问题,可以使用列表生成式来创建,也就是第二种方法,确保每个子列表都是独立的对象。

下面这张图就非常清晰易懂啦
网址:pythontutor
在这里插入图片描述

相关文章:

  • Flask使用线程异步执行耗时任务
  • 【keepalived】高可用神器,实现应用的自动主备切换
  • 【网络奇缘】- 计算机网络|分层结构|深入学习ISO模型
  • 怎么检测电脑电源?电脑电源检测系统软件如何助力?
  • 云轴科技ZStack助力龙芯打造IT产业新生态
  • DAPP开发【11】IPFS星际文件管理系统
  • 分享一个Python网络爬虫数据采集利器
  • InST论文复现
  • python进行文件批量命名
  • Istio可观测性
  • leetcode 1658. 将 x 减到 0 的最小操作数(优质解法)
  • Mac卸载、安装Python
  • 【带头学C++】----- 九、类和对象 ---- 9.1 类和对象的基本概念----(9.1.4---9.1.6)
  • Nginx实现(动静分离)
  • python实现一个计算器
  • [译]前端离线指南(上)
  • 002-读书笔记-JavaScript高级程序设计 在HTML中使用JavaScript
  • 5分钟即可掌握的前端高效利器:JavaScript 策略模式
  • Cumulo 的 ClojureScript 模块已经成型
  • ES6系统学习----从Apollo Client看解构赋值
  • js递归,无限分级树形折叠菜单
  • leetcode98. Validate Binary Search Tree
  • PHP的类修饰符与访问修饰符
  • vue从创建到完整的饿了么(11)组件的使用(svg图标及watch的简单使用)
  • 不发不行!Netty集成文字图片聊天室外加TCP/IP软硬件通信
  • 函数式编程与面向对象编程[4]:Scala的类型关联Type Alias
  • 力扣(LeetCode)56
  • 删除表内多余的重复数据
  • 中文输入法与React文本输入框的问题与解决方案
  • scrapy中间件源码分析及常用中间件大全
  • #define
  • #LLM入门|Prompt#1.7_文本拓展_Expanding
  • (3)STL算法之搜索
  • (4) openssl rsa/pkey(查看私钥、从私钥中提取公钥、查看公钥)
  • (DenseNet)Densely Connected Convolutional Networks--Gao Huang
  • (java)关于Thread的挂起和恢复
  • (poj1.3.2)1791(构造法模拟)
  • (PWM呼吸灯)合泰开发板HT66F2390-----点灯大师
  • (超详细)2-YOLOV5改进-添加SimAM注意力机制
  • (二)什么是Vite——Vite 和 Webpack 区别(冷启动)
  • (二)学习JVM —— 垃圾回收机制
  • (机器学习-深度学习快速入门)第三章机器学习-第二节:机器学习模型之线性回归
  • (五)Python 垃圾回收机制
  • (一一四)第九章编程练习
  • (转)es进行聚合操作时提示Fielddata is disabled on text fields by default
  • (转)负载均衡,回话保持,cookie
  • .net FrameWork简介,数组,枚举
  • .NET I/O 学习笔记:对文件和目录进行解压缩操作
  • .NET 命令行参数包含应用程序路径吗?
  • .NET6 开发一个检查某些状态持续多长时间的类
  • .NET6 命令行启动及发布单个Exe文件
  • .考试倒计时43天!来提分啦!
  • /etc/skel 目录作用
  • [ vulhub漏洞复现篇 ] Celery <4.0 Redis未授权访问+Pickle反序列化利用
  • [1525]字符统计2 (哈希)SDUT