如何将矩阵中每个元素增加20%并输出新矩阵?
矩阵元素增加20%并输出的实现方案
你可以通过两种方式实现需求:
方法一:基于原代码修改(直接更新原矩阵)
在原嵌套循环中加入元素更新逻辑,给每个元素乘以1.2(即增加20%),之后按格式打印:
a = [ [200,300,5000,400],[554,500,1000,652],[800,500,650,800],[950,120,470,500],[500,600,2000,100]] # 遍历更新每个元素 for i in range(len(a)): for j in range(len(a[i])): # 若需要整数结果用int转换,保留小数则直接写a[i][j] *= 1.2 a[i][j] = int(a[i][j] * 1.2) # 打印更新后的矩阵 for i in range(len(a)): for j in range(len(a[i])): print(a[i][j], end=' ') print() # 每行结束后换行,保证矩阵格式正确
方法二:使用列表推导式(生成新矩阵,不修改原数据)
这种方式更符合Python简洁风格,同时保留原矩阵数据:
a = [ [200,300,5000,400],[554,500,1000,652],[800,500,650,800],[950,120,470,500],[500,600,2000,100]] # 生成元素增加20%的新矩阵 updated_matrix = [[int(num * 1.2) for num in row] for row in a] # 打印新矩阵,每行用空格分隔元素 for row in updated_matrix: print(' '.join(map(str, row)))
两种方法都能实现你要的效果,比如原矩阵[[200,300],[500,400]]处理后会输出[[240,360],[600,480]]。
内容的提问来源于stack exchange,提问作者Elias Arias
相关产品推荐
相关产品推荐

