D'autres ont montré de bonnes façons d'aborder ce problème en utilisant les modules intégrés de python, mais vous pouvez utiliser numpy
si ce que tu cherches vraiment est une indexation fantaisiste.
Par exemple :
import numpy as np
lst = np.array([[1,6],[1,4],[3,4],[1,2]])
print(lst)
#array([[1, 6],
# [1, 4],
# [3, 4],
# [1, 2]])
Dans ce cas lst
est un numpy.ndarray
avec forme (4,2)
(4 lignes et 2 colonnes). Si vous voulez compter le nombre de lignes dont la première colonne (index 0) est égale à X
vous pouvez écrire :
X = 1
print((lst[:,0] == X).sum())
#3
La première partie lst[:,0]
signifie saisir toutes les lignes et seulement le premier index.
print(lst[:,0])
#[1 1 3 1]
Ensuite, vous vérifiez laquelle de ces valeurs est égale à X
:
print(lst[:,0]==X)
#[ True True False True]
Enfin, additionnez le tableau résultant pour obtenir le nombre. (Il y a une conversion implicite de bool
a int
pour la somme).