代码如下
my_list = [
[1,2],
[3,4],
[5,6],
]
for i in my_list:
for o in range(1):
print([i])
需要输出结果为
1
2
3
4
5
6
(我尝试用range循环两次列表来完成这个目标不知道如何完成。且面对二维列表中单个列表长度不一致时无解决办法)
故构成3问
1.完成输出结果的代码( 最好能用range)
2.代码运行方式是怎样的(为什么能做到这样的结果)?
3.面对长度不同的代码处理方式
my_list = [
[1,2],
[3,4],
[5,6],]
for i in my_list:
for j in range(len(i)):
print(i[j])
第二种:
my_list = [
[1,2],
[3,4],
[5,6],]
for i in range(len(my_list)):
for j in range(len(my_list[i])):
print(my_list[i][j])
1.如上代码
2.使用嵌套for循环,第一层,每轮的数据是二维数组的每一行,第二层,每轮的数据就是从每一行中逐个取出元素,如输出的结果
3.长度不同,此代码仍然可以遍历输出,因为循环次数是根据数组大小获取,数组多大,循环多少次,因为有len()
函数,返回数组长度
用range,但是里边的范围不能写死,通过数组长度来设定
my_list = [
[1,2],
[3,4],
[5,6],
]
for i in range(len(my_list)):
for o in range(len(my_list[i])):
print(my_list[i][o])
推荐二维列表专用工具:
from itertools import chain
my_list = [[1,2],[3,4],[5,6],]
a = list(chain(*my_list))
for i in a:
print(i)