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虚拟环境virtualenv的安装与使用
Sep 21 Python
Python3实战之爬虫抓取网易云音乐的热门评论
Oct 09 Python
Python通过future处理并发问题
Oct 17 Python
python opencv读mp4视频的实例
Dec 07 Python
Python数据预处理之数据规范化(归一化)示例
Jan 08 Python
几行Python代码爬取3000+上市公司的信息
Jan 24 Python
计算机二级python学习教程(3) python语言基本数据类型
May 16 Python
Python二次规划和线性规划使用实例
Dec 09 Python
python实现人机五子棋
Mar 25 Python
python plt可视化——打印特殊符号和制作图例代码
Apr 17 Python
Python SMTP配置参数并发送邮件
Jun 16 Python
Python读取xlsx数据生成图标代码实例
Aug 12 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使用数据库永久连接方式操作MySQL的是与非
2013/06/05 PHP
Yii使用Captcha验证码的方法
2015/12/28 PHP
thinkphp5.1框架容器与依赖注入实例分析
2019/07/23 PHP
js判断变量是否空值的代码
2008/10/26 Javascript
JQuery 入门实例1
2009/06/25 Javascript
JS/FLASH实现复制代码到剪贴板(兼容所有浏览器)
2013/05/27 Javascript
Chrome下ifame父窗口调用子窗口的问题示例探讨
2014/03/17 Javascript
js控制输入框获得和失去焦点时状态显示的方法
2015/01/30 Javascript
js实现上传图片预览的方法
2015/02/09 Javascript
基于jQuery日历插件制作日历
2016/03/11 Javascript
如何判断Javascript对象是否存在的简单实例
2016/05/18 Javascript
Bootstrap表单Form全面解析
2016/06/13 Javascript
Angularjs结合Bootstrap制作的一个TODO List
2016/08/18 Javascript
在 Angular2 中实现自定义校验指令(确认密码)的方法
2017/01/23 Javascript
微信小程序methods中定义的方法互相调用的实例代码
2018/08/07 Javascript
Vue.js实现双向数据绑定方法(表单自动赋值、表单自动取值)
2018/08/27 Javascript
Vue实现商品分类菜单数量提示功能
2019/07/26 Javascript
微信小程序实现点击卡片 翻转效果
2019/09/04 Javascript
react实现同页面三级跳转路由布局
2019/09/26 Javascript
vue.js 解决v-model让select默认选中不生效的问题
2020/07/28 Javascript
Antd-vue Table组件添加Click事件,实现点击某行数据教程
2020/11/17 Javascript
python写的一个squid访问日志分析的小程序
2014/09/17 Python
shelve  用来持久化任意的Python对象实例代码
2016/10/12 Python
使用Python快速搭建HTTP服务和文件共享服务的实例讲解
2018/06/04 Python
Python实现去除图片中指定颜色的像素功能示例
2019/04/13 Python
基于python实现学生信息管理系统
2019/11/22 Python
python二分法查找算法实现方法【递归与非递归】
2019/12/06 Python
Django查询优化及ajax编码格式原理解析
2020/03/25 Python
QT5 Designer 打不开的问题及解决方法
2020/08/20 Python
菲律宾购物网站:Lazada菲律宾
2018/04/05 全球购物
中专自我鉴定
2014/02/05 职场文书
小学毕业感言500字
2014/02/28 职场文书
借款协议书
2014/09/16 职场文书
员工年度工作总结2015
2015/05/18 职场文书
走近毛泽东观后感
2015/06/04 职场文书
Vue2.0搭建脚手架
2022/03/13 Vue.js