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检测手机QQ在线状态的脚本代码
Feb 10 Python
python读取TXT到数组及列表去重后按原来顺序排序的方法
Jun 26 Python
python3+PyQt5重新实现自定义数据拖放处理
Apr 19 Python
Python3实现的字典、列表和json对象互转功能示例
May 22 Python
Python实现爬虫从网络上下载文档的实例代码
Jun 13 Python
10 行 Python 代码教你自动发送短信(不想回复工作邮件妙招)
Oct 11 Python
Django框架的中的setting.py文件说明详解
Oct 15 Python
django使用admin站点上传图片的实例
Jul 28 Python
redis数据库及与python交互用法简单示例
Nov 01 Python
Python面向对象原理与基础语法详解
Jan 02 Python
Python利用PyPDF2库获取PDF文件总页码实例
Apr 03 Python
python 如何区分return和yield
Sep 22 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数组函数序列之each() - 获取数组当前内部指针所指向元素的键名和键值,并将指针移到下一位
2011/10/31 PHP
如何获知PHP程序占用多少内存(memory_get_usage)
2012/09/23 PHP
thinkphp3.2.2前后台公用类架构问题分析
2014/11/25 PHP
typecho插件编写教程(五):核心代码
2015/05/28 PHP
实例简介PHP的一些高级面向对象编程的特性
2015/11/27 PHP
php ajax数据传输和响应方法
2018/08/21 PHP
PHP实现微信提现功能(微信商城)
2019/11/21 PHP
jQuery 位置函数offset,innerWidth,innerHeight,outerWidth,outerHeight,scrollTop,scrollLeft
2010/03/23 Javascript
firefox事件处理之自动查找event的函数(用于onclick=foo())
2010/08/05 Javascript
页面装载js及性能分析方法介绍
2014/03/21 Javascript
JS+CSS实现可以凹陷显示选中单元格的方法
2015/03/02 Javascript
jQuery Ajax中的事件详细介绍
2015/04/16 Javascript
js+html5绘制图片到canvas的方法
2015/06/05 Javascript
原生js实现tab选项卡切换
2020/03/23 Javascript
jQuery基本过滤选择器用法示例
2016/09/09 Javascript
基于JavaScript实现新增内容滚动播放效果附完整代码
2017/08/24 Javascript
详解Vue.js iview实现树形权限表(可扩展表)
2018/09/30 Javascript
JS实现简单的点赞与踩功能示例
2018/12/05 Javascript
Vue 报错TypeError: this.$set is not a function 的解决方法
2018/12/17 Javascript
微信端调取相册和摄像头功能,实现图片上传,并上传到服务器
2019/05/16 Javascript
TypeScript 引用资源文件后提示找不到的异常处理技巧
2020/07/15 Javascript
微信小程序onShareTimeline()实现分享朋友圈
2021/01/07 Javascript
python web框架学习笔记
2016/05/03 Python
基于Django与ajax之间的json传输方法
2018/05/29 Python
Python框架Flask的基本数据库操作方法分析
2018/07/13 Python
pytorch获取模型某一层参数名及参数值方式
2019/12/30 Python
pytorch学习教程之自定义数据集
2020/11/10 Python
HTML5中的websocket实现直播功能
2018/05/21 HTML / CSS
英国婚礼商城:Wedding Mall
2019/11/02 全球购物
JSF面试题:Jsf中的核心类用那些?有什么作用?LiftCycle六大生命周期是什么?
2014/07/17 面试题
优秀大学生职业生涯规划书
2014/02/27 职场文书
活动总结新闻稿
2014/08/30 职场文书
红色旅游心得体会
2014/09/03 职场文书
傲慢与偏见电影观后感
2015/06/10 职场文书
left join、inner join、right join的区别
2021/04/05 MySQL
python文件名批量重命名脚本实例代码
2021/04/22 Python