Transcription
1. Vidéo 1 Introduction: Bienvenue à tous.
Dans ce cours, je vais
vous apprendre à créer votre propre générateur de
mots de passe. Le
langage de programmation que nous
utiliserons pour créer cette
opération sera Python, avec un langage
appelé tkinter. Tkinter est simplement une
bibliothèque Python qui
nous permet de créer une interface
utilisateur graphique ou une interface graphique. Cela nous permettra d'
interagir avec notre générateur de mots de passe sans avoir à taper dans
une fenêtre de terminal. J'ai divisé le cours en quelques sections afin de
vous permettre de mieux comprendre
le processus de création de cette application. Et je voulais juste lancer
l'application très rapidement pour vous
montrer exactement sur quoi nous travaillerons
une fois que nous aurons terminé. Nous avons donc
simplement un simple générateur de
mots de passe
indiqué dans la première case, vous pouvez entrer le nombre de mots de passe que vous
souhaitez dégénérer. Donc, juste pour cet
exemple, je vais en saisir six. Et dans la deuxième case,
nous pouvons entrer la
longueur de caractères souhaitée pour nos mots de passe. Donc, à titre d'exemple,
je viens de saisir 12. Et si je clique sur janvier, vous verrez que
six mots de passe ont été générés. Et chaque mot de passe
comporterait 12 caractères. Et si je clique
à nouveau sur janvier, nous aurons un
nouveau jeu de mots de passe. Et je pourrais simplement cliquer
continuellement sur Générer. Et chaque fois que je clique sur Générer, un nouvel ensemble de
mots de passe est créé chaque fois que nous le faisons. Il s'agit du
type général de processus n. C'est ce à quoi nous
arriverons lorsque nous aurons terminé avec l'application. Et j'espère que ce
cours vous aidera vraiment à développer vos
compétences en matière de codage et à avoir un nouveau projet à votre
actif. J'ai trouvé celui-ci très intéressant et amusant
à travailler sur moi-même, et j'espère que
vous l'apprécierez tous également. Bonne chance avec toutes les vidéos. Et j'espère que le processus assez simple
et qu'il sera créé. Et je vous verrai tous
dans la prochaine vidéo.
2. Les bases de la vidéo 2 de l'interface graphique: Bienvenue dans
la deuxième vidéo. Dans ce segment du cours, nous allons simplement créer notre
modèle de interface graphique. Nous allons donc
utiliser ce modèle de base pour créer
notre projet final. Pour commencer, j'ai
ouvert PyCharm, qui est l'identifiant
que je
vais utiliser pour créer ce projet. Si vous préférez
utiliser un autre identifiant, vous pouvez le faire. Et j'ai déjà un fichier
Python vide ouvert ici. Si votre IDE contient des textes prégénérés
dans le fichier Python, vous pouvez simplement sélectionner tout le texte et
le supprimer pour avoir un fichier
vide affiché. La première chose que je vais faire est donc
d'importer la bibliothèque Tkinter. Nous allons donc simplement aller de
l'avant et le faire. Ensuite, nous allons créer
une fenêtre qui est simplement une instance de la clause
tkinter is TK. Et ce que je veux dire par
là, c'est que TK s'affichera comme ça, et nous pourrions simplement définir une variable
égale à cela. Donc, pour cet exemple, je vais dire si root est égal à TK. Maintenant, chaque fois que nous voulons
faire référence à notre fenêtre, nous pouvons simplement faire référence à l'itinéraire. Si je voulais définir la taille
de la fenêtre, par exemple, je pourrais simplement dire
géométrie racine, 900 x 850. Avec cette ligne,
j' ai défini la taille de nos fenêtres afin que nous puissions la modifier pour
agrandir ou réduire la fenêtre. Mais l'idée principale que je
voulais faire passer est que c'est cette variable racine qui fait référence à notre fenêtre maintenant. Donc, si nous voulons ajouter une fenêtre de
texture, par exemple si vous souhaitez ajouter un titre, nous pourrions dire route point title, générateur de mots de passe
aléatoires. Et cela définira le
titre de notre fenêtre. Et la dernière chose que
je veux faire est définir la boucle principale
de notre fenêtre. Sur cette diapositive, nous
indiquerons à Python qu'il doit exécuter la boucle d'événements
Tkinter, qui écoutera des
éléments tels que les clics
sur les boutons ou les pressions de touches. Et sans cette ligne, notre
fenêtre ne fonctionnera pas du tout. Il est donc important que cela
figure dans notre code afin que notre fenêtre s'
exécute une fois que nous avons cliqué sur
Exécuter dans notre IDE. Donc, pour sécréter
la ligne de boucle principale, il
suffit d'écrire cette racine. Je ne veux pas dire. Maintenant, si je clique sur Exécuter, nous verrons ici Si je mets cela en évidence, voici à quoi ressemblera notre
fenêtre. Encore une fois, si je veux
changer la taille, par exemple si je veux réduire la taille de
la fenêtre, je pourrais dire que dans la géométrie de
Rudolf, la taille sera 700 sur 600. Et on peut réouvrir
sa fenêtre ici. Et cela va en fait réduire
la taille de la fenêtre. Voici à quoi ressemblera notre dernière
fenêtre. J'espère que cela avait du sens et je vous verrai tous dans la
prochaine vidéo où nous continuerons à ajouter de nouvelles
fonctionnalités à notre interface graphique.
3. Vidéo 3 Refinements d'interface graphique: OK, bienvenue dans la
prochaine vidéo de cette série. Nous allons
continuer à travailler sur la partie GUI de notre générateur de
mots de passe. Nous allons donc simplement
terminer cette partie. Et pour récapituler, dans la dernière vidéo, nous avons passé en revue la création d'une fenêtre et l'ajout d'un
titre à sa fenêtre. Donc, si je réexécute
ce programme, juste pour montrer ce que
nous avons déjà, voici à quoi
ressemble notre programme vu dans la dernière vidéo. Donc, dans cette vidéo, ce que
je vais d'abord faire c'est créer
quelque chose qui s'appelle le label. Et dans tkinter, le
terme label fait référence à la même chose que le
mot label lui-même. étiquettes, comme leur nom l'indique, ne
sont que des morceaux de texte que nous pouvons utiliser pour décrire
des éléments de notre interface graphique. Et encore une fois, c'est
assez évident. Je vais créer
deux labels différents dès
maintenant dans le cadre de ce projet. Le premier niveau
sera donc appelé mot de passe connu, qui
demandera simplement à l'utilisateur le nombre souhaité de mots de passe qu'il souhaite générer. Et la deuxième étiquette
sera appelée longueur du mot de passe, ce qui demandera simplement à
l'utilisateur la
longueur de caractères du mot de passe qu'il souhaite avoir
pour créer une étiquette. La première chose à faire est simplement de donner un nom à votre label. Je vais donc dire mot de passe s'il est
engourdi, comme si c'est égal. Ensuite, nous utiliserons
le terme label ici pour indiquer à Python que
nous créons une étiquette. Et lorsque nous
créons une étiquette, il n'y a que deux éléments que
nous voulons
masquer entre crochets. La première
sera donc notre fenêtre. Et donc puisque notre fenêtre s'
appelle root entrera root. Et puis le texte par virgule est égal à. Et puis c'est ici
que nous pouvons saisir le texte. Donc, mot de passe et disons que nous demanderons à l'utilisateur saisir le nombre
de mots de passe à générer. Voici à quoi ressemblera ta table
. Pour notre deuxième niveau, je dirais que la longueur du mot de passe
est égale à la racine de l'étiquette. Ensuite, nos textes
seront égaux à la longueur de
caractères souhaitée pour le mot de passe. Ce sont deux étiquettes
avec son interface graphique. Ensuite, je
vais ajouter ces
deux étiquettes à notre interface graphique. Nous définissons donc d'abord les étiquettes. Maintenant, pour les ajouter
, nous devons effectuer un deuxième processus. Avant de commencer. Je vais juste dire
que pour ce projet, je vais utiliser des conteneurs
et un système de crédit. Ainsi, le système de grille
utilise essentiellement des lignes et des colonnes pour décrire où vous souhaitez placer les éléments dans une interface graphique, par exemple si je dis que je veux placer la
première étiquette dans la colonne zéro, ligne zéro, puis le deuxième libellé de
la colonne zéro, première ligne. Ce qui se passera,
c'est que la première étiquette sera placée au-dessus
de la deuxième étiquette. Tout est relatif. Donc, si je dis que je veux que le mot de
passe num soit dans la colonne zéro et la
longueur du mot de passe dans la première colonne. Python
saura alors que, d'accord, je dois placer ces deux étiquettes
l' à côté de l'autre au lieu d'une en haut et une en bas. Je vais donc simplement le taper
ici pour
vous donner une meilleure idée de
ce que j'essaie de dire. Donc, pour ajouter l'étiquette ici, je dirais que la colonne de la grille
du mot de passe est égale à zéro et rho est égale à un. Et maintenant, pour ajouter la longueur du mot de passe
, je souhaite ajouter
cette longueur de mot de passe
sous le numéro de mot de passe pour notre projet . Je dirais donc que la
longueur du mot de passe est une grille de documents, la colonne est égale à zéro parce que je veux que les deux
se trouvent dans la même colonne. Et une ligne est égale à un, vous
savez, changez cela en ligne zéro parce que si vous pouvez
commencer par zéro. Et maintenant, si je lance le
programme comme ça, les étiquettes apparaîtront comme ça. Et encore une chose que je peux faire ici, c'est de
commenter notre géométrie Rudolf
ou de vous envoyer une taille de fenêtre. En utilisant le système de grille, Python saura
redimensionner automatiquement la fenêtre en fonction de
la taille de nos textes, etc. Je peux donc simplement le
commenter ici. Et si je réexécute notre programme, nous verrons que nous avons nos
deux étiquettes, que nous les
afficherons ici sur notre fenêtre, comme nous le voulions. C'est donc essentiellement
ainsi que nous ajouterions des étiquettes à notre interface
graphique en utilisant Tkinter. La prochaine chose que je veux aborder est
l'ajout d'une boîte de rotation. Ainsi, lorsque je fais tourner des cases, les boîtes de
rotation sont
simplement de petites boîtes dotées de flèches
vers le haut et vers le bas qui vous
permettent de sélectionner des
nombres dans une certaine plage ou vous pouvez saisir le numéro. La raison pour laquelle je souhaite inclure des boîtes à
spin dans ce
projet est forte. Nous pourrions les utiliser pour
permettre à l'utilisateur de saisir longueur de mot de passe souhaitée ou pour saisir le
nombre de mots de passe qu'il souhaite régénérer le sonar pour
créer une boîte de rotation. Je peux d'abord définir un
nom pour notre spin bulk. Appelons donc cela le spin. Donc, pour notre première poubelle, nous l'utiliserons également. Permettez à l'utilisateur de définir le nombre de mots de passe
qu'il souhaite générer. Ensuite, la deuxième boîte de
rotation permettra l'utilisateur de saisir la longueur de
caractères de son mot de passe
souhaitée. Donc, pour la première poubelle, je vais la définir comme spin
équivaut à spin box. Ensuite, je vais saisir le
nom de notre fenêtre. Alors, qui est la racine. Ici, je peux définir une plage. Je peux donc dire que I
est égal à 02, égal à 20. Cela signifie donc
que la boîte de rotation permettra à un utilisateur de
choisir des nombres de 0 à 20 et ni
plus ni moins. Enfin, je peux définir la
largeur de la boîte de rotation. Je dirais donc simplement que pour ce
projet, la largeur est égale à cinq. Nous avons donc maintenant une boîte de
rotation définie ici. Et notre deuxième spin box,
je dirais simplement qu'elle est épuisée,
équivaut à suspendre des livres. Et encore une fois, l'itinéraire partant est égal à 02, est égal à 20 et la largeur est égale à cinq. Et permettez-moi de relancer ce
programme pour m'assurer que tout
fonctionne comme prévu. OK, je dois juste faire
un petit changement ici. Donc, un trait de soulignement égal à zéro serait la syntaxe
correcte. Et laisse-moi juste
exécuter ce programme. Et comme indiqué ici, tout fonctionne
à nouveau comme prévu. Nous n'avons pas ajouté la boîte de rotation, les boîtes de rotation à notre GYN. Alors maintenant,
allons-y et faisons-le. Donc, pour ajouter
la première boîte d'ajustement, nous pouvons simplement dire spin
parce que c'est le cas, j'utilise spin parce que c'est le nom de nos bugs de première année. Et si nous voulions ajouter
la deuxième boîte de rotation, nous dirions « spin one ». Et donc je parle de grille à points rotatifs. Ici, nous pouvons définir la colonne. Et la ligne que nous voulons
placer est celle de la boxe. Donc, pour l'instant, je vais simplement ajouter ceci dans la
colonne zéro de la deuxième ligne. Ce serait donc juste en
dessous de la longueur du mot de passe. Suspendez la grille à chiens, la colonne
est égale à zéro et rho est égale à. Lance ça. Nous allons voir si nous avons
un spin bogs, n'est-ce pas ? Dans notre déclaration, veuillez saisir la longueur de caractères souhaitée pour le
mot de passe. Et en fait parce que je veux que cette première boîte vin permette à l'utilisateur de définir le nombre
de mots de passe qu'il souhaite. Janvier Je vais remplacer la ligne par la première ligne, et je vais remplacer l'étiquette de
longueur du mot de passe par la troisième ligne. Donc, une fois que c'est fait, ça
devrait ressembler à ceci. Maintenant, je vais simplement
ajouter cette deuxième boîte de rotation, qui permettra à l'utilisateur de
saisir la longueur de caractères de son
mot de passe souhaitée. Je vais donc l'ajouter à la quatrième ligne. Je dirais donc que spin one dog grid vaut
zéro et rho vaut quatre. Et si je le gère, c'est
ce que nous voulons
pouvoir voir ici. C'est donc ce à quoi nous nous
attendrions après avoir ajouté nos boîtes de sprint et nos
étiquettes à notre interface graphique. Et au fur et à mesure que vous
parcourez cela, je sais que vous vous demandez
peut-être quoi cela se rapporte à la fonction réelle
qui génère des mots de
passe de manière aléatoire et
les affiche sur notre interface graphique. Et ne vous inquiétez pas si
cela prête à confusion. Tout
finira par avoir du sens au fur et à mesure que je l'étudierai. Faites donc de votre
mieux pour suivre et vous devriez être en mesure
de comprendre comment cela fonctionne. OK, nous avons donc nos boîtes à centrifuger, nous avons nos étiquettes. Maintenant, ce que je veux faire, c'est
simplement définir notre fonction, notre fonction principale
que nous utiliserons pour générer des mots de passe aléatoires. Mais je vais juste en faire une
fonction factice pour le moment. Il ne fait donc
rien vraiment pour le moment. Il indiquera simplement, il affichera
simplement « bonjour ». Donc, juste pour
définir la fonction, je dirais définir un
appel, il a cliqué. Je vais juste dire « imprimer ». Bonjour Si je définis
cette fonction comme une fonction factice pour le moment, c'est parce que je
souhaite ajouter un
bouton sur l'interface graphique, qui exécutera cette fonction
une fois que vous aurez cliqué dessus. Une fois que cette fonction générera des mots de passe
aléatoires, nous nous
attendons à
ce que lorsque vous cliquez sur ce bouton, elle exécute cette fonction
et génère des mots de passe et
affichez-les sur l'interface graphique. Donc, pour ajouter un
bouton à notre interface graphique, nous devons d'abord
définir un bouton. Je vais donc appeler notre bouton BTN. Et je dirais que BTN est égal à bouton. Ensuite, je vais définir la
fenêtre qui est root. Les textes ou le bouton VR
seront égaux à générer. Et c'est ici que nous pouvons
définir la fonction que nous voulons que Python exécute
une fois que vous avez cliqué dessus. Je veux donc exécuter cette fonction
ici sur laquelle on clique, nous l'avons défini. Donc, pour que
cette fonction soit exécutée en cliquant sur ce bouton, je dis que la commande équivaut
à un clic, comme ça. Je vais simplement ajouter
ce lien à notre graphique. Je dirais donc que la
colonne de la grille de points BTN est égale à zéro. Et ne l'avez pas
tout en bas. Donc je dirais que rho est égal à cinq. D'accord ? Et je veux juste supprimer ces deux crochets ici
parce qu'ils ne sont pas obligatoires. Et maintenant, si je lance ce programme, mettez-le en évidence ici. Et si je clique sur Générer, nous devrions voir une petite console intérieure
contextuelle. Donc, en janvier, nous pouvons voir que chaque fois que vous
cliquez sur Générer, le mot bonjour
s'affiche sur la console. Tout
fonctionne donc comme prévu. Et enfin, ce que je veux
faire, c'est ajouter une zone de texte. Cette zone de texte sera donc utilisée pour tous les
mots de passe générés
à afficher sur notre interface graphique. Ainsi, pour définir une zone de texte, je peux dire t, qui
sera également utilisée. Nous utilisons ce que nous avons défini dans
notre boîte de texte. Donc t est égal à la racine du texte. Et nous lui donnerons une hauteur
de 15 et une largeur de 50. Et je peux simplement l'ajouter à la
grille en disant que T Don, la colonne de la grille vaut
zéro, rho vaut sept. Et encore une fois, je n'ai pas besoin de
ces points-virgules. Et si je clique sur Exécuter, nous pouvons voir qu'une zone de texte s'affiche juste sous
notre bouton de janvier. C'est donc ce que nous
voulons voir ici. OK, donc c'est tout ce
que je voulais faire
pour cette vidéo. Donc, juste pour
récapituler, nous avons ajouté
des étiquettes sur elle pour vous. Pourquoi ? Nous avons ajouté des boîtes de rotation. Nous avons ajouté un
bouton à notre interface graphique et nous l'avons programmé
pour pouvoir exécuter une fonction au clic. Et nous avons ajouté une zone de
texte à notre interface graphique. Dans la vidéo suivante,
nous allons donc rendre ces éléments plus fonctionnels
et permettre à Python de générer des mots de passe en à Python de générer des mots de passe utilisant les valeurs
définissant nos boîtes de rotation et notre affichage dans
notre zone de texte que nous avons créée et qui s'affiche
sur Energy Wise. J'espère donc que cela avait du sens. Si ce n'est pas le cas, n'hésitez pas à
revenir en arrière, à
essayer de ralentir la vidéo et à
tout parcourir étape par étape. La première fois que j'ai appris à m'embrouiller, il m'a fallu un peu
de temps pour comprendre ce qui se passait. Dans la vidéo suivante.
Nous allons simplement continuer dans cette voie et nous allons
construire à partir de là.
4. Vidéo 4 étapes finales: Bienvenue dans la dernière vidéo cette série de projets guidés. Dans cette vidéo,
nous allons simplement
passer en revue la fonction principale qui générera nos mots de passe lorsque
nous exécuterons l'application. Essentiellement, cette fonction utilisera
une chaîne contenant une combinaison de lettres, de chiffres et de caractères spéciaux. Et il sera utilisé pour
générer nos mots de passe. Et pour que cela fonctionne, notre fonction
sélectionnera les caractères de
notre chaîne selon un
index aléatoire à chaque fois, et les ajoutera à
une chaîne de mot de passe jusqu'à ce qu'elle atteigne la longueur de mot de passe
souhaitée. Cette fonction permettra
également à l'utilisateur de choisir le nombre de mots de passe qu'il
souhaite générer. En résumé, cette
fonction
permettra à l'utilisateur de choisir la longueur de
son mot de passe souhaitée ainsi que le nombre
de caractères
qu' il souhaite pour chaque
mot de passe. Nous reviendrons à
la fonction fictive que nous avons définie précédemment. C'est donc là que nous avons
dit « print hello ». Et dans cette fonction, je vais définir
un entier appelé i.
Et je mettrai I égal à zéro. Dans un premier temps. Je
servirai de compteur afin que chaque
fois que notre boucle filaire sera exécutée, je sois incrémentée d'une unité. Supposons donc que si l'
utilisateur décide de
vouloir créer 12 mots de passe TV par ce programme, la boucle while s'exécutera 12 fois pour générer 12 mots de passe
différents. Et chaque fois que la boucle s'exécute, elle en ajoute une à I. Et une fois que j'en aurai atteint, disons 12, par exemple disons 12, par exemple,
elle sortira
de la boucle while et nous quitterons notre fonction. Et ce sera lorsque
la partie du
programme
générant un mot de passe sera terminée. La prochaine chose que je vais faire est d'ajouter du code ici pour supprimer le texte de notre zone de texte lorsque la
fonction est appelée. Je vais donc juste le
taper ici. Et en gros,
cette ligne va simplement
supprimer tous les textes. Nous avons
une zone de texte inhérente une fois que la fonction est
exécutée, comme je l'ai dit plus tôt. Vous pourriez donc vous demander, eh bien, pourquoi
devrions-nous faire cela ? Disons que nous avons lancé le programme et généré quelques mots de passe, et que l'utilisateur décide qu'il souhaite générer d'
autres mots de passe. Permettez-moi de créer
un deuxième ensemble de mots de passe. Eh bien, si nous ne
supprimions pas réellement les mots de passe précédents
créés par ce programme. Les nouveaux mots de passe sont en fait simplement imprimés et juste en dessous. Ça n'a pas vraiment l'air trop beau. Il serait donc préférable de
supprimer
les anciens mots de passe
que le programme a créés
pour faire de la place aux nouveaux. La prochaine chose que nous allons faire
est de définir une boucle while, qui sera utilisée pour démarrer le processus de
génération de chaque mot de passe. Nous pouvons donc dire, que je suis inférieur à, prendre un numéro
du premier spinner, qui est celui d' ici où l'utilisateur
peut le saisir. Nombre de mots de passe
qu'ils souhaitent dégénérer. Donc, si vous vous souvenez
de la dernière vidéo, nous appelons cela un spin. Et donc ici, nous pourrions dire, tant que je ne suis pas que
spin, dark get. Et nous aurions besoin de convertir point de
spin get en un entier. Nous dirions donc int et jouerions spin point getName
entre crochets pour ce faire. Donc, alors que I est inférieur au nombre
défini par l'utilisateur dans la
première boîte à épingles. On peut dire que le mot de passe est égal
à une chaîne vide. Hein ? En dessous, on pourrait dire Y0. La longueur de notre
mot de passe est
inférieure au nombre défini
dans Spin One Dot Get. Et encore une fois, cette ligne
ne fait que récupérer le numéro que l'utilisateur a saisi
dans la deuxième boîte de rotation. Donc, si nous revenons
à notre programme ici, cela va définir
la longueur de caractères souhaitée pour le mot de passe. Encore une fois, nous voulons le
convertir en entier, donc nous dirions simplement en savon et en
gardant les dépenses entre crochets. Ensuite, nous pourrions dire que son mot de passe sera égal à, et nous allons
dire plus égal parce que nous voulons ajouter
chaque caractère l'un à chaque caractère autre jusqu'à ce que nous ayons atteint
le résultat souhaité longueur du mot de passe. Nous dirons donc que le mot de passe
plus est égal à des caractères, rand
aléatoire étant égal à zéro. Ensuite, la longueur des caractères moins un. Ce que nous disons ici, c'est que
nous allons
récupérer un caractère au hasard dans la
chaîne que nous
définirons et qui
contiendra des lettres, chiffres et des caractères spéciaux. Nous disons que
nous allons prendre un nombre aléatoire compris entre zéro et la longueur réelle
de la
chaîne que nous allons créer, qui contient notre jeu de
caractères. Et si nous disons moins
un, c'est parce que lorsque nous prenons la longueur d'une chaîne, par exemple, cela nous donne la longueur
réelle de celle-ci. Disons qu'il y a cinq
caractères dans la chaîne. Ce serait très bien. Mais lorsque nous
travaillons avec des index, nous partons de zéro et nous
ne partons pas réellement d'un. Donc, lorsque nous chercherions
un indice de quatre, par exemple dans cette chaîne.
Cela signifie que nous allons effectivement récupérer le dernier
caractère de cette chaîne. C'est pourquoi nous
disons simplement moins un ici. Enfin, dehors de la boucle while, nous voulons insérer notre nouveau
mot de passe dans notre zone de texte. Pour ce faire, nous dirions Te point insert, puis appellerions la
commande insert password. Ensuite, nous ajouterons simplement
un espace ici, en plus. Et nous allons le
convertir en chaîne. Donc une ficelle. Et nous allons prendre le mot de passe
actuel que nous générons, qui sera I plus un, car les index
partiront de zéro. Maintenant que nous
parlons de mots de passe, nous voulons commencer par un mot de passe,
car il serait moins courant de dire
zéro au lieu de mot de passe un. Donc j'en ai plus un. Ensuite, nous ajouterions deux points et un
mot de passe régénéré. Et puis une nouvelle ligne. Enfin, nous
voudrions augmenter I. Nous dirions
donc que I
plus est égal à 21. OK, je viens de supprimer
les points-virgules
présents sur certaines de ces lignes car vous
n'êtes pas nécessaire. C'est juste une habitude que j'ai prise
en codant en C plus plus. Mais en Python, pour la plupart, ils ne sont généralement pas nécessaires dans les lignes de
code que vous devez, n'est-ce pas ? Maintenant, je vais définir notre chaîne qui
contiendra des lettres, chiffres et des
caractères aléatoires qui seront utilisés pour
générer notre mot de passe. Ainsi, comme vous pouvez le voir dans la
fonction que nous avons créée précédemment, nous avons une chaîne appelée chars. Et je vais simplement aller au-dessus de cette
fonction ici et définir les caractères comme étant
égaux à une chaîne. Et je vais simplement coller ici l'
ensemble de lettres, chiffres et de caractères
que j'ai, que nous pouvons utiliser pour
générer nos mots de passe. Voici donc un exemple
que vous pourriez utiliser. Et ensuite, nous en ferons quelques-unes. J'ai peut-être remarqué que le code aléatoire ici n'
est en fait pas défini car nous devons importer du aléatoire
dans Python pour qu'il soit utilisé. Je peux donc simplement aller en haut ici et taper import random. Et maintenant, si je continue
et que je l'exécute, le programme devrait
fonctionner comme prévu. Donc, si je dis, par exemple je veux générer
cinq mots de passe, chacun comportant six caractères. Si je clique sur Générer,
nous
verrons que cinq mots de passe
ont été générés, chacun comportant six caractères. Si je clique à nouveau sur Générer, nous verrons que les mots de passe
continuent de changer. C'est donc l'idée
principale de ce que j'essayais d'obtenir, le programme que vous devriez être capable de créer après avoir
suivi ces vidéos. J'espère que cela a été assez simple et que
vous avez pu bien comprendre le processus de création
de cette application. Merci d'avoir regardé
ces vidéos et j'espère que vous avez apprécié
la création de ce projet.