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标准库内置函数complex介绍
Nov 25 Python
Flask框架中密码的加盐哈希加密和验证功能的用法详解
Jun 07 Python
Python实现的快速排序算法详解
Aug 01 Python
python 设置文件编码格式的实现方法
Dec 21 Python
python 请求服务器的实现代码(http请求和https请求)
May 25 Python
浅析Python四种数据类型
Sep 26 Python
pycharm中成功运行图片的配置教程
Oct 28 Python
python文件选择对话框的操作方法
Jun 27 Python
Django 实现Admin自动填充当前用户的示例代码
Nov 18 Python
python手机号前7位归属地爬虫代码实例
Mar 31 Python
python如何快速拼接字符串
Oct 28 Python
Tensorflow与RNN、双向LSTM等的踩坑记录及解决
May 31 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
APMServ使用说明
2006/10/23 PHP
多个PHP中文字符串截取函数
2013/11/12 PHP
thinkphp的c方法使用示例
2014/02/24 PHP
Symfony2学习笔记之控制器用法详解
2016/03/17 PHP
DEDE实现转跳属性文档在模板上调用出转跳地址
2016/11/04 PHP
谈谈php对接芝麻信用踩的坑
2016/12/01 PHP
php实现产品加入购物车功能(1)
2020/07/23 PHP
让焦点自动跳转
2006/07/01 Javascript
Colortip基于jquery的信息提示框插件在IE6下面的显示问题修正方法
2010/12/06 Javascript
JavaScript中为元素加上name属性的方法
2011/05/09 Javascript
40个有创意的jQuery图片和内容滑动及弹出插件收藏集之三
2012/01/03 Javascript
javascript自定义的addClass()方法
2014/05/28 Javascript
jQuery子属性过滤选择器用法分析
2015/02/10 Javascript
jQuery Ajax请求后台数据并在前台接收
2016/12/10 Javascript
详解AngularJS跨页面传值(ui-router)
2017/08/23 Javascript
NodeJS使用Range请求实现下载功能的方法示例
2018/10/12 NodeJs
nodejs搭建本地服务器并访问文件操作示例
2019/05/11 NodeJs
Python反射用法实例简析
2017/12/22 Python
微信跳一跳python辅助软件思路及图像识别源码解析
2018/01/04 Python
对json字符串与python字符串的不同之处详解
2018/12/19 Python
python 删除字符串中连续多个空格并保留一个的方法
2018/12/22 Python
Python弹出输入框并获取输入值的实例
2019/06/18 Python
Python 实现大整数乘法算法的示例代码
2019/09/17 Python
python十进制转二进制的详解
2020/02/07 Python
Python爬取新型冠状病毒“谣言”新闻进行数据分析
2020/02/16 Python
HTML5 canvas基本绘图之文字渲染
2016/06/27 HTML / CSS
基于HTML5+tracking.js实现刷脸支付功能
2020/04/16 HTML / CSS
手机配件第一品牌:ZAGG
2017/05/28 全球购物
小学生保护环境倡议书
2014/05/15 职场文书
党的群众路线教育实践活动个人对照检查材料(公安)
2014/11/05 职场文书
2014年计生工作总结
2014/11/21 职场文书
委托书格式范文
2015/01/28 职场文书
帝企鹅日记观后感
2015/06/10 职场文书
再见,2019我们不负使命;你好,2020我们砥砺前行
2020/01/03 职场文书
Oracle查看表空间使用率以及爆满解决方案详解
2022/07/23 Oracle
Python  序列化反序列化和异常处理的问题小结
2022/12/24 Python