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类型强制转换long to int的代码
Feb 10 Python
python创建和删除目录的方法
Apr 29 Python
Python 功能和特点(新手必学)
Dec 30 Python
Python将一个CSV文件里的数据追加到另一个CSV文件的方法
Jul 04 Python
python保存文件方法小结
Jul 27 Python
python分块读取大数据,避免内存不足的方法
Dec 10 Python
python logging模块的使用总结
Jul 09 Python
基于Python3.7.1无法导入Numpy的解决方式
Mar 09 Python
Python爬虫实现vip电影下载的示例代码
Apr 20 Python
用Python制作mini翻译器的实现示例
Aug 17 Python
Python中的套接字编程是什么?
Jun 21 Python
Python利用capstone实现反汇编
Apr 06 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不用内置函数对数组排序的两个算法代码
2010/02/08 PHP
PHP使用Pthread实现的多线程操作实例
2015/11/14 PHP
php提交post数组参数实例分析
2015/12/17 PHP
php实现分页功能的详细实例方法
2019/09/29 PHP
JavaScript 编写匿名函数的几种方法
2010/02/21 Javascript
jQuery 验证插件 Web前端设计模式(asp.net)
2010/10/17 Javascript
JavaScript+CSS控制打印格式示例介绍
2014/01/07 Javascript
JQuery的$和其它JS发生冲突的快速解决方法
2014/01/24 Javascript
javascript中解析四则运算表达式的算法和示例
2014/08/11 Javascript
jQuery中$.get、$.post、$.getJSON和$.ajax的用法详解
2014/11/19 Javascript
浅谈node.js中async异步编程
2015/10/22 Javascript
5个最顶级jQuery图表类库插件【jquery插件库】
2016/05/05 Javascript
IE8兼容Jquery.validate.js的问题
2016/12/01 Javascript
canvas 实现中国象棋
2017/02/17 Javascript
JS文件/图片从电脑里面拖拽到浏览器上传文件/图片
2017/03/08 Javascript
JavaScript 事件流、事件处理程序及事件对象总结
2017/04/01 Javascript
Node.js使用Angular简单示例
2018/05/11 Javascript
微信小程序传值以及获取值方法的详解
2019/04/29 Javascript
JavaScript实现拖拽功能
2020/02/11 Javascript
Python安装Imaging报错:The _imaging C module is not installed问题解决方法
2014/08/22 Python
在Apache服务器上同时运行多个Django程序的方法
2015/07/22 Python
Python实现的读写json文件功能示例
2018/06/05 Python
Django管理员账号和密码忘记的完美解决方法
2018/12/06 Python
python opencv实现图片缺陷检测(讲解直方图以及相关系数对比法)
2020/04/07 Python
Python实现LR1文法的完整实例代码
2020/10/25 Python
python os.rename实例用法详解
2020/12/06 Python
印尼美容产品购物网站:PerfectBeauty.id
2017/12/01 全球购物
美国优质马术服装购买网站:Breeches.com
2019/12/16 全球购物
什么是WEB控件?使用WEB控件有哪些优势?
2012/01/21 面试题
英语国培研修感言
2014/02/13 职场文书
个人公开承诺书
2014/03/28 职场文书
企业法人授权委托书
2014/09/25 职场文书
学生实习证明范文
2014/09/28 职场文书
检察院起诉意见书
2015/05/20 职场文书
JavaScript实现简单图片切换
2021/04/29 Javascript
关于Python中进度条的六个实用技巧分享
2022/04/05 Python