Correction de l'erreur TypeError: iteration over a 0-d array dans Python NumPy
Vaibhav Vaibhav
14 avril 2022
Python
Python Array
Python Error

L’erreur TypeError: iteration over a 0-d array
se produit lorsque l’itération est effectuée sur un itérable de dimension 0
. Dans cet article, nous allons apprendre à corriger l’erreur TypeError: iteration over a 0-d array
dans Python NumPy.
Comment réparer l’erreur TypeError: iteration over a 0-d array
due dans Python NumPy
Le code Python suivant décrit un scénario dans lequel nous pouvons rencontrer cette erreur.
import numpy as np
data = {
"AB": 1.01,
"CD": 2.02,
"EF": 3.03,
"GH": 4.04,
"IJ": 5.05,
}
keys, values = np.array(data.items()).T
print(keys)
print(values)
Production :
Traceback (most recent call last):
File "<string>", line 11, in <module>
TypeError: iteration over a 0-d array
La raison derrière cette erreur est le type de données de data.items()
, qui est <class 'dict_items'>
. Pour éviter cette erreur, nous devons convertir son type de données en une liste ou un tuple. Le code Python suivant montre comment corriger cette erreur en utilisant une liste et un tuple.
Solution utilisant une liste.
import numpy as np
data = {
"AB": 1.01,
"CD": 2.02,
"EF": 3.03,
"GH": 4.04,
"IJ": 5.05,
}
print(type(list(data.items())))
keys, values = np.array(list(data.items())).T
print(keys)
print(values)
Production :
<class 'list'>
['AB' 'CD' 'EF' 'GH' 'IJ']
['1.01' '2.02' '3.03' '4.04' '5.05']
Ci-dessous une solution utilisant un tuple.
import numpy as np
data = {
"AB": 1.01,
"CD": 2.02,
"EF": 3.03,
"GH": 4.04,
"IJ": 5.05,
}
print(type(tuple(data.items())))
keys, values = np.array(tuple(data.items())).T
print(keys)
print(values)
Production :
<class 'tuple'>
['AB' 'CD' 'EF' 'GH' 'IJ']
['1.01' '2.02' '3.03' '4.04' '5.05']
Author: Vaibhav Vaibhav