Maison développement back-end Tutoriel Python Une manière élégante et simple d'utiliser les listes Python : compréhensions de listes

Une manière élégante et simple d'utiliser les listes Python : compréhensions de listes

Sep 28, 2024 am 08:10 AM

An elegant and simple way to use Python Lists: List Comprehensions

Vous pourriez penser que la Compréhension de liste est un concept avancé. Cependant, il peut simplifier votre code avec une seule une seule ligne dans des situations délicates. Il est temps de comprendre comment cela fonctionne. Je vais l'expliquer à un niveau débutant avec des exemples.

Qu’est-ce que la compréhension de liste exactement ?

On voit souvent la notation l2 = [x 1 pour x dans l]. On dit que c'est la même chose que ça :

l2 = []
for x in l:
    x = x + 1
l2.append(x)
Copier après la connexion

Pour les deux cas, si on commence par l = [10, 100, 1000], l2 sera :

[11, 101, 1001]
Copier après la connexion

La première syntaxe est ce que nous appelons la compréhension de liste.
Vous préférerez peut-être la boucle for habituelle, mais à la fin de cet article, je vous promets que vous serez en confiance avec la compréhension de liste !

De plus, vérifions la définition officielle détaillée de la documentation https://docs.python.org/3/tutorial/datastructures.html#list-comprehensions

Les compréhensions de listes fournissent un moyen concis de créer des listes. Les applications courantes consistent à créer de nouvelles listes où chaque élément est le résultat de certaines opérations appliquées à chaque membre d'une autre séquence ou itérable, ou à créer une sous-séquence de ces éléments qui satisfont à une certaine condition.

Décomposons-le davantage. La compréhension de liste est simplement une façon différente d'écrire du code, plus court et plus facile pour créer une nouvelle liste. Le résultat de la compréhension de la liste est une liste, c'est pourquoi nous l'attribuons à une liste.
Passons en revue la deuxième partie de la définition, qui présente des exemples courants. Cela devrait être fait à l'aide d'exemples spécifiques.
1.

fast_foods = ["Burger", "Pizza", "Tacos", "Fried Chicken", "Hot Dog"]
uppercase_fast_foods = [food.upper() for food in fast_foods]
Copier après la connexion

Après cela, uppercase_fast_foods sera :

['BURGER', 'PIZZA', 'TACOS', 'FRIED CHICKEN', 'HOT DOG']
Copier après la connexion

Nous utilisons la fonction upper() pour mettre chaque aliment de notre liste en majuscules. En conséquence, tous les éléments sont désormais en majuscules. C'est ainsi que nous 'créons de nouvelles listes où chaque élément est le résultat de certaines opérations appliquées à chaque membre d'une autre séquence ou itérable.'
2.

fast_foods = ["Burger", "Pizza", "Tacos", "Fried Chicken", "Hot Dog"]
foods_with_space = [food for food in fast_foods if " " in food]
Copier après la connexion

Après cela, foods_with_space sera :

['Fried Chicken', 'Hot Dog']
Copier après la connexion

La ligne de code ci-dessus récupère les éléments de la liste qui contiennent un caractère espace. C'est ainsi que nous 'créons de nouvelles listes où chaque élément est le résultat de certaines opérations appliquées à chaque membre d'une autre séquence ou itérable.'

Exemples de compréhension de liste

J'ai utilisé la compréhension de liste dans de nombreux problèmes, car chaque fois que je rencontrais trop de boucles for, je pensais : "Pas de problème, je vais juste les simplifier". Il s’avère que c’est la même logique, juste plus propre ! ?
Sans plus tarder, voici quelques-uns des exemples les plus pertinents que j’ai trouvé :
1. Modifier chaque élément de la liste

foods = ["Burger", "Fries", "Fried Chicken", "Hot Dog", "Pizza"]
foods_with_version = [food + ' - 2024' for food in foods]
print(foods_with_version)
Copier après la connexion

Sortie :

['Burger - 2024', 'Fries - 2024', 'Fried Chicken - 2024', 'Hot Dog - 2024', 'Pizza - 2024']
Copier après la connexion

Dans cet exemple, nous prenons une liste d'aliments et ajoutons « - 2024 » à chacun d'eux. Nous utilisons la compréhension de liste pour créer rapidement une nouvelle liste avec ces noms mis à jour.
2. Faire une sous-liste à partir d'une liste basée sur une condition

foods = ["Burger", "Fried Chicken", "Hot Dog", "Fries", "Pizza"]
long_foods = [food for food in foods if len(food) > 7]
print(long_foods)
Copier après la connexion

Sortie :

['Fried Chicken']`
Copier après la connexion

Dans cet exemple, nous créons une liste d'aliments et filtrons ceux qui comportent plus de 7 caractères. Nous utilisons la compréhension de liste avec une condition pour y parvenir.
3. Utilisez la fonction range avec compréhension de liste pour créer une liste

x = [i for i in range(10, 20, 2)]
print(x)
Copier après la connexion

Sortie :

[10, 12, 14, 16, 18]
Copier après la connexion

Dans cet exemple, nous créons une liste de nombres allant de 10 à 18 en utilisant la compréhension de liste avec range().
4. Appliquer la compréhension de liste à une chaîne

input_string = "hello world"
marked_vowels = ['*' if char in 'aeiouAEIOU' else char for char in input_string]
print(marked_vowels)
Copier après la connexion

Sortie :

['h', '*', 'l', 'l', '*', ' ', 'w', 'o', 'r', 'l', 'd']
Copier après la connexion

Dans ce dernier exemple, nous prenons une chaîne et marquons ses voyelles avec un astérisque (*). Nous utilisons la compréhension de liste pour créer une nouvelle liste basée sur la chaîne d'origine.

Conclusion

Tout au long de cet article, j'ai couvert toutes les informations de base sur la compréhension des listes, de la définition à divers exemples qui les expliquent plus en détail. J'espère que tout est clair et que vous vous sentez plus motivé pour intégrer désormais la compréhension de listes dans votre code Python !

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!

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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

<🎜>: Grow A Garden - Guide de mutation complet
3 Il y a quelques semaines By DDD
<🎜>: Bubble Gum Simulator Infinity - Comment obtenir et utiliser les clés royales
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Nordhold: Système de fusion, expliqué
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Mandragora: Whispers of the Witch Tree - Comment déverrouiller le grappin
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Tutoriel Java
1666
14
Tutoriel PHP
1273
29
Tutoriel C#
1252
24
Python vs C: applications et cas d'utilisation comparés Python vs C: applications et cas d'utilisation comparés Apr 12, 2025 am 12:01 AM

Python convient à la science des données, au développement Web et aux tâches d'automatisation, tandis que C convient à la programmation système, au développement de jeux et aux systèmes intégrés. Python est connu pour sa simplicité et son écosystème puissant, tandis que C est connu pour ses capacités de contrôle élevées et sous-jacentes.

Python: jeux, GUIS, et plus Python: jeux, GUIS, et plus Apr 13, 2025 am 12:14 AM

Python excelle dans les jeux et le développement de l'interface graphique. 1) Le développement de jeux utilise Pygame, fournissant des fonctions de dessin, audio et d'autres fonctions, qui conviennent à la création de jeux 2D. 2) Le développement de l'interface graphique peut choisir Tkinter ou Pyqt. Tkinter est simple et facile à utiliser, PYQT a des fonctions riches et convient au développement professionnel.

Python vs C: courbes d'apprentissage et facilité d'utilisation Python vs C: courbes d'apprentissage et facilité d'utilisation Apr 19, 2025 am 12:20 AM

Python est plus facile à apprendre et à utiliser, tandis que C est plus puissant mais complexe. 1. La syntaxe Python est concise et adaptée aux débutants. Le typage dynamique et la gestion automatique de la mémoire le rendent facile à utiliser, mais peuvent entraîner des erreurs d'exécution. 2.C fournit des fonctionnalités de contrôle de bas niveau et avancées, adaptées aux applications haute performance, mais a un seuil d'apprentissage élevé et nécessite une gestion manuelle de la mémoire et de la sécurité.

Python et temps: tirer le meilleur parti de votre temps d'étude Python et temps: tirer le meilleur parti de votre temps d'étude Apr 14, 2025 am 12:02 AM

Pour maximiser l'efficacité de l'apprentissage de Python dans un temps limité, vous pouvez utiliser les modules DateTime, Time et Schedule de Python. 1. Le module DateTime est utilisé pour enregistrer et planifier le temps d'apprentissage. 2. Le module de temps aide à définir l'étude et le temps de repos. 3. Le module de planification organise automatiquement des tâches d'apprentissage hebdomadaires.

Python vs. C: Explorer les performances et l'efficacité Python vs. C: Explorer les performances et l'efficacité Apr 18, 2025 am 12:20 AM

Python est meilleur que C dans l'efficacité du développement, mais C est plus élevé dans les performances d'exécution. 1. La syntaxe concise de Python et les bibliothèques riches améliorent l'efficacité du développement. Les caractéristiques de type compilation et le contrôle du matériel de CC améliorent les performances d'exécution. Lorsque vous faites un choix, vous devez peser la vitesse de développement et l'efficacité de l'exécution en fonction des besoins du projet.

Quelle partie fait partie de la bibliothèque standard Python: listes ou tableaux? Quelle partie fait partie de la bibliothèque standard Python: listes ou tableaux? Apr 27, 2025 am 12:03 AM

PythonlistSaReparmentofthestandardLibrary, tandis que les coloccules de colocède, tandis que les colocculations pour la base de la Parlementaire, des coloments de forage polyvalent, tandis que la fonctionnalité de la fonctionnalité nettement adressée.

Python: automatisation, script et gestion des tâches Python: automatisation, script et gestion des tâches Apr 16, 2025 am 12:14 AM

Python excelle dans l'automatisation, les scripts et la gestion des tâches. 1) Automatisation: La sauvegarde du fichier est réalisée via des bibliothèques standard telles que le système d'exploitation et la fermeture. 2) Écriture de script: utilisez la bibliothèque PSUTIL pour surveiller les ressources système. 3) Gestion des tâches: utilisez la bibliothèque de planification pour planifier les tâches. La facilité d'utilisation de Python et la prise en charge de la bibliothèque riche en font l'outil préféré dans ces domaines.

Apprendre Python: 2 heures d'étude quotidienne est-elle suffisante? Apprendre Python: 2 heures d'étude quotidienne est-elle suffisante? Apr 18, 2025 am 12:22 AM

Est-ce suffisant pour apprendre Python pendant deux heures par jour? Cela dépend de vos objectifs et de vos méthodes d'apprentissage. 1) Élaborer un plan d'apprentissage clair, 2) Sélectionnez les ressources et méthodes d'apprentissage appropriées, 3) la pratique et l'examen et la consolidation de la pratique pratique et de l'examen et de la consolidation, et vous pouvez progressivement maîtriser les connaissances de base et les fonctions avancées de Python au cours de cette période.

See all articles