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 相关文章推荐
35个Python编程小技巧
Apr 01 Python
python文件读写操作与linux shell变量命令交互执行的方法
Jan 14 Python
python自定义类并使用的方法
May 07 Python
python 读取Linux服务器上的文件方法
Dec 27 Python
python3+pyqt5+itchat微信定时发送消息的方法
Feb 20 Python
Python3匿名函数lambda介绍与使用示例
May 18 Python
python爬虫 基于requests模块的get请求实现详解
Aug 20 Python
python实现两个字典合并,两个list合并
Dec 02 Python
Pandas实现DataFrame按行求百分数(比例数)
Dec 27 Python
Django model class Meta原理解析
Nov 14 Python
TensorFlow的自动求导原理分析
May 26 Python
Python帮你解决手机qq微信内存占用太多问题
Feb 15 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/10/09 PHP
php discuz 主题表和回帖表的设计
2009/03/13 PHP
php面向对象全攻略 (四)构造方法与析构方法
2009/09/30 PHP
约瑟夫环问题的PHP实现 使用PHP数组内部指针操作函数
2010/10/12 PHP
二进制交叉权限微型php类分享
2014/02/07 PHP
PHP中使用Imagick操作PSD文件实例
2015/01/26 PHP
CI框架集成Smarty的方法分析
2016/05/17 PHP
PHP与JavaScript针对Cookie的读写、交互操作方法详解
2017/08/07 PHP
DHTML 中的绝对定位
2006/11/26 Javascript
js删除所有的cookie的代码
2010/11/25 Javascript
js 数值转换为3位逗号分隔的示例代码
2014/02/19 Javascript
jQuery中的pushStack实现原理和应用实例
2015/02/03 Javascript
利用JS实现文字的聚合动画效果
2017/01/22 Javascript
纯js实现页面返回顶部的动画(超简单)
2017/08/10 Javascript
基于BootStrap的文本编辑器组件Summernote
2017/10/27 Javascript
JS实现的将html转为pdf功能【基于浏览器端插件jsPDF】
2018/02/06 Javascript
详解JS转换数值函数Number()、parseInt()、parseFloat()
2018/08/24 Javascript
js 下拉菜单点击旁边收起实现(踩坑记)
2019/09/29 Javascript
使用 JavaScript 创建并下载文件(模拟点击)
2019/10/25 Javascript
js中script的上下放置区别,Dom的增删改创建操作实例分析
2019/12/16 Javascript
通过实例了解JS执行上下文运行原理
2020/06/17 Javascript
Python 实现购物商城,含有用户入口和商家入口的示例
2017/09/15 Python
Django forms组件的使用教程
2018/10/08 Python
Django实现学生管理系统
2019/02/26 Python
python fuzzywuzzy模块模糊字符串匹配详细用法
2019/08/29 Python
Centos7 下安装最新的python3.8
2019/10/28 Python
Python socket模块方法实现详解
2019/11/05 Python
python 密码学示例——理解哈希(Hash)算法
2020/09/21 Python
Python图像读写方法对比
2020/11/16 Python
葬礼司仪主持词
2014/03/31 职场文书
党员组织生活会发言材料
2014/10/17 职场文书
陕西导游词
2015/02/04 职场文书
八年级作文之感悟亲情
2019/11/20 职场文书
详细总结Python常见的安全问题
2021/05/21 Python
使用RedisTemplat实现简单的分布式锁
2021/11/20 Redis
JavaScript利用html5新方法操作元素类名详解
2021/11/27 Javascript