Formateur : Bonjour et bienvenue.
Dans cette vidéo, nous parlons de tout et de rien.
Il s'agit de deux fonctions très simples, mais qui, dans
certains cas, peuvent s'avérer très utiles.
La fonction any prend un itérable et renvoie
true si l'un de ses éléments évalue true.
La fonction "all" renvoie la valeur "true"
si tous les éléments sont évalués à "true".
Voici donc un exemple de cas où cela peut être utile.
Imaginez que vous disposiez d'une liste d'adresses d'amis.
Il s'agit d'une liste de dictionnaires où chaque
dictionnaire contient le nom de votre ami et l'endroit où il se trouve.
Nous demandons ensuite à l'utilisateur de nous indiquer sa position.
Nous allons ensuite calculer quels sont les amis qui
se trouvent à cet endroit.
La liste est donc un peu plus longue.
Il suffit d'entrer l'ami pour chacun des amis
dans les amis, si leur emplacement est égal à la variable
d'emplacement que les utilisateurs ont saisie.
Imaginez donc qu'ils entrent à San Francisco.
Nous allons insérer l'objet ami.
Désolé ce dictionnaire, pour chacun des amis
s'ils sont à San Francisco.
Maintenant, nous pourrions dire quelque chose comme, si len(friends_nearby)
> 0 : cela signifie qu'il y a
au moins un ami, imprimer que vous n'êtes
pas seul.
Je vais le reformuler pour qu'il soit un peu plus lisible pour vous.
Mais ce n'est pas très agréable,
car ce que nous voulons faire, c'est nous désintéresser de la longueur,
ce qui nous intéresse, c'est de
savoir s'il y a des amis.
C'est ici que les amis se révèlent utiles.
Si des amis à proximité impriment, vous n'êtes pas seul.
Il s'agit d'examiner chacun
des éléments des amis à proximité et
de vérifier s'ils sont véridiques.
Il s'agit maintenant de valeurs vraies. Remarquez
que ces éléments ne sont pas des booléens,
mais des dictionnaires.
Une valeur vraie est une valeur qui s'évalue comme étant vraie.
Voici donc quelques valeurs qui s'évaluent à faux.
Tout simplement parce qu'il n'y en a pas tant
que ça et qu'il est toujours bon de les connaître.
Zero est évalué à false lorsque vous essayez d'en
tirer un booléen.
Il en va de même pour aucun d'entre eux.
Il en va de même pour les listes vides, les n-uplets vides et les ensembles vides.
Doit être faux, et bien sûr, le zéro pointé et
tous ces types de nombres qui sont zéro, s'évaluent
à faux.
Il est possible de savoir si quelque chose est évalué comme
vrai ou faux en faisant bool de zéro.
Nous pouvons donc exécuter cela et entrer à San Francisco.
Remarquez qu'il est dit que vous n'êtes pas seul, tout d'abord.
Et puis il dit aussi,
false parce que bool of zero est false.
C'est ce que fait la fonction any.
Il passe en revue chaque élément et lui
demande s'il s'agit d'un booléen, s'il est vrai ou faux.
Si l'un d'entre eux dit vrai, cela
signifie que c'est vrai, que vous n'êtes pas seul.
Vous pouvez également indiquer tous les amis qui se trouvent à proximité.
Mais là encore, la fonction friends nearby
va contenir soit zéro ami, soit un ou plusieurs amis, ce
qui n'a pas beaucoup de
sens car tous vos amis
seront des dictionnaires.
Ainsi, si l'un d'entre eux est vrai, tous seront vrais parce qu'ils seront tous des
dictionnaires, et les dictionnaires
sont toujours vrais
à moins qu'ils ne soient vides.
Any renverrait true s'il y en a au moins un.
Ou false s'il est vide, c'est donc
une fonction très pratique dans ce cas.
D'accord.
Permettez-moi de l'effacer.
Et bien sûr, tout s'imprime, par exemple tout le un, le
deux, le trois, le quatre, le cinq.
Ils s'imprimeront vrais.
Je vais donc lancer ceci, je dis San Francisco,
et remarquez maintenant que c'est vrai
ici parce que un, deux, trois, quatre,
cinq sont tous vrais.
Mais dès que nous mettons un zéro et que nous le relançons,
nous obtenons faux parce que toutes ces choses ne sont pas vraies,
l'une d'entre elles est fausse et c'est le zéro.
Elle peut donc être utile dans certaines circonstances.
Je tenais à ce que vous connaissiez
cette fonction, au cas où vous auriez
besoin de l'utiliser.
Il s'agit encore une fois de vous donner des outils pour que vous
puissiez les utiliser dans votre projet de construction.
Vous n'aurez peut-être pas besoin de tous ces éléments pour un projet particulier,
mais ils peuvent être utiles pour d'autres projets.
Ces fonctions sont essentiellement
des outils un peu plus obscurs que beaucoup de gens
ne connaissent pas, mais qu'il
est toujours utile de connaître et dont il
faut comprendre l'existence.
C'est tout pour cette vidéo,
et je vous donne rendez-vous pour la prochaine.