Je me demandais si il y avait une meilleure façon de le dire:
if word==wordList[0] or word==wordList[2] or word==wordList[3] or word==worldList[4]
une boucle sur la liste et vérifiez-les de cette façon.
Fait l'affaire?
OriginalL'auteur Sam | 2012-03-11
Tâche très simple, et tellement de façons de traiter avec elle. Passionnant! Voici ce que je pense:
Si vous savez à coup sûr que la liste des mots de est petit (sinon, il pourrait être trop inefficace), alors je vous recommande d'utiliser celui-ci:
Sinon, je probablement aller pour cette (encore, ça dépend!):
Par exemple, si vous souhaitez ignorer plusieurs indices:
C'est pythonic et il évolue.
Cependant, il y a de remarquable alternatives:
OriginalL'auteur robert
Ou, si vous souhaitez vérifier que les 4 premiers,
dans la liste de mots[0] + liste de mots[2:] est le plus succinct. Juste être conscient qu'il crée un nouvel objet de la liste, donc si votre liste est cher, il serait préférable d'effectuer une itération. Cependant, le fait que vous sautez un élément me dit chaque indice signifie quelque chose; pourquoi ne pas utiliser un autre type de collection?
namedtuple
? Une classe personnalisée avec__contains__
?Merci, Daenyth! Je suis encore nouveau pour la langue, mais je vais devoir envisager de créer une structure.
OriginalL'auteur Vincent Savard
Ont indexList une liste des indicies vous voulez vérifier (c'est à dire,
[0,2,3]
) et avoir la liste de mots tous les mots que vous voulez vérifier. Ensuite, la commande suivante sera de retour le 0e, 2e, et 3e éléments de la liste, comme une liste:Ce sera le retour de
[wordList[0], wordList[2], wordList[3]]
.OriginalL'auteur austin1howard