Python:二维列表下标互换方式(矩阵转置)

yipeiwu_com7年前Python基础

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

#!/usr/bin/env python
# coding:UTF-8
 
 
"""
@version: python3.x
@author:曹新健
@contact: 617349013@qq.com
@software: PyCharm
@file: 二维列表下标互换(矩阵转置).py
@time: 2018/12/30 10:24
"""
'''
矩阵转置
将[[1,2,3],[4,5,6],[7,8,9]]
转换为[[1,4,7],[2,5,8],[3,6,9]]
'''
 
'''
#方法一:默认列表值均初始为0,防止换为位置时,坐标越界
list1 = [[1,2,3],[4,5,6],[7,8,9]]
list2 = [[0,0,0],[0,0,0],[0,0,0]]
for i in range(3):
  for j in range(3):
    list2[j][i] = list1[i][j]
print(list2)
'''
 
'''
#方法二:互换位置,空列表插入值
list1 = [[1,2,3],[4,5,6],[7,8,9]]
list2 = [[],[],[]]
for i in range(3):
  for j in range(3):
    list2[j].insert(i,list1[i][j])
print(list2)
'''
 
'''
#方法三:行列互换
list1 = [[1,2,3],[4,5,6],[7,8,9]]
print([[list1[j][i] for i in range(3)] for j in range(3)])
'''
 
#方法四:取每行的第i列,即列转换为行
list1 = [[1,2,3],[4,5,6],[7,8,9]]
print([[row[i] for row in list1] for i in range(3)])

以上这篇Python:二维列表下标互换方式(矩阵转置)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Pycharm最新激活码2019(推荐)

Pycharm最新激活码2019(推荐)

pycharm2019激活码是专门针对与pycharm2019这一款软件而研发的激活码,能够完美激活软件,并且能够支持2019.1版本,理论上也能够支持后继的2019.2,2019.3,...

Python学习笔记之图片人脸检测识别实例教程

Python学习笔记之图片人脸检测识别实例教程

前言 随着科技的发展,人脸识别技术在许多领域得到的非常广泛的应用,手机支付、银行身份验证、手机人脸解锁等等。 识别 废话少说,这里我们使用 opencv 中自带了 haar人脸特征分...

Python中异常重试的解决方案详解

前言 大家在做数据抓取的时候,经常遇到由于网络问题导致的程序保存,先前只是记录了错误内容,并对错误内容进行后期处理。 原先的流程: def crawl_page(url): pa...

浅谈Python接口对json串的处理方法

最近学习Python接口测试,对于接口测试完全小白。大概一周的学习成果进行总结。 1.接口测试: 目前涉及到的只是对简单单一的接口进行参数传递,得到返回自。 2.关于各种概念: 2.1...

Django中日期处理注意事项与自定义时间格式转换详解

Django中日期处理注意事项与自定义时间格式转换详解

前言 我们在用Django创建models时,常常会涉及时间日期字段的处理,Django里日期相关Field有DateTimeField、DateField和TimeField三种类型,...