Exemples⚓︎
Voyons quelques exemples d'utilisations.
Exemple 1⚓︎
Pour obtenir les parties entières d'une série de valeurs décimales contenues dans maliste = [3.14, 2.718, 1.414]
, je peux faire ceci :
maliste = [3.14, 1.414, 2.718]bksl-nlnouvellepy-undliste = []bksl-nlfor valeur in maliste: # pour chaque valeur de ma listebksl-nl nouvellepy-undliste.append(int(valeur)) # ajouter à la nouvelle liste la partie entière de la valeurbksl-nlprint("Liste des parties entières :", nouvellepy-undliste)bksl-nl
A
Z
ou cela :
maliste = [3.14, 1.414, 2.718]bksl-nlnouvellepy-undliste = [int(valeur) for valeur in maliste]bksl-nl# nouvellepy-undliste est constituée des parties entières des valeurs de malistebksl-nlprint("Liste des parties entières :", nouvellepy-undliste)bksl-nl
A
Z
Exemple 2⚓︎
Pour faire un tableau de valeurs de la fonction \(f\) définie sur [\(-\)2 ; 3] par \(f(x) = 5 x^2 + 1\), je peux écrire ceci :
valeurspy-undx = range(-2, 4)bksl-nlvaleurspy-undy = [5 py-str xpy-strpy-str2 + 1 for x in valeurspy-undx]bksl-nlprint(valeurspy-undy)bksl-nl
A
Z
Quelques explications :
range(-2, 4)
sert à générer une séquence d'entiers de -2 à 3, celle-ci est stockée dans une variablevaleurs_x
;[5*x**2+1 for x in valeurs_x]
va créer la liste des valeurs de 5 x2 + 1 pourx
qui prend chaque valeur de la séquencevaleurs_x
(doncx
sera égal à 0, puis 1, puis 2, puis 3) ;- la dernière ligne va afficher la valeur de la liste
valeurs_y
.
Exemple 3⚓︎
Pour obtenir tous les carrés inférieurs à 1000 des nombres impairs, je peux écrire :
listepy-undcarres = [xpy-strpy-str2 for x in range(1, 100) if x % 2 == 1 and xpy-strpy-str2 < 1000]bksl-nlprint(listepy-undcarres)bksl-nl
A
Z
Quelques explications :
- je prends tous les x de 1 à 99, sachant que 992 > 1000, cela suffira largement ;
- parmi les résultats, je ne garde que ceux pour lesquels
x % 2 == 1
(c'est une condition qui définit les nombres impairs) etx**2 < 1000
(nous ne voulons que des carrés inférieurs à 1000).
Exemple 4⚓︎
Pour ne garder que des prénoms de moins de 5 lettres et les mettre en majuscules :
listepy-undprenoms = ["Jacqueline", "Yvette", "Pierre", "Paul", "Jacques", "Hubert", "Eva", "Jim"]bksl-nllistepy-undprenomspy-undcourts = [prenom.upper() for prenom in listepy-undprenoms if len(prenom)<5]bksl-nlprint(listepy-undprenomspy-undcourts)bksl-nl
A
Z
Quelques explications :
prenom.upper()
: nous voulons le contenu d'une variableprenom
en majuscules ;for prenom in liste_prenoms
: la variableprenom
prendra chaque valeur de la listeliste_prenoms
;len(prenom)<5
mais nous ne conservons que les prénoms courts.