Introduction
Python offre une variété de méthodes pour créer des listes d'entiers, de flottants ou de nombres aléatoires. Voici une exploration de ces méthodes, avec des exemples et leurs sorties.
Création de Listes d'Entiers
Une Liste d'Entiers de 0 à ( n )
Pour créer une liste d'entiers de 0 à ( n ), utilisez la fonction range()
.
Avec une compréhension de liste :
1 2 | n = 9 [i for i in range(n+1)] |
Sortie :
1 | [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] |
Avec la fonction list()
:
1 | list(range(n+1)) |
Sortie :
1 | [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] |
Nombres Pairs
Générez une liste de nombres pairs en filtrant les entiers divisibles par 2 :
1 | [i for i in range(10) if i % 2 == 0] |
Sortie :
1 | [0, 2, 4, 6, 8] |
Nombres Impairs
Pour les nombres impairs, filtrez les entiers qui ne sont pas divisibles par 2 :
1 | [i for i in range(10) if i % 2 != 0] |
Sortie :
1 | [1, 3, 5, 7, 9] |
Une Liste d'Entiers de ( m ) à ( n )
Définissez des bornes personnalisées pour le début (( m )) et la fin (( n )) :
1 2 | m, n = 1, 9 [i for i in range(m, n+1)] |
Sortie :
1 | [1, 2, 3, 4, 5, 6, 7, 8, 9] |
Pour des plages négatives :
1 | [i for i in range(-10, 11)] |
Sortie :
1 | [-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10] |
Listes Conditionnelles d'Entiers
Appliquez plusieurs conditions pour filtrer votre liste :
1 | [x for x in range(-10, 21) if x > 5 and x < 20] |
Sortie :
1 | [6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19] |
Utilisation de Fonctions pour Remplir des Listes
Définissez des fonctions pour appliquer des transformations, comme élever des nombres au carré :
1 2 3 4 | def square(x): return x**2 [square(x) for x in range(10)] |
Sortie :
1 | [0, 1, 4, 9, 16, 25, 36, 49, 64, 81] |
Création de Listes de Nombres Flottants
Avec arange
de NumPy
Créez des flottants avec un intervalle spécifique :
1 2 3 | import numpy as np i_start, i_end, step = 2, 8, 0.5 list(np.arange(i_start, i_end, step)) |
Sortie :
1 | [2.0, 2.5, 3.0, 3.5, 4.0, 4.5, 5.0, 5.5, 6.0, 6.5, 7.0, 7.5] |
Avec linspace
de NumPy
Pour créer des flottants équidistants dans une plage :
1 2 | i_start, i_end, count = 12, 16, 8 list(np.linspace(i_start, i_end, count)) |
Sortie :
1 2 | [12.0, 12.571428571428571, 13.142857142857142, 13.714285714285714, 14.285714285714286, 14.857142857142858, 15.428571428571429, 16.0] |
Création de Listes de Nombres Aléatoires
Nombres Entiers Aléatoires
Utilisez randint
du module random
:
1 2 | import random [random.randint(0, 1) for _ in range(10)] |
Sortie :
1 | [1, 0, 1, 1, 0, 0, 1, 1, 0, 0] # Varie à chaque exécution |
Échantillons Aléatoires
Générez un échantillon d'entiers uniques aléatoires :
1 | random.sample(range(1, 100), 10) |
Sortie :
1 | [45, 67, 89, 23, 5, 78, 56, 12, 34, 90] # Varie à chaque exécution |
Listes Spécialisées
Jours d'un Mois Spécifique
Générez une liste d'entiers représentant les jours d'un mois avec monthrange
du module calendar
:
1 2 3 4 5 | from calendar import monthrange year, month = 2008, 2 days_in_month = monthrange(year, month)[1] [day for day in range(1, days_in_month + 1)] |
Sortie :
1 2 | [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29] |
Conclusion
Les outils de Python pour créer des listes sont polyvalents, efficaces et adaptés à diverses tâches. Que ce soit pour générer des séquences numériques, des données aléatoires ou des listes basées sur des dates, ces méthodes offrent des solutions robustes et évolutives. La personnalisation et l'application de conditions font de Python un excellent choix pour la manipulation et l'analyse des données.
Références
Liens | Site |
---|---|
List Comprehensions | python doc |
list() | python doc |
numpy.linspace | scipy doc |
numpy.arange | scipy doc |