python创建一个二维列表
方法一:利用for-in语句来生成一个二维列表
a = []
2 for i in range(10):
3 a.append([])
4 for j in range(10):
5 a[i].append(0)
6
7 print(a)
8 a[0][1] = 1
9 print(a)
运行结果
[[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, 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, 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, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0,
0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]]
[[0, 1, 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, 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, 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], [0, 0, 0, 0, 0, 0, 0, 0, 0,
0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]]
代码解析
第一次循环是创建10行的空列表,第二个循环是在每行的空列表中添加10个数据,也就是添加10列使其成为10x10的二维列表
方法二:for语句
b = [[0 for i in range(10)] for i in range(10)]
print(b)
运行结果:
[[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, 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, 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, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0,
0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]]
代码解析:
for语句前的表达式是循环体,这个知识点可能大家都没太过于注意。
[0 for i in range(10)]
这部分语句是为了生成一个1x10的一维列表,再对后面的可迭代对象进行迭代,最终生成了一个10x10的二维列表
最新文章
- 如何使CSS3中的animation动画当每滑到一屏时每次都运行
- Java中的GOF23(23中设计模式)--------- 工厂模式(Factory)
- [转载] Android Metro风格的Launcher开发系列第一篇
- [转]dispatcher、redirect和chain三种result type的使用区别
- Asp.Net MVC5 格式化输出时间日期
- 浅谈JavaScript函数
- sql语句的截取字符串下标是从1开始
- phpcms v9栏目列表调用每一篇文章内容方法
- 常常搞不清楚SQLServer中的sp_columns来看一看
- Windows 安装JDK
- 单元测试系列之九:Sonar 常用代码规则整理(一)
- 点击按钮下载图片(ie,FF,chrome)
- CF1121C 模拟
- BZOJ3829[Poi2014]FarmCraft——树形DP+贪心
- C++ Makefile文件编写
- C#设计模式--模板方法模式(学习Learning hard 设计模式笔记)
- p4 : a problem about ";./behavioral-model";
- 关于“scrum站立会议”
- 洛谷P4623 [COCI2012-2013#6] BUREK [模拟]
- dwz+ssh Http status: 200 OK