Maison > développement back-end > Tutoriel Python > Quel est le moyen le plus efficace de créer des listes d'éléments uniques répétés en Python ?

Quel est le moyen le plus efficace de créer des listes d'éléments uniques répétés en Python ?

Susan Sarandon
Libérer: 2024-12-07 10:51:13
original
368 Les gens l'ont consulté

What's the Most Efficient Way to Create Lists of Repeated Single Items in Python?

Création de listes de répétitions d'éléments uniques

Pour générer une série de listes contenant le même élément répété n fois, il existe plusieurs approches.

Une méthode courante consiste à utiliser la compréhension de liste :

[e for number in range(n)]
Copier après la connexion

Cependant, si vous recherchez une approche alternative, pensez à utiliser l'opérateur de multiplication :

[e] * n
Copier après la connexion

Bien que cette méthode duplique effectivement l'élément e n fois, notez que si e est une liste vide, vous obtiendrez une liste avec n références à la même liste , plutôt que n listes vides séparées.

Considérations sur les performances

Lors de la comparaison de l'efficacité temporelle de différentes méthodes, on suppose souvent que la répétition est supérieure à [e] * n. Cependant, il est important de reconnaître que la répétition ne crée pas immédiatement une liste. Au lieu de cela, il renvoie un objet qui permet la création d'une liste lorsque cela est nécessaire.

Pour une comparaison des performances plus précise :

timeit.timeit('list(itertools.repeat(0, 10))', 'import itertools', number = 1000000)
Copier après la connexion

Cette modification révèle que [e] * n est le solution plus efficace pour générer des listes réelles. Cependant, si des éléments générés paresseusement sont souhaités, la répétition reste une option viable.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal