Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用Python输出多维列表_Python - Fatal编程技术网

如何使用Python输出多维列表

如何使用Python输出多维列表,python,Python,我正在尝试将第一个多维数组转换为第二个多维数组: [[1,4,7], [3,6,2], [2,5,9], [88,6,1]] 到 我写了这个函数 def rotate(myList): newList = [] reverseList = list(reversed(myList)) for subList in reverseList: newList.append(subList[0]) print(newList) rotate([[1,

我正在尝试将第一个多维数组转换为第二个多维数组:

[[1,4,7], [3,6,2], [2,5,9], [88,6,1]]

我写了这个函数

def rotate(myList):
    newList = []
    reverseList = list(reversed(myList))
    for subList in reverseList:
        newList.append(subList[0])
    print(newList)

rotate([[1,4,7], [3,6,2], [2,5,9], [88,6,1]])
这个输出

[88, 2, 3, 1]
我反转多维列表,对于反转多维列表中的每个子列表,我将第一个元素附加到一个名为newList的新列表中

这是一个良好的开端,但并不完整。如何输出其余的列表?在这种情况下,我不知道如何将多个列表输出到新的多维列表。

zip()
是您的朋友

def rotate(mylist):
    return list(zip(*mylist[::-1]))
这会反转
mylist
,将每个子列表发送到
zip()
,并将其转换为
列表

>>> rotate([[1,4,7], [3,6,2], [2,5,9], [88,6,1]])
[(88, 2, 3, 1), (6, 5, 6, 4), (1, 9, 2, 7)]
zip()
是你的朋友

def rotate(mylist):
    return list(zip(*mylist[::-1]))
这会反转
mylist
,将每个子列表发送到
zip()
,并将其转换为
列表

>>> rotate([[1,4,7], [3,6,2], [2,5,9], [88,6,1]])
[(88, 2, 3, 1), (6, 5, 6, 4), (1, 9, 2, 7)]

首先,可以创建一个空多维数组,其中包含希望输出的行数和列数,然后用原始矩阵的换位值填充该数组

    def rotate(A, m, n):
        A = A[::-1]
        C = [[0 for j in range(n)] for i in range(m)]
        for i in range(n):
            for j in range(m):
                C[j][i] = A[i][j]
        return C

首先,可以创建一个空多维数组,其中包含希望输出的行数和列数,然后用原始矩阵的换位值填充该数组

    def rotate(A, m, n):
        A = A[::-1]
        C = [[0 for j in range(n)] for i in range(m)]
        for i in range(n):
            for j in range(m):
                C[j][i] = A[i][j]
        return C

我不知道zip的事。这是一个完美的解决方案。如果时间允许,我会接受答案。谢谢,我不得不问,*做什么?@PencilCrate-它将iterable解包,并将每个元素作为单独的参数发送。试试
print([1,2,3])
print(*[1,2,3])
。我不知道zip。这是一个完美的解决方案。如果时间允许,我会接受答案。谢谢,我不得不问,*做什么?@PencilCrate-它将iterable解包,并将每个元素作为单独的参数发送。尝试
打印([1,2,3])
打印(*[1,2,3])
。在创建时填充它有什么问题?您可能应该保留相同的方法签名,只需自动计算
m
n
<代码>定义旋转(A):返回[[A[:-1][j][i]表示范围内的j(len(A))]表示范围内的i(len(A[0])]
。在创建时填充它有什么问题?您可能应该保留相同的方法签名,只需自动计算
m
n
<代码>定义旋转(A):返回[[A[:-1][j][i]表示范围内的j(len(A))]表示范围内的i(len(A[0])]