Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Exemples Pratiques de Generators | Itérateurs et Générateurs
Concepts Avancés de Python
course content

Contenu du cours

Concepts Avancés de Python

Concepts Avancés de Python

1. Modules et Imports
2. Gestion des Erreurs
3. Gestion des Fichiers
4. Cadre Pytest
5. Cadre Unittest
6. Itérateurs et Générateurs

book
Exemples Pratiques de Generators

Les générateurs peuvent être utilisés comme des gestionnaires de contexte légers pour gérer efficacement les ressources, telles que les connexions à la base de données, les opérations sur les fichiers ou les mécanismes de verrouillage. Avec le module contextlib, les générateurs peuvent gérer l'allocation et le nettoyage des ressources de manière transparente.

1234567891011121314
from contextlib import contextmanager @contextmanager def database_connection(): print("Opening database connection") connection = "Database Connection" # Simulated connection try: yield connection finally: print("Closing database connection") # Using the generator as a context manager with database_connection() as conn: print(f"Using {conn}")
copy

Traitement efficace des grandes quantités de données

Les générateurs sont idéaux pour construire des pipelines de données qui traitent de grands ensembles de données de manière paresseuse. Chaque étape du pipeline peut être implémentée comme un générateur, permettant un traitement efficace et économe en mémoire.

12345678910111213141516171819202122232425262728293031323334353637383940
import re # Stage 1: Read lines lazily def read_lines(text): for line in text.split("\n"): yield line # Stage 2: Filter non-empty lines def filter_lines(lines): for line in lines: if line.strip(): yield line # Stage 3: Extract words lazily def extract_words(lines): for line in lines: for word in re.findall(r'\w+', line): yield word # Stage 4: Transform words to lowercase def lowercase_words(words): for word in words: yield word.lower() # Input text text = """Generators are powerful tools They allow efficient data processing This pipeline demonstrates their usage""" # Build the pipeline lines = read_lines(text) filtered = filter_lines(lines) words = extract_words(filtered) lowercased = lowercase_words(words) # Process the data print("Processed words:") for word in lowercased: print(word)
copy

1. Que se passe-t-il lorsqu'une fonction génératrice n'a plus de valeurs à yield?

2. Quelle sera la sortie du code suivant ?

3. Que fait le code suivant ?

Que se passe-t-il lorsqu'une fonction génératrice n'a plus de valeurs à `yield`?

Que se passe-t-il lorsqu'une fonction génératrice n'a plus de valeurs à yield?

Sélectionnez la réponse correcte

Quelle sera la sortie du code suivant ?

Quelle sera la sortie du code suivant ?

Sélectionnez la réponse correcte

Que fait le code suivant ?

Que fait le code suivant ?

Sélectionnez la réponse correcte

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 6. Chapitre 5
We're sorry to hear that something went wrong. What happened?
some-alt