Matrice transposée au standard Python

Vous pouvez utiliser zip.

>>> matrix = [
... 	[1, 2, 3],
... 	[4, 5, 6],
... 	[7, 8, 9]
... ]
>>> list(map(list, zip(*matrix)))
[[1, 4, 7], [2, 5, 8], [3, 6, 9]]

Commentaire

Si vous ajoutez * lors du passage d'un objet itérable à une fonction, il sera développé et passé. Ainsi, zip (* matrice) et zip ([1, 2, 3], [4, 5, 6], [7, 8, 9]) sont équivalents.

Et si c'est list (zip (* matrix)), le contenu sera un taple, alors convertissez-le en liste en utilisant map.

>>> list(zip(*matrix))
[(1, 4, 7), (2, 5, 8), (3, 6, 9)]
>>> list(map(list, zip(*matrix)))
[[1, 4, 7], [2, 5, 8], [3, 6, 9]]

problème

De cette façon, vous obtiendrez une erreur lorsqu'il n'y a qu'une seule ligne.

>>> matrix = [1, 2, 3]
>>> list(map(list, zip(*matrix)))
TypeError: zip argument #1 must support iteration

Je ne sais pas combien d'occasions une ligne a pour traiter une matrice à une ligne en premier lieu.

(Une addition) Dans le cas d'une ligne, vous pouvez le faire sans ajouter «*».

>>> matrix = [1, 2, 3]
>>> list(map(list, zip(matrix)))
[[1], [2], [3]]

Recommended Posts

Matrice transposée au standard Python
[Python] Trouvez la matrice de translocation en notation d'inclusion
Produit matriciel en python numpy
Représentation matricielle avec entrée standard Python
Dessinez une matrice de diagramme de dispersion avec python
Rendre la sortie standard non bloquante en Python
Python en optimisation
CURL en Python
Métaprogrammation avec Python
Python 3.3 avec Anaconda
Géocodage en python
Méta-analyse en Python
Unittest en Python
[Python] Entrée standard
Époque en Python
Discord en Python
Allemand en Python
DCI en Python
tri rapide en python
nCr en python
N-Gram en Python
Programmation avec Python
Plink en Python
Constante en Python
Rechercher et vérifier la matrice inverse en Python
FizzBuzz en Python
Sqlite en Python
Étape AIC en Python
[Python] Opération de matrice
LINE-Bot [0] en Python
CSV en Python
Assemblage inversé avec Python
Réflexion en Python
Constante en Python
nCr en Python.
format en python
Scons en Python 3
Puyopuyo en python
python dans virtualenv
PPAP en Python
Quad-tree en Python
Réflexion en Python
Chimie avec Python
Hashable en Python
DirectLiNGAM en Python
LiNGAM en Python
Aplatir en Python
Aplatir en python
Créer un graphique de distribution normale standard en Python
Conserver les noms de clé en cas avec ConfigParser standard Python
Comment générer "Ketsumaimo" en standard en Python
Matrice unitaire et matrice inverse: Algèbre linéaire en Python <4>
Calcul matriciel et équations linéaires: Algèbre linéaire en Python <3>
Aplatir une liste standard bidimensionnelle irrégulière en Python
AtCoder # 36 quotidien avec Python
Texte de cluster en Python
Daily AtCoder # 32 en Python