python二维列表求解所有元素之和
2020-01-14
相信很多初学小伙伴都会遇到二维列表求解所有元素之和问题,下面给出两种两种常见的求和方法。
方法1:
思想:遍历整个二维列表元素,然后将所有元素加起来
def Sum_matrix(matrix):
sum=0
for i in range(len(matrix)):
for j in range(len(matrix[i])):
sum+=matrix[i][j]
return sum #测试
matrix=[[1, 2, 3], [4, 5, 6, 4], [7, 8, 9]]
Sum_matrix(matrix) # a=[[22,4,5],[3],[5,5,82,4,7]]
Sum_matrix(a) #
说明:上述方法可以求解常见二维列表所有元素之和,不受列表各行长度影响
方法2
思想:采用列表句柄(在一篇博客看到这样称呼)来求解,思想还是将所有元素加起来,但实现方法与方法1稍微有点不同
def Sum_matrix(matrix):
sum=0
for i in matrix:
for j in i:
sum+=j
return sum #测试
matrix=[[1, 2, 3], [4, 5, 6, 4], [7, 8, 9]]
Sum_matrix(matrix) # a=[[22,4,5],[3],[5,5,82,4,7]]
Sum_matrix(a) #
说明:可以看到,方法2实现方式更简单,更灵活。与方法1相比,在方法2中,遍历时的 i 代表二维列表的一整行,j表示一行中各个元素,而方法1中遍历时的 i 和 j 用来表示元素位置。同样方法2不受列表各行长度影响。
关于i和j 用来表示各个元素值,可看下面例子
matrix=[[1, 2, 3], [4, 5, 6, 4], [7, 8, 9]]
>>> for i in matrix:
print(i)
for j in i:
print(j) #输出
[1, 2, 3] #i=0,matrix第一行matrix[0]
1
2
3
[4, 5, 6, 4]#i=1,matrix第二matrix[1]
4
5
6
4
[7, 8, 9] #i=2,matrix第三行matrix[2]
7
8
9
应该很清晰了吧!
总结:以上两种方法相信在实际操作中均会采用,方法1采用元素下表形式来访问元素,方法2采用二维列表句柄形式访问,简单灵活。两种方法相对都较容易,希望小伙伴们都能掌握,也欢迎大家一块留言讨论学习
python二维列表求解所有元素之和的更多相关文章
- Python 二维列表
一维列表,可以使用 * 快速创建list1=[0]*Width r = [0]*5 print r r[1]= 1 print r [0, 0, 0, 0, 0] [0, 1, 0, 0, 0] 扩展 ...
- 避免python二维列表append一维列表时浅拷贝问题
原始问题: 由于浅拷贝原因,使得当a列表变动时,b列表也发生变动 解决办法: 如上图所示,添加的时候添加新列即可,类似新建一个列表,使得与原有列表a不共用同一个内存
- python构造二维列表以及排序字典
1. 构造二维列表: 比如我现在需要一个100*100的二维列表: a = [] for i in range(100): a.append([]) for j in range(100): a[i] ...
- Python创建二维列表的正确姿势
Python创建二维列表的正确姿势 简介 Python中没有数组,使用list结构代替,并且list结构的功能更加强大: 支持动态扩容,无需担心元素过量 对list内的元素类型不做一致性约束 提供丰富 ...
- python创建与遍历List二维列表
python创建与遍历List二维列表 觉得有用的话,欢迎一起讨论相互学习~Follow Me python 创建List二维列表 lists = [[] for i in range(3)] # 创 ...
- Python笔记25-----------创建二维列表【浅copy】和转置
一.创建二维列表 1.二维列表创建第二维的时候,如果采用*2这种方式,这是一种浅复制的方式,同时引用到同一个list,如上图的C. 这种形式,不方便修改C[ i ][ j ]的数据,如果改C[ 0 ] ...
- python保存二维列表到txt文件,读取txt文件里面的数据转化为二维列表
源码: # 读文件里面的数据转化为二维列表 def Read_list(filename): file1 = open(filename+".txt", "r" ...
- Python中如何将二维列表转换成一维列表
已知:a = [(4,2,3), (5, 9, 1), (7,8,9)]希望将二维列表转换成一维列表:["4,2,3", "5, 9, 1", "7, ...
- python创建一个二维列表
方法一:利用for-in语句来生成一个二维列表 a = [] 2 for i in range(10): 3 a.append([]) 4 for j in range(10): 5 a[i].app ...
随机推荐
- iptables单个规则实例
iptables -F? # -F 是清除的意思,作用就是把 FILTRE TABLE 的所有链的规则都清空 iptables -A INPUT -s 172.20.20.1/32 -m state ...
- java分配内存空间
分配内存空间 数组名=new 数据类型[数组长度]: new关键字用来实现为数组或对象分配内存 (堆内存) 数组具有固定的长度.获取数组的长度: 数组名.length 定义数组+分配内存空间 数据类型 ...
- visualStudio 无法登陆
如果遇到 visualStudio 无法登陆,可以看下我的方法,可能有用 尝试关闭代理 打开设置.网络.代理,关了它,试试 如果遇到下面的问题: 我们无法刷新此账户的凭据 No home tenant ...
- tet-2
一.html和css部分 1.如何理解CSS的盒子模型? 标准盒子模型:宽度=内容的宽度(content)+ border + padding 低版本IE盒子模型:宽度=内容宽度(content+ ...
- 微信小程序 image图片组件实现宽度固定 高度自适应
给img的mode设置值 注1:image组件默认宽度300px.高度225px 注2:image组件中二维码/小程序码图片不支持长按识别.仅在wx.previewImage中支持长按识别. mode ...
- 【38.63%】【hdu 3047】Zjnu Stadium
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s) ...
- 苹果笔记本修改pycharm for mac 修改字体大小
实在是隐藏的太深了,无语
- 利用python第三方库提取PDF文件的表格内容
小爬最近接到一个棘手任务:需要提取手机话费电子发票PDF文件中的数据.接到这个任务的第一时间,小爬决定搜集各个地区各个时间段的电子发票文件,看看其中的差异点.粗略统计下来,PDF文件的表格框架是统一的 ...
- UNITY->(width*height)style Inventory
项目过后对项目功能进行记录,(width*height)风格背包实现细节,包含对物体的存放,装备,替换,对未知装备的鉴定,物体前缀的获取,项目类型为tcg+rpg,背包的作用主要为游戏中的物品的获取存 ...
- Java程序员必备:异常的十个关键知识点
前言 总结了Java异常十个关键知识点,面试或者工作中都有用哦,加油. 一. 异常是什么 异常是指阻止当前方法或作用域继续执行的问题.比如你读取的文件不存在,数组越界,进行除法时,除数为0等都会导致异 ...