Python 矩阵转置的几种方法小结


Posted in Python onDecember 02, 2019

我就废话不多说了,直接上代码吧!

#Python的matrix转置
matrix = [[1,2,3,4],[5,6,7,8],[9,10,11,12]]
 
def printmatrix(m):
	for ele in m:
		for i in ele:
			print("%2d" %i,end = " ")
		print()
#1、利用元祖的特性进行转置
def transformMatrix(m):
#此处巧妙的先按照传递的元祖m的列数,生成了r的行数
	r = [[] for i in m[0]]
	
	for ele in m:
		for i in range(len(ele)):
			#【重点】:此处利用m的第ele行i列,并将该值追加到r的i行上;巧妙的利用了i
			r[i].append(ele[i])
			#printmatrix(r)#方便查看数组是怎么赋值的,如不需要可注释掉
			#print("*"*20)#打印分隔符
	return r
	
#2、利用zip函数生成转置矩阵
def transformMatrix1(m):
	return zip(*m)
	
#3、利用numpy模块的transpose方法
def transformMatrix2(m):
	import numpy
	return numpy.transpose(m).tolist()
	
print("第一种方法结果展示")	
printmatrix(transformMatrix(matrix))
print("第二种方法结果展示")
printmatrix(transformMatrix1(matrix))
print("第二种方法的简洁代码展示")
printmatrix(zip(*matrix))#为了代码更简洁,可以不用transformMatrix1函数,直接打印
print("第三种方法的结果展示")
printmatrix(transformMatrix2(matrix))

以上这篇Python 矩阵转置的几种方法小结就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现连接mongodb的方法
May 08 Python
Python用for循环实现九九乘法表
May 31 Python
删除python pandas.DataFrame 的多重index实例
Jun 08 Python
python用列表生成式写嵌套循环的方法
Nov 08 Python
Django中URL的参数传递的实现
Aug 04 Python
python实现车牌识别的示例代码
Aug 05 Python
python安装本地whl的实例步骤
Oct 12 Python
Python定时器线程池原理详解
Feb 26 Python
Python logging模块写入中文出现乱码
May 21 Python
Python爬虫实例——爬取美团美食数据
Jul 15 Python
Python排序算法之插入排序及其优化方案详解
Jun 11 Python
python区块链实现简版工作量证明
May 25 Python
numpy.transpose()实现数组的转置例子
Dec 02 #Python
Python中低维数组填充高维数组的实现
Dec 02 #Python
python函数声明和调用定义及原理详解
Dec 02 #Python
python return逻辑判断表达式实现解析
Dec 02 #Python
Python线程障碍对象Barrier原理详解
Dec 02 #Python
python 循环数据赋值实例
Dec 02 #Python
python创建n行m列数组示例
Dec 02 #Python
You might like
PHP面向对象的使用教程 简单数据库连接
2006/11/25 PHP
php中变量及部分适用方法
2008/03/27 PHP
php下实现一个阿拉伯数字转中文数字的函数
2008/07/10 PHP
递归删除一个节点以及该节点下的所有节点示例
2014/03/19 PHP
php+html5使用FormData对象提交表单及上传图片的方法
2015/02/11 PHP
round robin权重轮循算法php实现代码
2016/05/28 PHP
Yii框架引入coreseek分页功能示例
2019/02/08 PHP
YII框架页面缓存操作示例
2019/04/29 PHP
JavaScript 编程引入命名空间的方法与代码
2007/08/13 Javascript
JavaScript具有类似Lambda表达式编程能力的代码(改进版)
2010/09/14 Javascript
js 替换功能函数,用正则表达式解决,js的全部替换
2010/12/08 Javascript
JavaScript 垃圾回收机制分析
2013/10/10 Javascript
jquery阻止后续事件只执行第一个事件
2014/07/24 Javascript
js实现点击按钮后给Div图层设置随机背景颜色的方法
2015/05/06 Javascript
JS实现随页面滚动显示/隐藏窗口固定位置元素
2016/02/26 Javascript
浅谈jQuery操作类数组的工具方法
2016/12/23 Javascript
求js数组的最大值和最小值的四种方法
2017/03/03 Javascript
vue2.0构建单页应用最佳实战
2017/04/01 Javascript
详解RequireJS按需加载样式文件
2017/04/12 Javascript
JavaScript数组、json对象、eval()函数用法实例分析
2019/02/21 Javascript
vue中多路由表头吸顶实现的几种布局方式
2019/04/12 Javascript
浏览器事件循环与vue nextTicket的实现
2019/04/16 Javascript
详解微信小程序「渲染层网络层错误」的解决方法
2021/01/06 Javascript
python计算方程式根的方法
2015/05/07 Python
python中模块的__all__属性详解
2017/10/26 Python
Python OOP类中的几种函数或方法总结
2019/02/22 Python
Django组件content-type使用方法详解
2019/07/19 Python
python设计tcp数据包协议类的例子
2019/07/23 Python
Python多重继承之菱形继承的实例详解
2020/02/12 Python
Django-xadmin+rule对象级权限的实现方式
2020/03/30 Python
标准导师推荐信(医学类)
2013/10/28 职场文书
2014年圣诞节寄语
2014/12/08 职场文书
委托书格式要求
2015/01/28 职场文书
运动会闭幕式致辞
2015/07/29 职场文书
用position:sticky完美解决小程序吸顶问题的实现方法
2021/04/24 HTML / CSS
Python读取和写入Excel数据
2022/04/20 Python