Maison >développement back-end >Tutoriel Python >Comment transposer une matrice en Python à l'aide de Zip et de l'opérateur * ?
Transposer une matrice en Python
La transposition d'une matrice implique de changer les lignes et les colonnes, ce qui donne une nouvelle matrice où le jème élément du La ième ligne devient le ième élément de la jième rangée. Par exemple, transposer la matrice 2x3 suivante :
A=[[1, 2, 3], [4, 5, 6]]
produit la matrice transposée :
[[1, 4], [2, 5], [3, 6]]
Utiliser Zip avec *
Un outil efficace Une façon de transposer une matrice en Python est d'utiliser la fonction zip() en conjonction avec l'opérateur * :
<code class="python">def transpose(matrix): return zip(*matrix)</code>
Cette approche parcourt les colonnes de la matrice d'entrée et produit des tuples représentant les lignes de la matrice transposée. matrice. Si une liste de listes est souhaitée en sortie, les éléments suivants peuvent être utilisés :
<code class="python">def transpose(matrix): return [list(x) for x in zip(*matrix)]</code>
Alternativement, on peut appliquer la fonction map() avec le constructeur de liste :
<code class="python">def transpose(matrix): return map(list, zip(*matrix))</code>
Ces méthodes commutent efficacement les indices de la matrice d'entrée, ce qui donne une matrice transposée qui répond aux critères souhaités.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!