我就废话不多说了,直接上代码吧!

#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 矩阵转置的几种方法小结相关推荐

  1. python中时间处理_Python中处理时间的几种方法小结

    从一个字符串开始 在CODE上查看代码片派生到我的代码片 >>>time_str='2008-08-08 08:08:08' 1.1.转换为struct_time形式的时间 在COD ...

  2. python求1到n的乘积_Python实现矩阵相乘的三种方法小结

    问题描述 分别实现矩阵相乘的3种算法,比较三种算法在矩阵大小分别为22∗2222∗22, 23∗2323∗23, 24∗2424∗24, 25∗2525∗25, 26∗2626∗26, 27∗2727 ...

  3. python输出矩阵的转置_Python 矩阵转置的几种方法小结

    我就废话不多说了,直接上代码吧! #Python的matrix转置 matrix = [[1,2,3,4],[5,6,7,8],[9,10,11,12]] def printmatrix(m): fo ...

  4. python矩阵转置_Python 矩阵转置的几种方法小结

    我就废话不多说了,直接上代码吧! #Python的matrix转置 matrix = [[1,2,3,4],[5,6,7,8],[9,10,11,12]] def printmatrix(m): fo ...

  5. python一维数组转置_python矩阵转置

    python中的矩阵转置 首先,数据应该是np.asarray型, 然后,使用numpy.transpose来操作. transpose方法只能处理高维数组(>1),如果处理一维数组会报错: 对 ...

  6. python一维数组合并_Python编程:如何将多个一维数组的元素交叉拼接成新的一维数组...

    问题提出 假定有3个一维数组x0.x1.x2,其元素分别为: x0 = [1, 2, 3] x1 = [4, 5, 6] x2 = [7, 8, 9] 请将这3个一维数组的元素交叉拼接后,组成一个新的 ...

  7. python一维数组 提取_python – 如何从numpy中的1维数组中提取零维切片

    有没有办法从一维数组切割零维子阵列? 例如,如果我有一个N维的ndarray arr,arr [0]返回一个(N-1)维的ndarray. 但是,如果我有一维ndarray x,x [0]不返回0维n ...

  8. python怎么复制字符串_python字符串复制的几种方法

    >>> list1 = [1,2] >>> id(list1) 50081032 >>> list2 = list1.copy() >> ...

  9. python安装gdal包_python安装gdal的两种方法

    1.不用手动下载文件,直接执行以下命令即可 conda install gdal 2.首先,下载gdal的whl文件  链接, 官网下载比较慢,GDAL-2.2.4-cp27-cp27m-win_am ...

  10. python包导入方式_python导包的几种方法(自定义包的生成以及导入详解)

    python 导入数据包的几种方法 1.直接导入整个数据包:improt 数据包 2.导入数据包中的某一个函数: from 数据包 improt 函数(当函数这一项为 * 时为导入整个数据包) 3. ...

最新文章

  1. 人脸识别:insightface自定义数据集制作 | 附练手数据集
  2. 手把手教你搭建 ELK 实时日志分析平台
  3. 面试题-Category(分类)
  4. 5_计算显卡对比(20190103- )
  5. OA软件实施中三个不能做的
  6. WebSocket原理及使用场景(转载)
  7. linux 安装apache http server
  8. 暑期训练日志----2018.8.16
  9. ios13.5正式版信号怎样?
  10. pyspark--dataframe使用
  11. 【ArcGIS操作】2 高级编辑篇
  12. web项目调用qq临时会话功能实现方法
  13. Java 技术体系简介
  14. WIN10环境下VS2003的安装
  15. SpringCloud Day05---服务网关(Gateway)
  16. (转贴)联想员工亲历联想大裁员:公司不是家
  17. Java对接支付宝的支付、退款、提现
  18. 计算机操作系统原理——第一章.绪论
  19. 计算机教室云教学反思,《观察云》教学反思
  20. 使用 patchrom 移植 MIUI

热门文章

  1. GitHub创建仓库
  2. 在Sdx中使用xfOpenCV
  3. 二项树(binomial tree)
  4. UVA 12304 计算几何+圆模板
  5. 计算机所有以太网适配的ip,Win10电脑以太网没有有效的ip配置怎么解决?附上具体解决方法...
  6. Power bi 1.2连接文本文件
  7. svd在matlab中的使用,matlab - 使用SVD在MATLAB中压缩图像 - 堆栈内存溢出
  8. 计算机系统引导失败怎么办,win7系统引导选择失败怎么办|win7系统引导选择失败的解决方法...
  9. 2015 iMac如何绕过TMP安装Windows11(不用Parallels虚拟机实现macOS与Windows11双系统)
  10. 认真过好你的二十几岁