python教程:二维列表(list)初始化

简介: python教程:二维列表(list)初始化

当我们使用python做数据的时候,经常会遇到需要初始化一个二维列表,然后对列表的每一个子项目(我们这里假设也是列表)进行操作。

在初始化的时候有一个坑,在做题目的时候卡住好久,根本找不到解决的方法。后来才发现是二维列表初始化的问题。

首先,如果我们需要初始化一个一维列表的时候

In [1]:a = [0] * 5
In [2]:a
Out[2]: [0, 0, 0, 0, 0]

二维列表的初始化可以这样做:

In [3]:b = [[0] * 5] * 5
In [4]:b
Out[4]: 
[[0, 0, 0, 0, 0],
 [0, 0, 0, 0, 0],
 [0, 0, 0, 0, 0],
 [0, 0, 0, 0, 0],
 [0, 0, 0, 0, 0]]

不过这样有一个很大的问题:这样操作的意思实际上是对于[0] * 5的一维列表复制了5次。也就是说,当我更改其中的任意一个的时候,其实是对b列表中的5个子列表全部修改了。

In [5]:b[0][0]='这个方法不行'
In [6]:b
Out[6]: 
[['这个方法不行', 0, 0, 0, 0],
 ['这个方法不行', 0, 0, 0, 0],
 ['这个方法不行', 0, 0, 0, 0],
 ['这个方法不行', 0, 0, 0, 0],
 ['这个方法不行', 0, 0, 0, 0]]

为了解决这个问题,推荐采用以下方法:

#Python学习交流群:711312441
In [7]:c = [[0] * 5 for _ in range(5)]
In [8]:c[0][0]='这个方法行'
In [9]:c
Out[9]: 
[['这个方法行', 0, 0, 0, 0],
 [0, 0, 0, 0, 0],
 [0, 0, 0, 0, 0],
 [0, 0, 0, 0, 0],
 [0, 0, 0, 0, 0]]
相关文章
|
4天前
|
IDE 测试技术 项目管理
【新手必看】PyCharm2025 免费下载安装配置教程+Python环境搭建、图文并茂全副武装学起来才嗖嗖的快,绝对最详细!
PyCharm是由JetBrains开发的Python集成开发环境(IDE),专为Python开发者设计,支持Web开发、调试、语法高亮、项目管理、代码跳转、智能提示、自动完成、单元测试和版本控制等功能。它有专业版、教育版和社区版三个版本,其中社区版免费且适合个人和小型团队使用,包含基本的Python开发功能。安装PyCharm前需先安装Python解释器,并配置环境变量。通过简单的步骤即可在PyCharm中创建并运行Python项目,如输出“Hello World”。
50 12
【新手必看】PyCharm2025 免费下载安装配置教程+Python环境搭建、图文并茂全副武装学起来才嗖嗖的快,绝对最详细!
|
2月前
|
索引 Python
Python列表
Python列表。
52 8
|
2月前
|
C语言 Python
[oeasy]python054_python有哪些关键字_keyword_list_列表_reserved_words
本文介绍了Python的关键字列表及其使用规则。通过回顾`hello world`示例,解释了Python中的标识符命名规则,并探讨了关键字如`if`、`for`、`in`等不能作为变量名的原因。最后,通过`import keyword`和`print(keyword.kwlist)`展示了Python的所有关键字,并总结了关键字不能用作标识符的规则。
41 9
|
2月前
|
数据挖掘 大数据 数据处理
python--列表list切分(超详细)
通过这些思维导图和分析说明表,您可以更直观地理解Python列表切分的概念、用法和实际应用。希望本文能帮助您更高效地使用Python进行数据处理和分析。
72 14
|
2月前
|
数据可视化 DataX Python
Seaborn 教程-绘图函数
Seaborn 教程-绘图函数
79 8
|
2月前
Seaborn 教程-主题(Theme)
Seaborn 教程-主题(Theme)
135 7
|
2月前
|
数据挖掘 大数据 数据处理
python--列表list切分(超详细)
通过这些思维导图和分析说明表,您可以更直观地理解Python列表切分的概念、用法和实际应用。希望本文能帮助您更高效地使用Python进行数据处理和分析。
110 10
|
2月前
|
Python
Seaborn 教程-模板(Context)
Seaborn 教程-模板(Context)
53 4
|
2月前
|
数据可视化 Python
Seaborn 教程
Seaborn 教程
57 5
|
3月前
|
数据处理 开发者 Python
Python中的列表推导式:简洁高效的数据处理
在编程世界中,效率和可读性是代码的两大支柱。Python语言以其独特的简洁性和强大的表达力,为开发者提供了众多优雅的解决方案,其中列表推导式便是一个闪耀的例子。本文将深入探讨列表推导式的使用场景、语法结构及其背后的执行逻辑,带你领略这一特性的魅力所在。

热门文章

最新文章