由python生成矩阵引发的列表 * 思考

简介: 在python中,如何构建矩阵呢,我们一般都想到用列表去实现吧。于是染念便使用列表的特性快速生成

在python中,如何构建矩阵呢,我们一般都想到用列表去实现吧。

于是染念便使用列表的特性快速生成

# 复制
l=[[0]*n]*n

的确生成了

2764606828.png

然而这种方法有种弊端。

我们先了解下*的作用

*用于重复列表,或者说是复制

使用切片获取,每个元素的地址是一样的

但这又不同,

当我们去改变l[0][4]的时候,只有l[1][4]`l2`l[4][4]的元素发生改变,而且地址也发生变化,这4个仍然相同,却与其它元素的地址不同了。

那么为什么要变不全部一起变呢?因为前面说到每个地址都一样呢。

我认为是*的作用,你瞧,最外圈也乘了n,也就是说,这些也要复制,我们的确要改变0,4的值,但是我要复制,再给你复制n-1遍,于是产生了这样的局面。

但如果是[0]*5,虽然创建的元素地址一样,但是改变一个值,其它元素不一样,而上面改变就是因为外圈的✖,造成这样的局面

那么,我们该如何去创建一个矩阵呢?

  1. 有numpy这个包
  2. 但是在比赛中常常都是断网,而且不保证这个包安装了,所以比较推荐大家自己去生成
    方法很简单:
[[0 for i in range(col)] for j in range(row)]

477611628.png

目录
相关文章
WK
|
11天前
|
Python
python元组与列表的转换
在 Python 中,元组(tuple)和列表(list)是两种常用的数据结构,它们之间可以相互转换
WK
18 9
|
10天前
|
Python
探索Python中的列表推导式
【10月更文挑战第20天】在编程世界里,时间就是一切。Python的列表推导式是节约时间、简化代码的一大利器。本文将带你深入理解并有效利用这一强大工具,从基础到高级用法,让你的代码更加简洁高效。
|
10天前
|
Python
SciPy 教程 之 SciPy 模块列表 6
SciPy教程之常量模块介绍:涵盖公制、二进制(字节)、质量、角度、时间、长度、压强、体积、速度、温度、能量、功率及力学单位。示例展示了角度单位转换为弧度的几个常用常量。
15 7
|
10天前
|
Python
SciPy 教程 之 SciPy 模块列表 7
`scipy.constants` 模块提供了常用的时间单位转换为秒数的功能。例如,`constants.hour` 返回 3600.0 秒,表示一小时的秒数。其他常用时间单位包括分钟、天、周、年和儒略年。
14 6
|
7天前
|
Python
SciPy 教程 之 SciPy 模块列表 13
SciPy教程之SciPy模块列表13:单位类型。常量模块包含多种单位,如公制、二进制(字节)、质量、角度、时间、长度、压强、体积、速度、温度、能量、功率和力学单位。示例代码展示了如何使用`constants`模块获取零摄氏度对应的开尔文值(273.15)和华氏度与摄氏度的转换系数(0.5556)。
12 1
|
8天前
|
弹性计算 安全 数据处理
Python高手秘籍:列表推导式与Lambda函数的高效应用
列表推导式和Lambda函数是Python中强大的工具。列表推导式允许在一行代码中生成新列表,而Lambda函数则是用于简单操作的匿名函数。通过示例展示了如何使用这些工具进行数据处理和功能实现,包括生成偶数平方、展平二维列表、按长度排序单词等。这些工具在Python编程中具有高度的灵活性和实用性。
|
9天前
|
Python
SciPy 教程 之 SciPy 模块列表 9
SciPy教程之常量模块介绍,涵盖多种单位类型,如公制、质量、角度、时间、长度、压强等。示例展示了如何使用`scipy.constants`模块查询不同压强单位对应的帕斯卡值,包括atm、bar、torr、mmHg和psi。
10 1
|
9天前
|
Python
SciPy 教程 之 SciPy 模块列表 8
SciPy教程之常量模块单位类型介绍。该模块包含多种单位,如公制、质量、角度、时间、长度、压强、体积、速度、温度、能量、功率和力学单位。示例展示了部分长度单位的转换值,例如英寸、英尺、海里等。
12 1
|
9天前
|
C语言 开发者 Python
探索Python中的列表推导式:简洁而强大的工具
【10月更文挑战第21天】在Python的世界里,代码的优雅与效率同样重要。列表推导式(List Comprehensions)作为一种强大而简洁的工具,允许开发者通过一行代码完成对列表的复杂操作。本文将深入探讨列表推导式的使用方法、性能考量以及它如何提升代码的可读性和效率。
|
11天前
|
知识图谱 Python
SciPy 教程 之 SciPy 模块列表 5
本教程介绍SciPy常量模块中的单位类型,涵盖公制、质量、时间、长度等单位。示例代码展示了如何使用`scipy.constants`模块获取不同质量单位的千克值,如公吨、磅、盎司、原子质量单位等。
11 1