python中二维列表的遍历方式

首先给大家推荐一下我老师大神的人工智能教学网站。教学不仅零基础,通俗易懂,而且非常风趣幽默,还时不时有内涵黄段子!点这里可以跳转到网站

第一种方式:类似于MATLAB中的二维数据索引,比较直观,容易理解

list2d = [[1,2,3],[4,5,6]]sum = 0for i in range(len(list2d)):    for j in range(len(list2d[0])):        sum += list2d[i][j]print(sum)

首先,定义了一个二维列表list2d.

然后利用一个两层循环遍历这个二维列表.

利用range函数限制循环次数

利用len函数获得列表的行数和列数.注意这两者的不同.

评价:这个方式不够好:

首先,Python中列表和MATLAB中不同,不需要每行的列数相同

利用行列下标索引方式,则必须要求,每行的列数相同.

比如

list2d = [[1,2,3],[4,5]]sum = 0for i in range(len(list2d)):    for j in range(len(list2d[0])):        sum += list2d[i][j]print(sum)

出错:

IndexError: list index out of range

因为得到列数为3,在第二行时就会超出索引.相反,利用句柄方式就不存在这个问题

第二种方式:利用列表句柄

list2d = [[1,2,3],[4,5]]sum = 0for i in list2d:    for j in i:        sum += jprint(sum)

提示:作为新手,一定要熟悉各种数据结构的句柄遍历方式.

点这里可以跳转到人工智能网站

发表评论