Accès à plusieurs éléments de liste par index
La sélection d'éléments spécifiques dans une liste en fonction de leur index est une opération courante en programmation. Dans cette question, un utilisateur recherche une méthode optimale pour créer une nouvelle liste contenant des éléments d'une liste donnée à des indices prédéfinis.
L'approche de l'utilisateur consistant à parcourir les indices et à accéder à chaque élément individuellement est une solution simple. Cependant, il existe des approches alternatives qui peuvent être plus efficaces ou plus concises.
Une alternative suggérée consiste à utiliser la fonction Operator.itemgetter. Cette fonction prend un ensemble d'indices comme arguments et renvoie un objet appelable qui peut être appliqué à une liste pour récupérer les éléments correspondants. Par exemple :
from operator import itemgetter a = [-2, 1, 5, 3, 8, 5, 6] b = [1, 2, 5] print(itemgetter(*b)(a)) # Result: (1, 5, 5)
Une autre alternative consiste à utiliser la bibliothèque NumPy. NumPy fournit de puissantes opérations sur les tableaux, notamment la possibilité d'accéder à des éléments basés sur des index. Ceci peut être réalisé en utilisant la syntaxe a[b] :
import numpy as np a = np.array([-2, 1, 5, 3, 8, 5, 6]) b = [1, 2, 5] print(list(a[b])) # Result: [1, 5, 5]
Il convient de noter que la solution actuelle de l'utilisateur est également valide et raisonnable. Le choix entre les différentes méthodes dépend des préférences personnelles et du contexte spécifique dans lequel elles sont utilisées.
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3