python对矩阵进行转置的2种处理方法


Posted in Python onJuly 17, 2019

方法一 :使用常规的思路

def transpose(M):
  # 初始化转置后的矩阵
  result = []
  # 获取转置前的行和列
  row, col = shape(M)
  # 先对列进行循环
  for i in range(col):
    # 外层循环的容器
    item = [] 
    # 在列循环的内部进行行的循环
    for index in range(row):
      item.append(M[index][i])
    result.append(item)
  return result

思路:矩阵的转置就是从行变成列, 列变成行

  • 先定义一个最终存放矩阵的容器
  • 先对列进行循环i,并定义一个临时数组用于存放数据,在每次列的循环内部,再次对行进行循环j,取第M[j][i]个元素存入一个临时数组中
  • 在每次列循环完毕,将临时数组存入最终数组中
  • 当列循环完毕, 最终数组就是矩阵的转置

方法二:使用zip解包

def transpose(M):
  # 直接使用zip解包成转置后的元组迭代器,再强转成list存入最终的list中
  return [list(row) for row in zip(*M)]

思路:

zip 解包后,返回一个将多个可迭代对象组合成一个元组序列的迭代器,正如:

my_zip = list(zip(['a', 'b', 'c'], [1, 2, 3])) 
print(my_zip) # [('a', 1), ('b', 2), ('c', 3)]

在每次循环中将元组强转成list 并存入总list中

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python笔记(2)
Oct 24 Python
Django的URLconf中使用缺省视图参数的方法
Jul 18 Python
python 请求服务器的实现代码(http请求和https请求)
May 25 Python
python删除字符串中指定字符的方法
Aug 13 Python
python运行时强制刷新缓冲区的方法
Jan 14 Python
pytorch中的自定义反向传播,求导实例
Jan 06 Python
tensorflow实现残差网络方式(mnist数据集)
May 26 Python
Python 如何定义匿名或内联函数
Aug 01 Python
基于CentOS搭建Python Django环境过程解析
Aug 24 Python
Pycharm2020最新激活码|永久激活(附最新激活码和插件的详细教程)
Sep 29 Python
python 使用xlsxwriter循环向excel中插入数据和图片的操作
Jan 01 Python
python实现简易名片管理系统
Apr 11 Python
使用Filter过滤python中的日志输出的实现方法
Jul 17 #Python
纯python进行矩阵的相乘运算的方法示例
Jul 17 #Python
python中update的基本使用方法详解
Jul 17 #Python
python利用wx实现界面按钮和按钮监听和字体改变的方法
Jul 17 #Python
使用Python和Scribus创建一个RGB立方体的方法
Jul 17 #Python
python实现点击按钮修改数据的方法
Jul 17 #Python
python 批量添加的button 使用同一点击事件的方法
Jul 17 #Python
You might like
Dedecms V3.1 生成HTML速度的优化办法
2007/03/18 PHP
Ajax+PHP 边学边练之四 表单
2009/11/27 PHP
rrmdir php中递归删除目录及目录下的文件
2011/05/15 PHP
php调用google接口生成二维码示例
2014/04/28 PHP
php curl抓取网页的介绍和推广及使用CURL抓取淘宝页面集成方法
2015/11/30 PHP
PHP单元测试框架PHPUnit用法详解
2019/01/23 PHP
yii2.0框架数据库操作简单示例【添加,修改,删除,查询,打印等】
2020/04/13 PHP
jQuery 版本的文本输入框检查器Input Check
2009/07/09 Javascript
jQuery结合PHP+MySQL实现二级联动下拉列表[实例]
2011/11/15 Javascript
js 遍历对象的属性的代码
2011/12/29 Javascript
查看图片(前进后退)功能实现js代码
2013/04/24 Javascript
javascript学习笔记--数字格式类型
2014/05/22 Javascript
js通过iframe加载外部网页的实现代码
2015/04/05 Javascript
在JavaScript中操作时间之getMonth()方法的使用
2015/06/10 Javascript
javascript之Boolean类型对象
2016/06/07 Javascript
fullCalendar中文API官方文档
2017/02/07 Javascript
详解mpvue scroll-view自动回弹bug解决方案
2018/10/01 Javascript
vue 左滑删除功能的示例代码
2019/01/28 Javascript
Vue中对iframe实现keep alive无刷新的方法
2019/07/23 Javascript
js实现转动骰子模型
2019/10/24 Javascript
Node配合WebSocket做多文件下载以及进度回传
2019/11/07 Javascript
[00:56]跨越时空加入战场 全新祈求者身心“失落奇艺侍祭”展示
2019/07/20 DOTA
Python新手们容易犯的几个错误总结
2017/04/01 Python
pycharm远程调试openstack的图文教程
2017/11/21 Python
Sublime开发python程序的示例代码
2018/01/24 Python
利用python循环创建多个文件的方法
2018/10/25 Python
PyQt5中向单元格添加控件的方法示例
2020/03/24 Python
Revolution Beauty美国官网:英国知名化妆品网站
2018/07/23 全球购物
Cult Gaia官网:美国生活方式品牌
2019/08/16 全球购物
舞蹈专业求职信
2014/06/13 职场文书
实习护士自荐信
2014/06/21 职场文书
尊老爱亲美德少年事迹材料
2014/08/14 职场文书
中学政教处工作总结
2015/08/13 职场文书
跟班学习心得体会(共6篇)
2016/01/23 职场文书
2019年消防宣传标语集锦
2019/11/21 职场文书
Python使用sql语句对mysql数据库多条件模糊查询的思路详解
2021/04/12 Python