Maison >développement back-end >Tutoriel Python >Puis-je récupérer les N premiers éléments d'un générateur ou d'une liste en Python ?
Prendre les N principaux éléments d'un générateur ou d'une liste en Python
Dans cette question, l'utilisateur se renseigne sur l'équivalent Python du LINQ commande Take(5) pour récupérer les cinq premiers éléments d'un tableau. Pour répondre à cette demande, plusieurs solutions sont proposées.
Découpage d'une liste
Les listes Python peuvent être découpées en utilisant la syntaxe suivante :
array[start:stop:step]
Où chaque paramètre peut être omis, ce qui donne les tranches valides suivantes :
Par exemple :
top5 = array[:5]
Découper un générateur
Découper directement un générateur en Python n'est pas possible. À la place, la fonction itertools.islice() peut être utilisée, qui accepte la syntaxe suivante :
itertools.islice(generator, start, stop, step)
En utilisant itertools.islice(), vous pouvez obtenir les cinq premiers éléments d'un générateur :
import itertools top5 = itertools.islice(my_list, 5)
Considérations supplémentaires
Lorsque vous tranchez un générateur, vous devez noter qu'il l'épuise partiellement. Pour conserver le générateur intact, envisagez d'abord de le convertir en tuple ou en liste, tel que :
result = tuple(generator)
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!