matrixflip(m,d)其中m是矩阵,d可以是h或v,分别是水平和垂直

问题描述 投票:0回答:1

我正在尝试编写一个函数的python代码,它应该返回水平和垂直翻转的矩阵

我是python的新手

def matrixflip(myl,'v'):output = list(myl [:: - 1])返回输出

里程= [[1,2],[3,4]]

英里[[1,2],[3,4]]

矩阵翻转(英里,'h')[[2,1],[4,3]]

英里[[1,2],[3,4]]

矩阵翻转(英里,'v')[[3,4],[1,2]]

英里[[1,2],[3,4]]

matrix flip
1个回答
0
投票
import copy
def matrixflip(l,char):
    myl = copy.deepcopy(l)
    if char == 'h':
        for i in range(len(myll)):
            myl[i].reverse()
    if char == 'v':
        i,j = 0, len(myl)-1
        while(i<j):
            myl[i], myl[j] = myl[j], myl[i]
            i+=1
            j-=1
    return(myl)

使用复制是因为原始矩阵值已更改。所以不要改变原始列表。

© www.soinside.com 2019 - 2024. All rights reserved.