Je me surprends souvent à écrire du code comme ceci:Comment obtenir l'index et l'élément de liste simultanément dans Python?
k = 0
for i in mylist:
# y[k] = some function of i
k += 1
Au lieu de cela, je pouvais faire
for k in range(K):
# y[k] = some function of mylist[k]
mais cela ne semble pas "pythonique". (Vous savez ... indexation Ick!) Existe-t-il une syntaxe qui me permet d'extraire simultanément l'index (k) et l'élément (i) en utilisant soit une boucle, soit une compréhension de liste, soit un générateur? La tâche est dans l'informatique scientifique, donc il y a beaucoup de choses dans le corps de la boucle, rendant une compréhension de la liste probablement pas assez puissante en soi, je pense.
Je me réjouis également des conseils sur des concepts connexes, que je n'ai peut-être même pas. Je vous remercie.
vous permet également Énumérer de commencer l'index où vous aimez en utilisant le paramètre de démarrage. C'est assez pratique parfois. http://docs.python.org/library/functions.html#enumerate – jps
Il se peut que je sois seul, mais utiliser 'i' comme variable pour contenir chaque élément de l'itérable me rejetterait en lisant ce code. Les noms de variables standard «i» et «j» ne sont-ils pas assez courants pour les index en boucle? –
@Will: Je suis d'accord, je l'ai juste utilisé car l'OP utilise cette relation dans sa question. –