Python pour les débutants - Apprendre Python en une semaine | Andreas Exadaktylos | Skillshare

Vitesse de lecture


1.0x


  • 0.5x
  • 0.75x
  • 1 x (normale)
  • 1.25x
  • 1.5x
  • 1.75x
  • 2x

Python pour les débutants - Apprendre Python en une semaine

teacher avatar Andreas Exadaktylos, Teacher | Expert Computer Scientist | Entrepreneur

Regardez ce cours et des milliers d'autres

Bénéficiez d'un accès illimité à tous les cours
Suivez des cours enseignés par des leaders de l'industrie et des professionnels
Explorez divers sujets comme l'illustration, le graphisme, la photographie et bien d'autres

Regardez ce cours et des milliers d'autres

Bénéficiez d'un accès illimité à tous les cours
Suivez des cours enseignés par des leaders de l'industrie et des professionnels
Explorez divers sujets comme l'illustration, le graphisme, la photographie et bien d'autres

Leçons de ce cours

    • 1.

      Introduction

      1:27

    • 2.

      Pourquoi apprendre Python ?

      2:02

    • 3.

      Cinq (5) conseils pour débutants pour apprendre la programmation python

      6:55

    • 4.

      INTRODUCTION - Télécharger et installer Python 3 (2024)

      1:25

    • 5.

      Télécharger et installer Python 3 (Windows)

      6:55

    • 6.

      Utiliser le Shell Python

      2:19

    • 7.

      Configurer Python (résumé)

      1:11

    • 8.

      Éditeurs de code

      2:15

    • 9.

      Votre premier programme Python - Introduction

      1:09

    • 10.

      Écrire notre premier programme Python

      9:12

    • 11.

      Faisons quelques erreurs

      6:31

    • 12.

      Créer une variable

      13:45

    • 13.

      Ajouter des commentaires

      4:06

    • 14.

      DÉFI : interagir avec IDLE (Python Shell)

      4:44

    • 15.

      Comment trouver de l'aide

      3:06

    • 16.

      Écrire votre premier programme Python (Résumé)

      1:06

    • 17.

      Cordes et méthodes de cordes (Introduction)

      1:23

    • 18.

      Qu'est-ce qu'une corde

      5:47

    • 19.

      EXERCICE : Qu'est-ce qu'une corde

      2:18

    • 20.

      SOLUTION : Qu'est-ce qu'une corde

      5:38

    • 21.

      Manipuler des chaînes avec des méthodes

      11:55

    • 22.

      EXERCICE : changer le cas

      1:09

    • 23.

      SOLUTION : Changer le cas

      3:20

    • 24.

      EXERCICE : supprimer les espaces blancs

      1:08

    • 25.

      SOLUTION : supprimer les espaces blancs

      2:17

    • 26.

      Indexation des chaînes

      2:36

    • 27.

      Découpe de cordes

      3:30

    • 28.

      EXERCICE : Découper une corde

      0:28

    • 29.

      SOLUTION : Découper une corde

      2:40

    • 30.

      Concaténation des cordes

      2:18

    • 31.

      EXERCICE : Concaténation des cordes

      0:38

    • 32.

      SOLUTION : Concaténation des cordes

      2:38

    • 33.

      Formater une chaîne

      3:50

    • 34.

      F-Strings : une syntaxe améliorée du formatage des chaînes

      7:04

    • 35.

      EXERCICE : Rationalisez vos impressions

      1:06

    • 36.

      SOLUTION : Rationalisez vos impressions

      4:39

    • 37.

      Interagir avec l'entrée de l'utilisateur()

      4:53

    • 38.

      EXERCICE : Interagir avec l'entrée de l'utilisateur

      0:46

    • 39.

      SOLUTION : Interagir avec l'entrée de l'utilisateur

      4:57

    • 40.

      Travailler avec des chaînes et des chiffres

      13:55

    • 41.

      EXERCICE : travailler avec des cordes et des chiffres

      1:07

    • 42.

      SOLUTION : Travailler avec des cordes et des chiffres

      6:58

    • 43.

      Méthodes de mise en page Print()

      7:43

    • 44.

      Trouver une corde dans une corde

      9:18

    • 45.

      EXERCICE : Trouver une lettre dans une corde

      0:47

    • 46.

      SOLUTION : Trouvez une lettre dans une corde

      4:10

    • 47.

      Les cordes et les méthodes de cordes (résumé)

      0:57

    • 48.

      PROJET : créer un programme d'impression de reçus

      12:21

    • 49.

      Nombres et maths (Aperçu)

      1:26

    • 50.

      Types numériques dans Python

      4:50

    • 51.

      Entiers

      6:50

    • 52.

      EXERCICE : Définir les lettres entières

      1:17

    • 53.

      SOLUTION : Définissez la lettre entière

      4:07

    • 54.

      Nombres flottants

      7:38

    • 55.

      Opérateurs arithmétiques et de comparaison

      5:15

    • 56.

      Opérateurs de comparaison logique (booléen) et de chaînes

      2:46

    • 57.

      Erreur de représentation du point flottant

      6:02

    • 58.

      Fonctions mathématiques et méthodes de numéros

      9:32

    • 59.

      Nombres formatés sous forme de chaînes

      4:15

    • 60.

      EXERCICE : Montrez un pourcentage

      0:19

    • 61.

      SOLUTION : Afficher un pourcentage

      1:04

    • 62.

      Nombres complexes

      4:40

    • 63.

      L'opérateur du reste (% Modulo)

      6:25

    • 64.

      Lire des chiffres avec la fonction d'entrée

      8:11

    • 65.

      Nombres et maths (RÉSUMÉ)

      1:24

    • 66.

      DÉFI : Calculer un pourcentage

      3:21

    • 67.

      DÉFI : Calculer une moyenne

      5:15

    • 68.

      DÉFI : convertir une formule mathématique en une instruction de programmation

      5:47

    • 69.

      Dates et heures

      4:18

    • 70.

      Qu'est-ce qu'une liste

      5:50

    • 71.

      Travailler avec des listes

      3:44

    • 72.

      Créer des listes numériques

      1:41

    • 73.

      Listes d'impression

      2:07

    • 74.

      Des tuples

      4:00

    • 75.

      Consignation, emballage et déballage du tuple

      4:00

    • 76.

      Travailler avec des dictionnaires

      4:07

    • 77.

      Ensembles

      4:25

    • 78.

      Instructions If

      3:38

    • 79.

      EXEMPLES d'utilisation de l'instruction if dans une application

      10:19

    • 80.

      Pour les boucles

      2:09

    • 81.

      EXEMPLES d'utilisation de l'instruction for

      6:12

    • 82.

      Boucles pendant

      3:35

    • 83.

      Pause et continue

      2:25

    • 84.

      PROJET : Jeu de devinettes

      6:27

    • 85.

      Utiliser les instructions if avec des listes

      1:42

    • 86.

      Utiliser pour des boucles avec des listes

      2:02

    • 87.

      Utiliser une boucle de temps avec des listes et des dictionnaires

      3:03

    • 88.

      Créer des piles à l'aide de listes

      4:04

    • 89.

      Rechercher et trier des listes

      4:34

    • 90.

      Boucler dans un dictionnaire

      2:14

    • 91.

      Remplacer l'instruction switch par un dictionnaire

      3:33

    • 92.

      Travailler avec l'objet de contre-projet

      2:25

    • 93.

      Que sont les fonctions

      2:13

    • 94.

      Fonctions intégrées

      2:09

    • 95.

      Définition de votre fonction

      2:57

    • 96.

      Plus de fonctions intégrées

      9:37

    • 97.

      Portées mondiales et locales

      4:54

    • 98.

      PROJET : Jeu de devinettes amélioré (version 2) - PARTIE 1

      7:14

    • 99.

      PROJET : Jeu de devinettes amélioré (version 2) - PARTIE 2

      4:29

    • 100.

      PROJET : Jeu de devinettes amélioré 3 (version 2) - PARTIE 3

      9:16

    • 101.

      Gérer les erreurs

      3:22

    • 102.

      Problèmes de syntaxe courants

      8:40

    • 103.

      Devenez un chasseur de primes d'insectes

      9:10

    • 104.

      Traitement des exceptions de base

      5:57

    • 105.

      Gérer plusieurs exceptions

      7:26

    • 106.

      Créer des exceptions

      2:28

    • 107.

      Comment déboguer dans IDLE 2021

      3:27

    • 108.

      Roche, papier, ciseaux APERÇU

      1:49

    • 109.

      Roche, papier, ciseaux avec entrée et boucles Python

      7:46

    • 110.

      Roche, papier, ciseaux avec Python Comment déterminer un gagnant ?

      13:24

    • 111.

      Qu'est-ce que la programmation orientée objet (POO)

      3:16

    • 112.

      Cours Python

      2:50

    • 113.

      Attributs de classe et d'instance

      5:18

    • 114.

      Ajouter des attributs à un cours Python

      6:44

    • 115.

      Ajouter des méthodes à un cours Python

      6:00

    • 116.

      Introduction à l'héritage OOP

      3:52

    • 117.

      Exemple d'héritage

      9:15

    • 118.

      Scripts, modules, packages et bibliothèques 2022

      4:18

    • 119.

      Rédiger un module

      2:44

    • 120.

      Le chemin de recherche du module

      4:42

    • 121.

      L'instruction d'importation

      6:08

    • 122.

      La fonction dir()

      3:52

    • 123.

      Exécuter un module

      5:41

    • 124.

      Relcharger un module

      3:16

    • 125.

      Comment installer un paquet Python avec PIP

      3:18

    • 126.

      Packages Python

      4:33

    • 127.

      Créer des graphiques et des formes à l'aide du module Tortue de Python

      5:56

    • 128.

      Python ouvre, lit et écrit un fichier

      5:49

    • 129.

      Obtenir une liste de répertoires et les attributs de fichier

      7:56

    • 130.

      Créer et supprimer des répertoires

      10:28

    • 131.

      Supprimer, copier, déplacer et renommer des fichiers

      7:37

    • 132.

      Projet d'étape Créer un jeu de maths interactif

      1:30

    • 133.

      Partie 1 Importer des modules et obtenir le score de l'utilisateur

      3:44

    • 134.

      Partie 1 Gestion des exceptions et mise à jour du score de l'utilisateur

      7:15

    • 135.

      Partie 1 Générer les questions et les mathématiques

      6:16

    • 136.

      Partie 1 Générer une expression mathématique et évaluer le résultat

      6:03

    • 137.

      Partie 2 Écrire le programme principal

      5:48

  • --
  • Niveau débutant
  • Niveau intermédiaire
  • Niveau avancé
  • Tous niveaux

Généré par la communauté

Le niveau est déterminé par l'opinion majoritaire des apprenants qui ont évalué ce cours. La recommandation de l'enseignant est affichée jusqu'à ce qu'au moins 5 réponses d'apprenants soient collectées.

1 153

apprenants

5

projets

À propos de ce cours

Un cours de programmation pratique en Python 3 pour les débutants absolus - Apprendre à coder en Python (+projets Python)

Commencez à coder en Python immédiatement !   

Si vous débutez en programmation, ce cours vous aidera à apprendre rapidement la programmation Python.

Python est un langage incroyablement efficace : vos programmes peuvent faire plus avec moins de lignes de code que beaucoup d'autres langages n'en exigeraient. Il est également utilisé dans des domaines scientifiques pour la recherche universitaire et les travaux appliqués.   

Mon objectif était de créer un cours pour les personnes de tout âge qui n'ont jamais programmé en Python auparavant ou n'ont jamais programmé du tout, afin que vous puissiez créer des programmes qui fonctionnent.   

Ce cours regorge d'exemples et de projets soigneusement choisis pour illustrer chaque concept et vous permettre d'approfondir votre compréhension de la langue. Il est conçu pour servir de ressource d'apprentissage unique et complète pour tous les débutants de Python, qu'ils utilisent Python 2.X, Python 3.X, ou les deux.   

La programmation Python pour débutants est également parfaite pour les enseignants des collèges et des lycées qui souhaitent offrir à leurs apprenants une introduction à la programmation basée sur un projet.  

Vous cherchez à apprendre la programmation Python pratique que vous pourrez utiliser instantanément ? Si c'est le cas, alors ce cours est fait pour vous. Il s'agit entièrement de projets et regorge d'exemples, qui sont expliqués en détail et faciles à comprendre. C'est un enregistreur en full HD 1080p.

 Python est un langage formidable à apprendre, alors inscrivez-vous à ce cours et commençons !

Rencontrez votre enseignant·e

Teacher Profile Image

Andreas Exadaktylos

Teacher | Expert Computer Scientist | Entrepreneur

Enseignant·e

LinkedIn: https://www.linkedin.com/in/andreasexadaktylos

Hi, I am Andreas and I'm a teacher. I really love learning and teaching whenever i can.

I have over 16 years of experience in teaching as an instructor. I have my own computer learning school, called Futurekids, from 2001 to now. I am the founder of Mellon Training, an online video tutorials learning school.

I have a Masters Degree in Computer Science and a Degree in Electronic Engineering.

I always wanted to create my own business. Being your own boss is an incredibly liberating experience but difficult as well.

I have a passion for software products that make people's lives easier. I love to create websites and optimizing them with Search Engine optimization techniques. I created my online e-sh... Voir le profil complet

Level: Beginner

Notes attribuées au cours

Les attentes sont-elles satisfaites ?
    Dépassées !
  • 0%
  • Oui
  • 0%
  • En partie
  • 0%
  • Pas vraiment
  • 0%

Pourquoi s'inscrire à Skillshare ?

Suivez des cours Skillshare Original primés

Chaque cours comprend de courtes leçons et des travaux pratiques

Votre abonnement soutient les enseignants Skillshare

Apprenez, où que vous soyez

Suivez des cours où que vous soyez avec l'application Skillshare. Suivez-les en streaming ou téléchargez-les pour les regarder dans l'avion, dans le métro ou tout autre endroit où vous aimez apprendre.

Transcription

1. Introduction: Bonjour et bienvenue. Je m'appelle Andreas et je serai votre professeur pour ce cours de Python. Je suis ingénieur informatique et je suis enseignant depuis plus de 20 ans. J'ai mon école d'informatique et j'enseigne la programmation Python à dizaines de milliers d' étudiants heureux comme vous. Et je suis très heureuse d'être votre professeur dans le cadre de ce cours. Python est certainement le langage de programmation qui connaît la croissance la plus rapide , puisqu'il se classe parmi les trois principaux langages à apprendre pour le futur. Python est l'un des langages de programmation les plus polyvalents. Vous pouvez l'utiliser pour tout, comme l'apprentissage automatique, le développement Web, les applications, l'automatisation, le développement de jeux et bien plus encore. Dans ce cours, vous recevrez une explication détaillée et approfondie des concepts fondamentaux de programmation Python. Et je vais rendre le processus d'apprentissage si facile et mémorable vous n'aurez même pas besoin de prendre de notes. Vous allez apprendre en réalisant et en développant de nombreux projets. En cours de route, vous avez également des projets importants qui vous aident à créer des programmes et des jeux entièrement fonctionnels que vous pouvez montrer à vos collègues. Nous avons plus de 100 conférences de dix ADP, vidéos explicatives de haute qualité et des diapositives entièrement détaillées qui accompagnent chaque conférence Donc, si vous débutez la programmation ou dans le langage Python, vous êtes au bon endroit. Avec tout cela en tête, qu'attendez-vous ? Allez-y, cliquez sur ce bouton de signature, et je vous verrai de l'autre côté. 2. Pourquoi apprendre Python ?: Bonjour et bienvenue dans le monde passionnant de la programmation. Dans cette conférence, nous allons un bref aperçu de ce qu'est Python, pourquoi choisir Python pour programmation et ce que vous pouvez faire avec Python. Python a été créé en 1990 par Guido Van Rosam. Il a été spécifiquement conçu comme un langage de programmation facile à utiliser. Le langage de programmation Python doit son nom au groupe de comédie Monty Python, et non au reptile Lorsque nous parlons de programmation, nous voulons dire que nous saisissons des instructions que l'ordinateur doit exécuter. Python est un langage de programmation de haut niveau largement utilisé. Bien entendu, de nombreux langages de programmation de haut niveau sont disponibles, tels que C, C plus et Java. Mais si vous débutez dans la programmation, Python est un excellent point de départ. Voyons quelques raisons d'apprendre Python. Premièrement, Python est plus simple que les autres langages de programmation et est idéal pour les débutants. La plupart des programmes nécessitent beaucoup moins de lignes de code pour effectuer la même tâche que les autres langages. Deuxièmement, Python est un langage efficace. La syntaxe Python vous aide à écrire du code propre, facile à lire, facile à déboguer et facile à étendre et à développer. Troisièmement, Python a un large éventail d'utilisations. Vous pouvez créer des jeux, créer des applications Web et résoudre des problèmes commerciaux. Python est également largement utilisé dans les domaines scientifiques pour la recherche universitaire. Quatrièmement, Python dispose d'un grand nombre d' outils tiers tels que Pinstaller qui nous permet regrouper notre code Python dans programmes exécutables autonomes pour des systèmes d'exploitation tels que Windows et macOS Cinquièmement, Python possède une grande communauté. soutien d'une communauté est essentiel pour résoudre les problèmes, en particulier lors des premières étapes de programmation. Ce sont les cinq principales raisons pour lesquelles nous avons choisi et appris Python. Si je t'ai convaincu, il est temps de commencer. Merci de m'avoir regardée. 3. Cinq (5) Conseils pour les débutants pour apprendre la programmation python: Bienvenue à tout le monde. Dans cette vidéo, je vais vous donner cinq conseils pour débutants pour apprendre la programmation Python. Vous allez voir comment coder chaque jour, comment l'écrire peut aider à faire des pauses interactives, à parler et à poser de bonnes questions. Commençons par regarder le codage tous les jours. Il vaut souvent mieux qu'un gros morceau par semaine. Si vous n'aviez qu'une heure par semaine, en désespoir, vous feriez mieux de passer dix minutes sur six jours de la semaine et d'avoir un jour congé que de faire une heure un jour de la semaine et d' avoir six jours de congé. Laisser longtemps avant de pratiquer une nouvelle compétence peut signifier qu'elle sera perdue pour vous et que vous devrez retrouver le même terrain encore et encore. Alors que le couvrir tous les jours pendant une semaine vous aidera à le conserver beaucoup mieux et que les écarts plus longs suite ne poseront pas tellement de problèmes. Egalement réaliste quant au temps que vous avez pour cela, tout le monde est différent. Certaines personnes peuvent passer beaucoup de temps et nous pourrons faire plus de progrès qu'une personne qui n'a qu' une heure ou deux à perdre une semaine. Donc, être réaliste à ce sujet, rappelez-vous, il ne s'agit de vous comparer à d'autres personnes. Il s'agit de vous comparer à l'endroit où vous avez commencé. Commencez par résoudre de petits problèmes lorsque vous commencez à programmer, puis vous acquerrez des compétences et apprendrez de nouveaux domaines de Python que vous ne connaissiez pas auparavant. Et cela peut vous donner une grande confiance dans la capacité d' aborder des problèmes plus difficiles plus loin. Écrivez-le. rédaction de notes vous aide à conserver les informations mieux que n'importe quelle autre méthode. Oui, les notes manuscrites vous aident vraiment lorsque les informations vous parcourent lorsque vous les avez lues, puis les réécrivez dans vos propres mots, votre cerveau les prend selon une méthode que vous comprenez, et c'est la partie la plus importante de l'apprentissage. Il y aura différents domaines lesquels vous devez vous concentrer, prendre des notes par rapport à quelqu'un à côté de vous. La planification de programmes comportant des notes écrites peut également aider à clarifier la solution. Ici encore, j'ai découvert que l' écriture à la main est beaucoup plus utile et beaucoup plus immédiate que de le faire sur ordinateur. Pour les problèmes complexes et plus importants, qui nécessiteraient beaucoup de documentation. Vous souhaitez le faire en ligne selon une méthode qui pourra être mise à jour ultérieurement. Lorsque vous planifiez cela initialement, rédiger le type de données et variables dont vous aurez besoin peut être vraiment, vraiment important et instructif. Il est souvent plus facile de créer des représentations visuelles lorsque vous travaillez avec du papier et du crayon. Et pour de nombreux problèmes, c'est un moyen utile de les aborder. Allez interactif. Le shell Python est un excellent moyen d' examiner et de créer du code instantanément. Il est facile et rapide de développer du code dans le shell Python, mais vous pouvez également l'utiliser pour découvrir et explorer les méthodes disponibles. Ouvrez l'interpréteur de commandes Python et vous pouvez maintenant l'utiliser en action. Prenez des pauses. Prendre des pauses est un élément extrêmement important de l'apprentissage. L'une des techniques les plus couramment étudiées par les personnes qui apprennent sur Internet est la technique Pomodoro. Maintenant, il ne porte que le nom du minuteur en forme de tomate utilisé par la personne qui l'a inventé. Mais il s'agit simplement de régler une minuterie de 25 minutes pour fonctionne, puis de prendre une pause de cinq minutes, puis de répéter. Il y a beaucoup de preuves pour illustrer que notre cerveau n' a qu' un temps limité de Lauren et qu'il a besoin de pauses. Votre cerveau a besoin de temps pour recevoir des informations et doit également se reposer. Je vous suggère fortement de faire une vraie pause. Cela donnera à votre cerveau une chance de se réinitialiser. Et vous constaterez souvent que des idées vous parviendront lorsque vous êtes au repos. Le sommeil est également très important pour la formation de la mémoire. De nombreuses recherches ont montré qu' une bonne nuit de sommeil après une journée d'apprentissage aide vraiment à cimenter ces informations et à les conserver dans une mémoire à long terme. Votre cerveau va travailler dessus et il sera rafraîchi pendant cette pause. Quand vous y reviendrez, beaucoup seront le moment où vous verrez quelque chose auquel vous n'aviez pas pensé et où vous partirez. Posez de bonnes questions. À de nombreux moments de votre carrière de programmation, vous devrez demander de l'aide. Et souvent, cela peut prendre la forme de poser des questions sur des sites tels que Stack Overflow. Ce faisant, il est vraiment important de poser des questions de la bonne façon pour que les gens puissent vous aider sans dupliquer le type de tests que vous avez déjà effectués, ce qui peut leur donner une bonne idée. de ce que vous avez déjà fait et de ce que vous avez l' intention de faire. Premièrement, le g du bien, donnez un contexte à ce que vous essayez de faire. Décrire clairement le problème. Ici, à gauche, on peut voir un mauvais exemple. Il dit simplement que je ne peux pas imprimer correctement. Alors qu'à droite, nous avons un bon exemple. J'essaie d'utiliser une chaîne f avec format et combinée avec variable pour donner six chiffres au total et une décimale. Mais je ne trouve pas la bonne syntaxe. Celui de gauche peut aller de l'impression sur une imprimante à l'utilisation de l'instruction d'impression. Alors que celui de droite est vraiment clair. Nous savons exactement où nous en sommes et quel est le problème. Décrivez ce que vous avez déjà fait pour essayer de résoudre le problème. Encore une fois, vous voyez cela assez souvent. J'ai tout essayé sur la gauche. Ce n'est pas vraiment utile. Il est peu probable que vous ayez essayé toutes les possibilités. Sur la droite, vous pouvez voir que l'utilisateur a essayé les différentes variantes, y compris un format de point de style étrange, mais rien n'a fonctionné pour eux. Ensuite, donner la meilleure idée de ce que pourrait être le problème. Cela aide la personne qui vous aide non seulement à savoir ce que vous pensez, mais aussi à savoir que vous avez réfléchi par vous-même. Vous n'êtes pas seulement tombé au premier obstacle et vous avez jeté le problème à quelqu'un d'autre. À gauche, nous avons un mauvais exemple. Je ne sais pas ce qui ne va pas. Et à droite, je peux faire fonctionner le formatage à l'aide d'un ancien format de style, mais je ne vois pas où insérer la nouvelle variable dans un nouveau style. C'est clair et concis et, espérons-le, pointera tous ceux qui essaient de répondre à la question dans la bonne direction afin de trouver quelqu'un qui sait très bien utiliser les chaînes de caractères. D signifie démo. La démonstration est ce qui se passe. Incluez le message d'erreur de suivi du code ou une explication des bonnes étapes que vous avez essayé d'exécuter qui ont entraîné l'erreur. De cette façon, la personne qui aide n' pas à essayer de recréer le problème, y compris tout le code pertinent est vraiment important. On voit souvent où les gens peuvent aider parce qu'ils ne veulent pas passer une demi-heure à essayer de déterminer ce que quelqu'un a fait. Ils veulent pouvoir copier le code, essayer de l'exécuter eux-mêmes, ou peut-être simplement essayer de regarder le code. Il sera en mesure de dire à la bonne personne ce qui ne va pas. Ici, à gauche, le mauvais exemple, aucun code. À droite. Un bon exemple. La variable a été définie. Ils utilisent une ancienne mise en forme de style et cela dit que cela fonctionne, mais ce n'est pas une chaîne de caractères. Cela devrait donner une bonne réponse assez rapidement. Très souvent, lorsque vous rassemblez toutes les informations pour poser la question à quelqu'un d'autre, la réponse devient évidente pour vous parce que vous mettez toutes les informations d'une manière que vous n'avez jamais vue auparavant, de nouvelles idées peuvent vous arriver. Par conséquent, vous pouvez vous rendre compte qu' il y a quelque chose que vous n'avez pas essayé ou qu'il y a peut-être quelque chose que vous n'avez pas essayé tout de suite. Merci d'avoir regardé, et je vous verrai dans la conférence suivante. 4. INTRODUCTION - Télécharger et installer Python 3 (2024): Bonjour à tous, et bienvenue dans la section de configuration de Python. Je m'appelle Andreas et je serai ton guide. Dans cette section, vous allez apprendre comment télécharger et installer Python sur trois des systèmes d'exploitation les plus populaires : Windows, macOS et Ubuntu Linux. Vous apprendrez également à utiliser Idle, environnement intégré de développement et d'apprentissage de Python. Définir un Python est la première étape pour devenir un programmeur Python. nombreux systèmes d'exploitation, notamment macOS Python est préinstallé sur de nombreux systèmes d'exploitation, notamment macOS et Linux. La version de Python fournie avec votre système d'exploitation s'appelle System Python. Le système Python est utilisé par votre système d'exploitation et est généralement obsolète. Il est essentiel que vous disposiez de la version la plus récente de Python afin de pouvoir suivre avec succès tous les exemples de ce cours. Important. N'essayez pas de désinstaller le Python du système. Les trois systèmes d'exploitation abordés dans ce cours font partie des systèmes d'exploitation les plus populaires pour les ordinateurs personnels. Mais si vous n'avez accès qu' à quelque chose comme un Android. Commençons donc par configurer Python sur votre ordinateur. Je te verrai dans la prochaine leçon. 5. Télécharger et installer Python 3 (Windows): Dans cette vidéo, vous allez apprendre à configurer Python sous Windows. Vous apprendrez où télécharger Python, comment installer Python et comment ouvrir l'environnement intégré de développement et d'apprentissage également connu sous le environnement intégré de développement et d'apprentissage nom d'Idle. Il existe deux manières de télécharger Python sous Windows. L'une d'entre elles provient de la distribution officielle de Python publiée sur le site Web python.org La seconde passe par le Windows Appstore. La version Windows App Store de Python est excellente pour les étudiants et à des fins pédagogiques, mais elle présente certaines limites que la distribution python.org n' Dans ce cours, vous allez télécharger la distribution officielle de Python sur python.org C'est bon. Commençons par ouvrir votre navigateur Internet préféré. Accédez ensuite à python.org. En haut du site Web, dans la barre de navigation principale, se trouve le bouton Téléchargements. Si vous passez la souris dessus, vous verrez un bouton permettant de télécharger la dernière version de Python pour Windows Au moment de cet enregistrement, cette version est Python 3.12 0.5 Cliquez sur le bouton pour télécharger Python. Lorsque Python a terminé le téléchargement, vous pouvez cliquer sur le fichier EXE en bas de votre navigateur ou utiliser l' explorateur de fichiers pour accéder au dossier Téléchargements afin de l' ouvrir à partir de là. Sur le premier écran du programme d'installation, vous pouvez voir que vous installez Python 3.12 0.5 ou la version que vous téléchargez Il existe un bouton Installer maintenant qui permet d'installer Python ainsi que Idle PIP et la documentation de Python Il existe un bouton d'installation personnalisé. Vous pouvez choisir l'emplacement de l'installation et sélectionner ou désélectionner différentes fonctionnalités Il existe une option permettant d'installer le lanceur pour tous les utilisateurs, ce qui est recommandé Et nous allons suivre cette section, ainsi qu'une option permettant d'ajouter Python 3.12 0.5 à Path Parlons un peu de ce que cela signifie. Avant de déterminer si vous devez ou non ajouter Python à Path, parlons de ce qu'est le chemin. Le chemin est une variable d'environnement sous Windows qui indique à la ligne de commande où rechercher les fichiers et les dossiers. Maintenant, si vous ne savez pas ce qu' une variable d'environnement ou la ligne de commande, c' est très bien. Le principal point à retenir est que Path indique au système d'exploitation où rechercher les éléments lorsque vous émettez des commandes L'ajout de Python à votre chemin vous permet d'utiliser commande Python dans un terminal pour exécuter des programmes Python. Encore une fois, si cela n'a pas de sens pour vous, c'est très bien. Vous devez donc ajouter Python à Paths. Si vous n'avez installé qu'une seule version de Python, vous pouvez ajouter Python à Path en toute sécurité dans les deux cas. Si plusieurs versions de Python doivent être installées sur le même ordinateur, il est préférable de ne pas ajouter Python à Path. Dans les deux cas, vous pouvez utiliser le lanceur Python pour Windows pour exécuter des programmes Python au lieu de la commande Python Dans ce cours, nous utiliserons l' environnement intégré de développement et d'apprentissage ou Idol au lieu de la commande Python. Dans ce cours, nous partons du principe que vous installez Python pour la première fois et que nous n'avons qu'une seule version de Python installée sur votre ordinateur. Même si nous n'utiliserons pas la commande Python dans ce cours, il sera utile de la rendre disponible ultérieurement. Vous verrez donc Python installé avec l'option Ajouter Python au chemin sélectionnée. Revenons-en à l'installation. Si vous installez Python pour la première fois et que vous ne prévoyez d'installer qu'une seule version de Python, sélectionnez Ajouter Python 3.12 0.5 à PAT Cliquez ensuite sur Installer maintenant. Si vous devez autoriser votre ordinateur à apporter des modifications à votre appareil, allez-y et faites-le. Cliquez ensuite. Sur la plupart des ordinateurs, l'installation de Python ne prend que quelques minutes. Une fois l'installation de Python terminée, vous verrez un écran indiquant que l'installation a réussi. Cet écran inclut des liens vers le didacticiel en ligne officiel et la documentation Python. Allez-y et cliquez sur le bouton Fermer. C'est bon. Python est maintenant installé, mais comment y accéder ? Dans ce cours, nous utiliserons l' environnement intégré de développement et d'apprentissage de Python ou Idle pour interagir avec Python. Il existe deux manières d'ouvrir Idle. L'une se fait par le biais du menu Démarrer. L'autre passe par la barre de recherche de Windows. Pour ouvrir Idle depuis le menu Démarrer, cliquez sur l' icône du menu Démarrer, puis faites défiler l'écran vers le bas. Ou cliquez sur toutes les applications jusqu'à ce que vous trouviez le dossier Python 3.12 0.5 J'ai installé la version Windows 11. À l'intérieur du dossier se trouve une application appelée Idle. Cliquez dessus pour ouvrir Idle. Cela ouvre le shell Idle. En haut de la fenêtre, vous pouvez voir la version de Python en cours d'exécution ainsi que certaines informations sur votre système d'exploitation. En dessous de ces informations se trouvent trois crochets rouges. C'est ce que l'on appelle une invite. Chaque fois que vous voyez cela, cela signifie que Python attend que vous lui donniez des instructions. Maintenant, allez-y et fermez Idle. Pour ouvrir Idle depuis la barre de recherche Windows, commencez par taper Idle dans la barre de recherche. Dans la section de l'application, vous verrez une option pour Idle qui indique Python 3.12 0.5 64 bits Il peut être indiqué 32 bits si vous avez téléchargé une version 32 bits de Python pour votre système. Cliquez dessus pour ouvrir Idle. Alors voilà. Vous savez maintenant où télécharger Python, comment l'installer et comment ouvrir environnement intégré de développement et d'apprentissage de Python. Si vous souhaitez savoir comment installer Python sur d' autres systèmes d'exploitation tels que macOS et Linux, n'hésitez pas à consulter les deux leçons suivantes de ce cours. 6. Utiliser le Shell Python 2024: Bonjour, tout le monde. Voici Andreas, et c'est une journée passionnante car nous allons écrire notre première commande en Python. Dans cette conférence, nous allons apprendre à utiliser le programme Idle fourni avec notre interpréteur Python Nous allons écrire notre code à l'aide du programme Idle, alors lançons-le d'abord. Vous pouvez le rechercher en tapant Idle dans le champ de recherche. Une fois qu'il est trouvé, cliquez sur l'idole ou l'interface graphique Python pour le lancer. Le shell Python apparaît sur notre écran. Un shell est un programme qui vous permet de taper des instructions sur l'ordinateur, peu comme le terminal ou l'invite de commande sur OSX et Windows respectivement. Nous ne pouvons entrer qu'une seule commande à la fois. Le shell attend une commande de la part de l'utilisateur pour l' exécuter, puis renvoie le résultat de l'exécution Ensuite, le shell attend la commande suivante. Les lignes commencent par trois de plus que les symboles. Faisons quelques exemples. Tapez cinq plus dix, puis entrez. Le shell revient à la réponse 15. Tapez maintenant cinq supérieur à un. Vous demandez à la coque si cinq est supérieur à un. Le shell répond « vrai ». Le shell est donc adapté pour exécuter une commande à la fois. C'est un outil très pratique pour envoyer des SMS à des commandes Python, en particulier lorsque nous commençons à utiliser le langage Cependant, si vous quittez le shell Python et que vous le saisissez à nouveau, toutes les commandes que vous avez saisies seront supprimées. De plus, vous ne pouvez pas utiliser le shell Python pour créer un programme réel, mais si vous voulez écrire un programme entier, la réponse est l'éditeur de fichiers. Pour coder un programme simple, vous devez écrire le code dans un fichier texte et enregistrer avec l'extension point PY. Ce fichier est connu sous le nom de script Python. Vous pouvez accéder à l'éditeur de fichiers à partir de Fichier, puis à partir du nouveau fichier. Il est similaire à un éditeur de texte et vous permet de saisir des instructions manuelles, enregistrer le fichier et d' exécuter le programme. N'oubliez pas que la fenêtre shell interactive sera toujours celle où l'invite «   trois symboles supérieurs à un symbole » sera toujours affichée. Au lieu de cela, la fenêtre de l'éditeur de fichiers n' affichera pas cette invite. Au cours de la prochaine conférence, nous allons en apprendre davantage sur votre environnement de codage. 7. Préparer Python (résumé) 2024: Félicitations. Python est maintenant installé sur votre ordinateur. Faisons une rapide récapitulation de tout ce que vous avez appris. Dans cette section, vous avez appris où télécharger Python sous Windows et macOS. Comment installer Python à l'aide des installateurs officiels sous Windows et macOS ou du gestionnaire AppedPackage sous Ubuntu Linux Vous avez également appris à ouvrir Idle, environnement intégré de développement et d'apprentissage de Python. Alors, où vas-tu aller à partir d'ici ? Eh bien, vous êtes prêt à commencer à coder en Python. Vous utiliserez Idle pour interagir avec Python et pour écrire et exécuter des programmes Python. Mais Idle n'est pas votre seule option. Vous voudrez peut-être envisager de configurer un autre éditeur. Pour vous aider, dans la leçon suivante, je vais vous montrer un éditeur Python alternatif, code VS ou le code Visual Studio. C'est donc une excellente alternative à l'original Python Idol. Je tiens à vous souhaiter bonne chance dans votre aventure avec Python, et je vous verrai bientôt. 8. Éditeurs de code 2024: Quand il s'agit de taper du code Python, deux options s'offrent à vous. Vous pouvez utiliser un éditeur de code ou un IDE , abréviation de Integrated Development Environment. Un IDE est essentiellement un éditeur de code doté de fonctionnalités sophistiquées telles que la complétion automatique, c' est-à-dire lorsque vous tapez du code. Cette fonctionnalité vous permet de compléter votre code, sorte que vous n'avez pas à taper chaque caractère à la main. Il s'agit d'une fonctionnalité qui améliore la productivité. Il vous offre également des fonctionnalités supplémentaires telles que le débogage, qui consiste à rechercher et corriger les bogues dans vos programmes, des tests, etc. Tant pour les éditeurs de code que pour les IDE, il existe de nombreuses options. Les éditeurs de code les plus populaires sont VS code, Adam et Sublime. Vous pouvez utiliser l' éditeur de code de votre choix. En ce qui concerne les IDE, encore une fois, il existe tellement d'options. Le plus populaire est Pi harm. Dans ce cours, je vais utiliser la distribution officielle de Python ou Idol, comme nous l'avons vu dans les leçons précédentes. Mais dans certains exercices, je vais également utiliser le code VS ou le code Visual Studio, car c'est mon éditeur de code préféré. Plus tard dans le cours, je vous montrerai comment installer un plugin ou une extension qui convertira le code VS en un puissant IDE. Avant d'aller plus loin, rendez-vous sur code.visualstudio.com et téléchargez la dernière version de VS 9. Écrire votre premier programme Python – Introduction 2024: Bonjour à tous, et bienvenue dans cette nouvelle section. La première section portait sur l' installation de Python sur votre ordinateur. Maintenant que vous l' avez installé, il est temps de commencer à coder. Dans cette section, vous allez écrire votre premier script Python. Vous apprendrez ce qui se passe lorsque vous exécutez des scripts comportant une erreur et vous apprendrez à déclarer des variables et à inspecter leur valeur. Vous apprendrez également beaucoup de choses sur la façon de rédiger des commentaires. En cours de route, vous découvrirez également les différences entre ce que l' on appelle les fenêtres interactives et les fenêtres de script à l'intérieur d'Idol. Vous découvrirez la boucle d'impression Red Evaluate, REPL. Non seulement vous créerez des scripts, mais vous apprendrez également à les exécuter. Vous découvrirez un opérateur très important appelé opérateur d'assignation. Quelles sont les règles de création de noms de variables, et qu'est-ce qui est considéré comme valide ou non valide ? Parallèlement à cela, vous découvrirez quelques-unes des normes décrites dans le PEP 8 Il est donc temps pour vous de commencer à écrire votre premier script Python. 10. Écrire notre premier programme Python 2024: OK, il est temps de commencer à écrire votre script Python. Vous allez utiliser un programme fourni avec votre installation de Python. Il s'appelle Idle, qui signifie développement intégré dans un environnement d'apprentissage. Il possède deux fenêtres principales, et vous passerez du temps dans les deux. La première s'appelle la fenêtre interactive, et je vais vous la partager dans une seconde. Ensuite, la fenêtre de l'éditeur, dans laquelle vous pouvez écrire des scripts et des programmes que vous enregistrerez et exécuterez ultérieurement. Vous pouvez saisir du code à la fois dans la fenêtre interactive et dans la fenêtre de l'éditeur. La différence entre les deux fenêtres réside dans la façon dont elles exécutent le code. C'est bon. Jetons un coup d' œil à la fenêtre interactive. Si vous n' avez pas encore ouvert Idle, ouvrez-le. Vous le trouverez dans le dossier dans lequel l'application a été installée. Dans mon cas, je vais choisir Python 3.12 et cliquer sur l'application Idle La fenêtre interactive Idls contient le shell Python. Vous pouvez voir ce nom ici, Idle Shell. Il s'agit d'une interface utilisateur texturée utilisée pour interagir avec le langage Python Vous pouvez taper un peu de code Python dans la fenêtre interactive et appuyer sur Entrée pour voir immédiatement le résultat. D'où le nom interactif. Lorsque la fenêtre s'ouvre, elle affiche le même texte au début. Le texte indique la version de Python exécutée par Idle et certaines des commandes que vous pouvez utiliser pour obtenir aide ou afficher des informations sur Python. Cet endroit, ici, s' appelle l'invite, et c'est là que vous allez pouvoir taper du code. Donc, juste en face de cette invite du curseur, tapez un plus un, puis appuyez sur Entrée. Et vous pouvez voir qu' il en produit deux. Python évalue l'expression de un plus un et affiche deux, puis affiche une autre invite juste en dessous Chaque fois que vous exécutez du code dans une fenêtre interactive, une nouvelle invite apparaît juste en dessous du résultat. Lorsque vous utilisez la fenêtre interactive, celle-ci fonctionne comme une boucle et inclut ces trois étapes différentes. Premièrement, Python lit le code que vous avez saisi à l'invite. Encore une fois, le truc avec les trois différents est un peu plus grand que des symboles. Deuxièmement, il évalue le code. Troisièmement, Python imprimera le résultat et attendra d'autres entrées. C'est ce que l'on appelle la boucle d'impression Red Evaluate. Nous l'avons généralement abrégé en REPL. REPL, les programmeurs Python l'appellent généralement le Python Shell sous le nom Python REPL ou simplement repel OK, essayons quelque chose d'un peu plus intéressant que de simplement ajouter des chiffres. Le rite de passage pour tout programmeur consiste à écrire le programme qui affiche la phrase «   bonjour, monde entier » à l'écran. À l'invite, continuez et tapez print, puis vous pouvez créer un ensemble de parenthèses ici J'ouvre donc des parenthèses, et vous pouvez voir que cela me donne quelques instructions supplémentaires, ce qui est plutôt sympa Et nous apprendrons tout cela au cours du cours. Dans ce cas, nous allons imprimer du texte. Nous voulons donc bonjour à tout le monde. Et si j'appuie sur Entrée, vous pouvez voir qu'il affiche Hello world. Ce bout de code que vous avez saisi ici, print, est une fonction Une fonction est un code qui exécute certaines tâches et qui peut être invoqué par son nom. Le code ci-dessus invoque ou appelle la fonction d'impression contenant le texte Hello World et le produit Les parenthèses indiquent à Python d'appeler la fonction d'impression. Si je tape simplement print tout seul, il ne saura pas comment je veux l'appeler. Il va juste m'en parler. Cela me dit qu'il s'agit d'une fonction intégrée nommée print. Pour appeler cette fonction, je dois mettre les parenthèses puis lui dire quelque chose de valeur Comme vous le voyez, cela m'incite à le mettre là-dedans. Et la dernière fois que nous avons tapé la même chose, je vais le refaire. Et génial. Ces parenthèses entourent également tout ce qui est envoyé dans la fonction, entre en tant qu'entrée Et les guillemets indiquent que Hello world est vraiment du texte et non quelque chose d'autre que nous aimerions imprimer. À l'intérieur d'Idol, vous pouvez voir des reflets intrigants se produire avec différentes couleurs Avec la configuration actuelle que j'ai, vous pouvez voir qu'une fonction est différente de la sortie, et vous pouvez voir que ce qui est entre guillemets est différent de, disons, ces nombres ici. Par défaut, les fonctions sont surlignées en violet et le texte en vert. Cette fenêtre interactive est très utile pour essayer petits exemples de code et explorer le langage Python, mais elle présente de grandes limites. Vous devez saisir le code une ligne à la fois. Vous pouvez enregistrer le code Python dans le fichier texte et exécuter tout ce code afin d'exécuter un programme entier. C'est ce à quoi nous allons passer en utilisant la fenêtre de l'éditeur. Vous allez écrire vos propres fichiers Python l'aide de la fenêtre de l'éditeur Idols Vous pouvez ouvrir la fenêtre de l' éditeur en sélectionnant fichier et nouveau fichier dans le menu en haut de la fenêtre interactive. Laisse-moi te montrer ça. La fenêtre interactive restera ouverte lorsque vous ouvrirez la fenêtre de l'éditeur. Il affiche le résultat généré par le code dans la fenêtre de l'éditeur. Vous devez donc disposer les deux fenêtres de manière à pouvoir les voir toutes les deux en même temps. Dans la fenêtre de l'éditeur, saisissez le même code que celui que vous utilisez pour imprimer Hello World dans la fenêtre interactive. Notez que Idle met en évidence le code saisi dans la fenêtre de l'éditeur comme il l'a fait dans la fenêtre interactive Il n'est pas nécessaire d'ajouter l'invite telle qu'elle était dans la fenêtre interactive. Ce n'est pas obligatoire. Avant de lancer le programme, vous devez l'enregistrer. Sélectionnez donc Fichier et Enregistrer dans le menu et enregistrez le fichier sous le nom helloworld point PY Sur certains systèmes, il utilisera un répertoire par défaut dans lequel Python est installé. Au même endroit qu'Idle. Assurez-vous de ne pas enregistrer vos fichiers dans ce répertoire. Enregistrez-les plutôt sur votre bureau ou dans un dossier du répertoire personnel de l'utilisateur. J'ai créé un dossier appelé Python sur mon bureau, et je vais y enregistrer le fichier. L'extension point PY indique que le fichier contient du code Python. En fait, enregistrer votre fichier avec une autre extension supprimera le surlignage du code. IDL ne met en évidence code Python que lorsqu'il est stocké dans un fichier PY à points Pour exécuter le programme, vous pouvez sélectionner Exécuter dans le menu déroulant et exécuter le module. Vous remarquerez peut-être également que certains raccourcis clavier sont surlignés ici. Dans ce cas, il s'agit de la touche de fonction 5. Le programme va donc sortir dans la fenêtre interactive. Vous verrez redémarrer , puis le répertoire et le même nom que le fichier en cours d'exécution et sa sortie. Idle redémarre à chaque fois l' interpréteur Python, qui est le programme informatique qui exécute réellement votre code lorsque vous exécutez un fichier Cela garantit que les programmes sont exécutés de la même manière à chaque fois. Si vous souhaitez ouvrir un fichier, vous pouvez accéder à Fichier et ouvrir. Et dans mon cas, je rouvre le fichier que nous venons d'enregistrer dans mon dossier Python et helloworld Vous pouvez également ouvrir un fichier à partir du gestionnaire de fichiers, tel que Windows Explorer ou Mac OS Finder, en cliquant dessus avec le bouton droit de la souris et en disant « ouvrir avec ». C'est bon. Vous avez créé votre premier programme. Ensuite, il est temps de faire des erreurs. 11. Comprenons quelques erreurs 2024: OK, il est temps de faire des erreurs. Il est vraiment difficile de ne pas faire d'erreur lors de la programmation. Et au cas où vous ne l'auriez pas encore fait, je vais vous demander de vous entraîner à en créer quelques-unes juste pour avoir une idée de ce qui se passe. Le premier type que vous allez rencontrer s' appelle une erreur de syntaxe. Et l'erreur de syntaxe se produit lorsque vous écrivez du code qui n'est pas autorisé dans le langage Python. La langue ne comprend pas ce que vous essayez de faire. Je vais vous demander de créer une erreur dans le code que vous avez déjà écrit. C'est une pratique de créer cette erreur de syntaxe. Je veux que vous rouvriez votre fichier Hello Underscorworld point py Et à la fin, allez-y et supprimez le deuxième guillemet. Cela commence donc par un guillemet puis bonjour à tous, mais il n'y en a aucun qui ferme la citation à cet endroit. Si vous l'enregistrez, puis que vous exécutez ou appuyez sur la touche F cinq, vous obtenez quelque chose de nouveau ici où il est indiqué qu' littéral de chaîne indéterminé a été détecté à la première ligne Selon la version de Python dont vous disposez, ce message peut changer. Python 3.12 a ajouté de nombreuses autres explications explicites des erreurs, ce qui est vraiment sympa Et vous en verrez d'autres tout au long du cours au fur et à mesure que nous poursuivrons. Mais ce que vous pourriez voir dans une version antérieure de ce document est une déclaration qui dit EOL, et EOL signifie end of line Dans ce cas, il a été reformaté et dit quelque chose d'un peu plus gentil Alors, qu'est-ce qu'une chaîne littérale ? Eh bien, une chaîne littérale est ce que vous avez créé ici. Mais dans ce cas, vous ne l' avez pas fermé ou terminé avec les guillemets supplémentaires. Pour créer une chaîne littérale, vous devez placer le texte souhaité entre guillemets Il peut s'agir d'un guillemet double ou d'un guillemet simple, et vous y consacrerez beaucoup de temps dans un prochain cours consacré aux chaînes de caractères. Pour corriger cette erreur de syntaxe, vous devez ajouter cet autre élément et l'enregistrer. Et puis il peut fonctionner et imprimer. C'est donc considéré comme une erreur de syntaxe. L'autre type d'erreur que vous rencontrerez lors de la programmation s'appelle une erreur d'exécution. Idle détecte les erreurs de syntaxe avant même que le programme ne commence à s'exécuter. En revanche, les erreurs d'exécution ne se produisent que lorsqu'un programme est en cours d'exécution. Lorsqu'une erreur se produit, Python arrête d'exécuter le programme, puis il affiche plusieurs lignes de texte, ce que l'on appelle une trace, et il affiche un tas d'informations utiles sur l'erreur. Ce qui est très intéressant, c' est qu'il vaut mieux les lire de bas en haut. Je vais vous demander de retourner dans votre fichier, et cette fois, vous allez créer une erreur d'exécution, puis vous pourrez voir la différence entre les deux. Pour créer une erreur d'exécution, essayez plutôt ceci. Supprimez les deux guillemets. Avez-vous remarqué que la couleur du texte passe au noir lorsque vous supprimez les guillemets ? Idle ne reconnaît plus Hello World sous forme de texte. Donc, ce qui va se passer ici, c'est que c'est un code valide. Il comprend sa syntaxe, mais quelque chose de différent va se produire. Allez-y, enregistrez-le, et lorsque vous l'exécuterez, vous verrez cela se produire. C'est ce qu'on appelle une erreur d'exécution. Et encore une fois, pour lire la trace, c'est ce qui se passe ici. Il vaut mieux le lire du bas vers le haut. Il indique donc tout de suite qu'il agit d'une erreur de nom. Il y a un nom ou quelque chose que vous demandez d'imprimer. Il s'appelle Hello, et il n'est pas défini. Il ne sait pas, vous savez, ce qu'est un bonjour ou à quoi il fait référence C'est valide en ce qui concerne sa syntaxe, la façon dont il est écrit, mais hello n'existe pas. Cela n'a donc pas encore été défini. Et c'est ce que vous allez faire dans la leçon suivante, c'est apprendre à définir des variables. Et si cela devait continuer, cela aurait en fait le même problème avec le monde. Encore une fois, vous pouvez lire du bas vers le haut. Il s'agit donc d'une erreur de nom. Le nom hello n'est pas défini, puis il vous montre l' instruction où cela se produit. Et puis ça va un peu plus loin ici. Il s'agit du fichier à partir duquel il est en train de lire. Parfois, les projets Python comportent plusieurs fichiers et le retraçage peut mener à un autre fichier. Donc, dans ce cas, il est écrit « OK, où vous l'avez enregistré dans le nom du fichier », et cela vous indique en fait de quelle ligne il s'agit. Encore une fois, vous n'allez pas avoir de programmes aussi simples à venir. Il ne s'agit que d'une seule ligne. Il est donc assez simple de savoir où se situe le problème. Mais c'est ainsi que fonctionne le retraçage, et vous pouvez les pratiquer beaucoup plus au fur et à Comprenez-vous donc la différence entre une erreur d'exécution et une erreur de syntaxe ? Génial. Dans le cas d'une erreur de syntaxe, il ne vous permettra même pas de l'exécuter car cela ne ressemble pas à un code Python normal. Il ne suit pas la bonne syntaxe. Dans ce cas, il s'agit d'une erreur complètement différente où il a tout lu , mais au moment de l'exécuter, il n'a trouvé nulle part la définition de hello . OK, il est temps de t'entraîner un peu par toi-même. En guise de critique, essayez d' écrire un programme qu'Idle ne lancera pas en raison d' une erreur de syntaxe. Écrivez ensuite un autre programme qui ne se bloque que lorsqu'il est en cours d'exécution en raison d'une erreur d'exécution Dans cette leçon, vous trouverez le fichier de solutions dans vos ressources. OK. Ensuite, vous allez tout apprendre sur la création de variables. 12. Créer une variable 2024: Maintenant que vous avez vu brièvement les variables dans la dernière leçon, il est temps d' en parler plus en profondeur. Dans les variables ou les noms Python, il est possible de lui attribuer une valeur, puis de l'utiliser pour y faire référence ultérieurement dans votre code. Et l'idée vraiment cruciale d' une variable est que vous pouvez lui attribuer et lui donner une valeur. Mais si vous souhaitez référencer cette valeur ultérieurement dans le programme, vous pouvez appeler le nom de la variable et la réutiliser ou éventuellement lui donner une valeur différente. Les variables sont vraiment fondamentales pour la programmation, et ce pour deux raisons principales. Premièrement, il permet de garder accessibles les valeurs que vous essayez d'intégrer dans votre programme. Par exemple, vous pouvez attribuer le résultat d' opération ou d'une expression fastidieuse à une variable afin que votre programme n' exécute pas l'opération chaque fois que vous devez utiliser le résultat. Il peut simplement accéder à la valeur directement depuis la variable. L'autre raison est que les variables peuvent vous donner du contexte. Lorsque vous avez le chiffre 20, cela peut signifier plusieurs choses différentes. Cela peut signifier le nombre d'élèves en classe. Il peut s'agir du nombre de fois où quelqu'un a accédé un site Web ou s'est rendu quelque part, etc. Le fait de donner à la valeur 20 un nom, comme un certain nombre d'étudiants, permet de clarifier la signification de cette valeur. Dans cette leçon, vous allez apprendre à utiliser des variables dans votre code, ainsi que certaines règles et directives de style sous-jacentes. Pour y parvenir, cependant, pour créer une variable, vous devez vous renseigner sur ce l' on appelle l'opérateur d'affectation. Commençons donc par le deuxième opérateur de mots. Un opérateur est un symbole tel que le plus ou le moins qui effectue une opération sur une ou plusieurs valeurs. Vous en avez utilisé un plus tôt sur deux plus deux, et il effectue l' addition dans ce cas. S'il était égal à deux moins deux, il effectuerait une soustraction Dans le cas d'une affectation, les valeurs sont attribuées aux noms de variables à l'aide d'un symbole spécial appelé opérateur d'affectation, qui est un signe égal unique. Et cela peut être un peu déroutant. Vous découvrirez comment fonctionne cet opérateur d' assignation et comment il compare pas nécessairement deux choses disant qu'elles sont égales l'une à l'autre. Il s'agit en fait de donner la valeur et de l'attribuer au nom de cette variable L'opérateur prend la valeur qui se trouve sur le côté droit de l'opérateur et l'affecte au nom sur la gauche Laissez-moi y jeter un œil dans la fenêtre interactive. Tapez ceci. Si vous voulez créer une variable, son nom est salutation Pour lui attribuer une valeur, vous devez utiliser le signe égal, l'opérateur d'affectation. Vous allez lui donner la chaîne littérale de Hello world. Si vous deviez taper print, choisissez d'utiliser le nom de la variable salutation comme valeur choisissez d'utiliser le nom de la variable salutation Vous obtiendrez le même résultat que si vous deviez lui faire imprimer le littéral lui-même, bonjour tout le monde Maintenant, si vous deviez taper la salutation seule, vous verrez qu'elle sera assignée à la chaîne littérale hello world Et si vous faisiez une faute de frappe lors de l'impression et que vous choisissiez la salutation en majuscules ? Ce code est à nouveau valide. Cela montre qu'en ce qui concerne la syntaxe, cela fonctionne. Mais lorsque j'appuie sur Entrée, vous pouvez voir que j'ai une erreur d'exécution ou une erreur de nom. Le nom de salutation n' est pas défini. Et puis, encore une fois, c'est un avantage de Python qui vous donne en fait une petite meilleure idée du contexte de ce qui se passe. Et il est écrit : Vouliez-vous dire salutation ? Parce qu'il y a une variable nommée salutation ici, ce qui est vraiment sympa Il s'agit d'une mise à jour. Il se peut que cela ne soit pas le cas dans une version antérieure de Python. Oh, oui. La case que vous utilisez dans le nom d'une variable est importante et elle est complètement différente. Vous avez peut-être appris dans d'autres contextes de programmation que les majuscules n'avaient peut-être pas d'importance, mais dans le cas de Python, c'est Il existe maintenant des règles relatives à la validité des variables et des noms dans Python. Encore une fois, pour éviter des erreurs de syntaxe. Les noms de variables peuvent contenir des lettres majuscules et minuscules N'importe lequel d'entre eux est bon. Il peut inclure des chiffres. Il peut inclure des soulignements. Et la seule astuce, cependant, c'est que cela ne peut pas commencer par un chiffre, ne peut pas commencer par un chiffre. Permettez-moi donc de vous donner quelques exemples. Un nom Python valide peut donc être une chaîne un ou un trait de soulignement A un S quatre, ou une liste de soulignements de villes Certaines des choses qui ne seraient pas valides commenceraient par un chiffre. Donc cinq câbles ou 65 tours. Alors gardez cela à l'esprit. Vous ne pouvez pas commencer par un chiffre, vous pouvez commencer par un chiffre. OK ? Génial. Outre les caractères alphabétiques dont nous venons de parler et les chiffres du trait de soulignement, les noms de variables Python peuvent contenir des caractères Unicode Unicode, si vous ne le connaissez pas, est un standard pour représenter numériquement des caractères, et il est utilisé dans la plupart des systèmes d'écriture du monde Permettez-moi donc de vous donner quelques exemples de choses que vous avez peut-être vues. Ainsi, des lettres décorées en français, en espagnol ou en allemand, où vous avez comme E avec un accent dessus ou avec un umlat, vous savez, différentes choses de ce genre qui sont décorées Vous pouvez utiliser ces caractères dans les symboles chinois, japonais ou arabes, mais tous les systèmes sur lesquels vous exécutez votre code ne peuvent pas afficher ces caractères. Il faut donc faire attention, et il serait peut-être préférable d'utiliser ceux que nous avons spécifiés un peu plus tôt. Vous allez en apprendre beaucoup plus sur Unicode dans une section bien ultérieure, mais j'inclurai également quelques ressources si vous voulez aller de l'avant. Il est difficile de choisir un bon nom pour une variable. Il existe quelques mèmes qui montrent quelqu'un qui réfléchit vraiment sérieusement comment trouver un nom Et il y a certaines directives que vous voudrez peut-être suivre. La première chose que je veux partager avec vous est qu'il peut être bien mieux de garder les choses descriptives que de les garder très brèves. Il est assez difficile de connaître votre intention quant à une variable nommée S difficile de connaître votre intention quant à , surtout s'il s' agit de secondes. Cela pourrait être beaucoup plus utile ou encore plus explicite et descriptif  : quelques secondes par heure. Cela peut vous sembler beaucoup de choses à taper. Ce que vous apprendrez, c'est que lorsque vous travaillez avec un éditeur, il existe de nombreux outils qui peuvent vous aider à compléter les noms des éléments afin que vous n'ayez pas à soucier de garder les choses très serrées et courtes. Il peut être beaucoup plus utile pour vous d'avoir à l'avenir un nom descriptif qu'un simple nom court. La bonne règle est de limiter le nom de la variable à trois ou quatre mots au maximum. D'accord. J'ai donc dit que vous pouviez utiliser des lettres minuscules ou majuscules Eh bien, où devriez-vous les utiliser ? L'étui que vous devez utiliser peut varier en fonction de ce que vous souhaitez faire, mais il existe certaines directives. Parlons des différentes manières de le faire. L'un des termes utilisés est la combinaison de majuscules, où vous commencez par, disons, des lettres minuscules, puis chaque mot que vous ajoutez à l'intérieur du nom de cette variable, vous le mettez en majuscule pour la première lettre de celui-ci Voici donc quelques exemples. Ainsi, un certain nombre d' étudiants peuvent être étudiants en capital nul ou une liste de noms de majuscules, etc. C'est ce qu'on appelle un cas mixte. L'autre méthode consiste à utiliser des traits de soulignement, en gardant tout en minuscules, puis en utilisant un trait de soulignement entre chacun d' C'est ce que l'on appelle aussi affaire Snake. Voici à quoi ressembleraient ces variables en minuscules ou en minuscules avec des soulignements En Python, il est plus courant d' écrire les noms de variables dans ce style. Il n'est pas interdit d'utiliser des majuscules et minuscules, mais c'est généralement plus dans le style de Python que de le faire. En fait, il y a tout un sujet à ce sujet, appelé PEP 8 PEP 8 est largement considéré comme le guide de style officiel pour écrire en Python, comment les choses sont nommées, comment les choses doivent être formatées, comment les choses doivent ressembler Et vous pouvez en apprendre beaucoup plus à ce sujet en consultant ce site web, pepight.org Quelqu'un a créé ce site pour vous donner un aperçu de toutes les fonctionnalités d'une manière bien formatée Il y a plus d'informations. Je vais inclure un lien dans la description. En suivant les normes décrites et la PEP 8, vous garantissez que votre code Python est lisible pour la plupart des programmeurs Python Il ressemblera au style des autres utilisateurs de Python En ce qui concerne le nom PEP, il signifie Python Enhancement Protocol Un PEP est un document de conception. Il est utilisé par la communauté Python pour proposer de nouvelles fonctionnalités ou des modifications du langage. Lorsque vous travaillez avec des variables, il est agréable de pouvoir inspecter les valeurs, et vous pouvez le faire dans la fenêtre interactive. Pour vérifier la valeur qu'une variable contient actuellement, vous pouvez taper le nom de la variable elle-même à l'invite. Le simple fait de taper le nom à l'invite affichera souvent quelque chose de différent de ce qui est affiché par rapport à l'impression. Vous pouvez également en savoir plus sur le type de variable en saisissant le nom de la variable dans type. Laissez-moi vous montrer à quoi ils ressemblent. Supposons que vous ayez créé une variable de X et que X se voit attribuer la valeur de deux. Si je tape X et que j' inspecte la variable, vous pouvez voir que sa valeur est deux. Et si je devais imprimer, j'obtiendrais le même résultat. Maintenant, cela pourrait sembler un peu différent si je devais dire, assignez Y à la valeur de la chaîne littérale deux Il s'agit donc d'un texte plutôt que d' une valeur numérique réelle. Donc, dans ce cas, si je tape Y, vous verrez qu'il produit quelque chose légèrement différent par rapport à ce que je devrais imprimer. Cela peut donc être un peu déroutant. Et ce que vous allez apprendre, c'est que ce sont des types différents, et qu'ils sont interprétés différemment dans Python. Et c'est un vaste sujet que vous aborderez dans des sections bien ultérieures. Une chose que vous pouvez vérifier, c'est que vous pouvez dire « tapez ». Vous pouvez voir ici qu'il demandera l'objet ou le nom, puis qu'il reviendra. C'est ce que la flèche indique : le type de l'objet. Et ce n'est qu'un aperçu. Essayez-le donc avec X. Il est dit que c'est une classe d'entiers. Maintenant, par rapport au type de Y. Y est la classe d'une chaîne, et ils sont représentés différemment lorsque vous entrez simplement le nom de la variable Et gardez à l'esprit qu' une inspection variable comme celle-ci ne fonctionne que dans cette fenêtre interactive à l'intérieur d'un REPL. Essayez par exemple d'exécuter le programme suivant depuis la fenêtre de l'éditeur. Donc, disons que nous commençons par définir salutation et que cela signifie bonjour tout le monde Et puis, sur la ligne suivante, tapez simplement « salutation ». Qu'est-ce que cela va produire lorsque vous lancerez ce programme ? Comme vous pouvez le voir quand il l'a exécuté, il n'a rien produit. Ce type d'inspection d' une variable ne fonctionne ici que dans la fenêtre interactive. À titre de résumé, voici quelques exercices que vous pouvez effectuer à l'aide de la fenêtre interactive. Affichez du texte à l'aide de l'impression. Ensuite, à l'aide de la fenêtre interactive, assignez une chaîne littérale à une variable Imprimez ensuite le contenu de la variable à l'aide de la fonction d'impression. Répétez ces deux premiers exercices en utilisant maintenant la fenêtre de l'éditeur avec un fichier. Vous trouverez le fichier de solution dans la leçon, à l'intérieur de vos ressources. C'est bon. Ensuite, comment pouvez-vous laisser notes à l'intérieur de votre code ? Merci d'avoir regardé. 13. Ajouter des commentaires 2024: Dans cette leçon, vous allez apprendre à prendre des notes utiles. C'est ce qu'on appelle des commentaires. Les programmeurs lisent parfois du code qu'ils ont écrit il y a quelque temps et se demandent à quoi cela sert Lorsque vous n'avez pas regardé un code depuis longtemps, il peut être difficile de se rappeler pourquoi vous l'avez écrit comme vous l'avez écrit. Pour éviter ce problème, vous pouvez laisser des commentaires dans votre code. Les commentaires sont des lignes de texte qui n'affectent pas le fonctionnement du programme. Ils documentent ce que fait le code et pourquoi vous, le programmeur, avez pris certaines décisions. Ouvrons un fichier précédent, bonjour tout le monde, et modifions le code. Tout s'est terminé dans la première ligne du code. La salutation est synonyme de bonjour à tout le monde. Imprimer le message de salutation. Pour commencer un commentaire, vous utilisez le symbole de hachage, parfois appelé signe numérique C'est ce que j'aime appeler ça. Il est aussi parfois appelé le signe de la livre aux États-Unis. Il se peut que le Royaume-Uni ne soit pas d'accord avec cela. Le nom technique est un octothorp. Vous en avez peut-être entendu parler. Commencez par ce symbole de hachage, puis tout ce que vous écrirez ensuite sera ignoré lors de l'exécution du programme Donc, si je sauvegarde puis que j'exécute ce code, vous pouvez voir qu'il s'exécute normalement. Cela n'a rien changé à la façon dont ce code particulier fonctionne. Vous pouvez commenter votre code de deux manières. Le premier commence par un symbole de hachage sur une nouvelle ligne et s' appelle un commentaire de bloc. L'autre style est appelé commentaire intégré. Il continue sur la même ligne avec un symbole de hachage juste après le code Vous pouvez toujours utiliser le signe dièse, le symbole de hachage à l'intérieur d'une chaîne Par exemple, Python ne confondra pas ce qui suit avec une chaîne. Permettez-moi de revenir à la fenêtre interactive. Si je devais imprimer une chaîne indiquant le numéro un, cela ne poserait aucun problème. Il va quand même être imprimé car il fait partie d'une chaîne. En général, c'est une bonne idée de faire en sorte que vos commentaires soient aussi courts que possible. Mais parfois, vous devez écrire plus que ce qui convient raisonnablement sur une seule ligne. Dans ce cas, vous pouvez continuer votre commentaire sur une nouvelle ligne et le commencer par un symbole dièse Vous pouvez également commenter des lignes de votre code. Pour ce faire, vous devez placer ce signe de hachage au début d'une ligne de code Il s'agit d'un moyen non destructif de tester le comportement de votre programme sans qu'il exécute des lignes de code spécifiques. Et voici quelques recommandations façon dont vous devez formater vos commentaires. Encore une fois, conformément à la PEP 8, les commentaires doivent toujours être rédigés en phrases complètes Ils doivent comporter un seul espace entre le symbole de hachage et le premier mot du commentaire Les commentaires intégrés doivent commencer par deux espaces après votre code PEP 8 recommande également que vos commentaires soient utilisés avec parcimonie Les commentaires qui décrivent réellement ce qui est déjà évident ne sont pas nécessaires et peuvent être une grosse bête noire pour de nombreux programmeurs Il est préférable d' utiliser les commentaires pour clarifier code qui peut être difficile à comprendre ou pour expliquer pourquoi quelque chose est codé d' une certaine manière . Merci de m'avoir regardée. 14. Interagir avec IDLE 2024: Tout au long de ce cours, nous vous ferons participer à un grand nombre de ces exercices de codage interactifs. L'idée est que vous n'êtes pas simplement assis là à me regarder parler, mais que vous mettez en pratique tout ce que vous apprenez. De cette façon, il devient réellement le vôtre. Ces exercices de codage sont excellents car nous pouvons vous donner instructions et vous montrer ce qui doit se passer si vous écrivez le bon code, ce qu'il doit faire et ce que vous serez capable de faire avec votre code, ainsi que de le voir s' exécuter dans la console. C'est grâce à un grand nombre de ces exercices que vous pourrez monter de niveau et que vous deviendrez un meilleur codeur. Donc, pour vous assurer que vous pouvez interagir avec Idol, essayez les étapes suivantes sur votre ordinateur. Mettez la vidéo en pause maintenant et terminez ce défi. C'est bon. Comment vous êtes-vous entendu ? J'espère vraiment que tu as bien essayé. Parce que c'est dans ces moments-là que vous allez apprendre à coder. Bien entendu, c'est le tout début. Maintenant, il s'agit d'un exercice très simple conçu pour assurer que vous pouvez localiser le logiciel inactif sur votre programme, démarrer en mode inactif, puis faire quelque chose de très simple dessus. Il vous suffit donc de saisir une déclaration d'impression. Tout d'abord, nous allons localiser le mode inactif sur votre système. Je vais donc cliquer ici pour rechercher Idle. C'est ici. Vous pouvez également cliquer sur le bouton étoile. Localisez le dossier Python. Ensuite, vous verrez un élément inactif dans ce groupe. Il suffit donc de cliquer dessus. Et cela devrait permettre à l'idole de fonctionner sur notre système. A Idol s'exécute dans cette fenêtre du shell Python. Ici, l'interpréteur du mode interactif est en cours d'exécution, et nous avons l'invite, les trois signes supérieurs à. C'est l'invite qui attend nous saisissions une instruction Python, puis elle exécutera cette instruction. L'exercice vous indique donc de taper une instruction d'impression. Allons-y et tapons-le. Imprimer. Ensuite, nous avons une parenthèse ouvrante, puis nous tapons les caractères que nous voulons imprimer entre guillemets C'est un test d'idole. Ensuite, nous mettons un guillemet fermant et une parenthèse fermante Maintenant, je vais appuyer sur la touche Entrée, et nous devrions voir le résultat de cette déclaration. Ainsi, lorsque j'appuie sur la touche Entrée, l'interpréteur Python a exécuté cette instruction, et nous voyons ici le résultat. Donc, si vous avez tout saisi correctement, votre écran devrait ressembler à ceci Il est possible que vous ayez fait une faute de frappe. Par exemple, une erreur courante consiste à omettre les guillemets. Donc, si vous avez fait quelque chose comme ça, laissez-moi simplement faire cette erreur exprès Vous pouvez donc voir que j'ai tapé la déclaration, mais j'ai omis les guillemets Et dans ce cas, je reçois un message d'erreur m' indiquant que j'ai une erreur de syntaxe, une syntaxe non valide. Donc, si vous dites quelque chose comme ça, examinez la façon dont l'énoncé apparaît dans votre manuel et assurez-vous de le taper exactement comme il apparaît Maintenant, une autre erreur courante consiste à omettre le nombre correct de parenthèses, par exemple Ici, je tape correctement l' instruction d'impression, sauf que je n'ai pas saisi la parenthèse fermante Maintenant, si j'appuie sur la touche Entrée, vous remarquerez que je ne reçois aucun message d'erreur, mais que l'interpréteur Python attend que je termine l'instruction. Le curseur passe simplement à la ligne suivante, et chaque fois que j' appuie sur la touche Entrée, il passe simplement à la ligne suivante, mais cela ne me donne aucun résultat. Il attend que je tape la parenthèse fermante, puis il me donne le résultat Donc, si vous observez ce comportement, cela indique probablement que vous avez oublié une parenthèse Vous vous habituerez à toutes ces choses en travaillant de plus en plus dans un environnement inactif. Maintenant, lorsque vous avez terminé avec Idol, vous pouvez accéder au menu Fichier et sélectionner Exit, ou vous pouvez simplement taper Control plus Q avec un clavier, et cela le fermera. Merci d'avoir regardé. 15. Comment trouver de l'aide 20224: Yo. Quoi de neuf, tout le monde. Dans cette conférence, nous allons expliquer comment trouver de l'aide lorsque vous êtes bloqué. Vous découvrirez également les meilleures pages Web et ressources pour les questions et réponses sur Python. Commençons donc. Lorsque vous apprenez à programmer à un moment donné, vous serez bloqué. Ceci est tout à fait normal pour les débutants et les utilisateurs expérimentés en programmation. Lorsque vous êtes bloqué et avant pouvoir obtenir de l'aide de quelqu'un d'autre, vous devriez d'abord évaluer votre situation. Je veux dire, pour vous remettre en question, sur ce que vous essayez de faire et sur les résultats que vous avez obtenus. Résoudre des problèmes de programmation n'est pas aussi difficile que vous le pensez. Faisons un exemple. Tapez A plus B. Puis appuyez sur Entrée. Une flèche apparaît en rouge. Python imprime un retraçage lorsqu'une exception est déclenchée dans votre code Un suivi est un rapport contenant les appels de fonction effectués dans votre code à un moment précis. Pas de soucis. J'ai une section entière expliquant les erreurs et comment les gérer. Il n'est pas nécessaire de comprendre ce que signifie le message d'erreur pour le moment, mais je vais vous donner une brève explication. Il s'agit d'une erreur de nom, l'un des types les plus courants d'erreurs Python. Une erreur de nom signifie que vous avez essayé d' utiliser une variable qui n'existe pas encore. Une erreur de nom est générée lorsque vous essayez d'utiliser un nom de variable ou de fonction non valide. En Python, le code s'exécute de haut en bas. Cela signifie que vous ne pouvez pas déclarer une variable après avoir essayé de l'utiliser dans votre code. Python ne saurait pas ce que vous voulez que la variable fasse. Dans notre exemple, nous n'avons pas déclaré de variable appelée A ni de variable appelée B. Pour résoudre ce problème, nous devons déclarer A et B avant de les utiliser dans notre code. Il existe deux principaux types d'erreurs. Une erreur de syntaxe signifie essentiellement que vous avez commis une erreur de ponctuation. Il s'agit des erreurs les plus courantes. Habituez-vous à lire ce que vous avez tapé de très près et le comparer très soigneusement à ce que vous auriez dû taper Des erreurs de logique se produisent lorsque vous avez mal compris ce que vous essayez de faire ou ce que vous avez demandé à Python de faire Ces erreurs peuvent être difficiles à détecter et plus difficiles à détecter. Le moyen le plus simple d'obtenir de l'aide est copier le message d'erreur dans la recherche Google, et vous devriez voir des tonnes de liens expliquant ce que signifie le message d'erreur et ses causes. Vous pouvez également essayer de demander aux utilisateurs directement dans un formulaire Web tel que Stack Overflow Voici l'adresse du site Web. Stack Overflow est l'un des de questions-réponses les plus populaires sites de questions-réponses les plus populaires pour les programmeurs Il est très fiable car les utilisateurs peuvent voter pour les réponses qu'ils trouvent les plus utiles. Les meilleures réponses sont donc généralement les premières que vous trouverez. Une autre façon de trouver de l'aide est consulter la documentation officielle de Python. Voici l'adresse du site Web. Il est utile et contient une grande quantité de documentation. Enfin, pythontutor.com est une excellente page Web. Il dispose d'un outil pour écrire ou coller programme Python et visualiser ce que fait l'ordinateur étape par étape lorsqu'il exécute ces programmes 16. Écrire votre premier programme Python – Résumé: Dans cette leçon, je vais résumer la section et partager quelques ressources supplémentaires pour que vous puissiez continuer à apprendre. Tout au long de cette section, plusieurs nouveaux concepts vous ont été présentés. Vous apprendrez comment les variables donnent des noms aux valeurs de votre code. Vous apprenez à utiliser l'opérateur d'affectation pour attribuer des valeurs aux variables. Découvrez les erreurs de syntaxe et la façon dont elles se produisent lorsque vous écrivez du code non autorisé dans le langage Python. Vous avez également découvert erreurs d'exécution et la façon dont elles se produisent pendant l'exécution d'un programme. Les erreurs d'exécution vous permettent également de retrouver informations utiles sur l'erreur est préférable de les lire de bas en haut. Comment les commentaires sont des lignes de code qui ne sont pas exécutées et qui servent principalement de documentation. Pour tester vos connaissances, il existe un quiz que vous pouvez consulter dans cette section. Félicitations pour la rédaction de votre premier programme, et j'espère vous voir bientôt dans la section suivante. 17. Cordes et méthodes de cordes – INTRODUCTION 2024: Bonjour à tous, et bienvenue sur les chaînes et les méthodes de chaîne. Les programmeurs Python traitent du texte au quotidien, qu'il s'agisse de l'afficher sur une page Web ou dans une interface utilisateur graphique, ou même d'accepter une entrée saisie par un utilisateur dans votre application Il existe même des segments entiers de la science des données qui traitent extraction d'informations à partir de textes, tels que l'analyse des sentiments collections de texte en Python sont appelées chaînes, et il existe des fonctions spéciales appelées méthodes de chaîne utilisées pour manipuler des chaînes, comme le changement d'une chaîne de majuscules en minuscules, suppression d'espaces blancs ou remplacement de parties de la chaîne par un texte différent Dans cette section, vous allez apprendre à manipuler des chaînes à l' aide de méthodes de chaîne Vous travaillerez avec les données saisies par les utilisateurs. Vous apprendrez à gérer des chaînes de nombres et à transformer des nombres en chaînes, à formater des chaînes pour l'impression. En cours de route, vous découvrirez les chaînes F, chaînes multilignes et comment indexer et découper des chaînes Qu'est-ce que l' immuabilité des chaînes et comment découvrir d'autres méthodes à l'aide d'Idle vous-même ? Bien, il est temps de découvrir ce qu' est une ficelle. 18. Qu'est-ce qu'une chaîne 2024: Bonjour à tous. C'est Andreas, et je vous souhaite la bienvenue dans cette nouvelle section. Dans les conférences suivantes, vous découvrirez les différents types de données que vous pouvez utiliser dans vos programmes Python. Nous avons beaucoup à faire, alors lancez votre shell Python, et c'est parti. Une chaîne est une série de caractères, un texte si vous préférez. Tout ce qui est entre guillemets est considéré comme une chaîne. En Python, vous pouvez utiliser des guillemets simples ou doubles autour de vos chaînes. Par exemple, si je tape Python entre guillemets doubles et Python entre guillemets simples, le résultat n'est pas le même. Il est essentiel de comprendre ce que nous faisons lorsque nous utilisons des guillemets et quand nous ne le faisons pas. Si je saisis des ventes égales à 1 000 entre guillemets, ventes sont une chaîne et non un chiffre. Mais si je tape des ventes égales à 1 000 sans guillemets, les ventes sont un entier. Mais comment utiliser un guillemet dans une chaîne ? Tapez et appuyez sur Entrée. Cette syntaxe n'est pas valide, comme vous le voyez, il existe des solutions pour cela. Une solution consiste à commencer par chaîne de caractères et des guillemets doubles comme celui-ci. Comme la chaîne commence par un guillemet double, Python sait que les guillemets simples font partie de la chaîne et ne marquent pas la fin de la chaîne. Mais si vous devez utiliser à fois des guillemets simples et des guillemets doubles dans la chaîne, vous devez utiliser un caractère d'échappement ou des séquences d'échappement. Un caractère d'échappement se compose d'une barre oblique inverse suivie du caractère que vous souhaitez ajouter à la chaîne Le caractère d'échappement pour les guillemets simples est donc le suivant. Tapons la chaîne ci-dessus en utilisant maintenant le caractère d'échappement et en évitant les guillemets doubles. Je suis super. Il existe une autre utilisation des caractères d'échappement , à savoir les significations spéciales telles que les nouvelles lignes, et nous le verrons en action ensuite. Ici, D est défini avec un texte. Il s'agit de la première ligne suivie d'une barre oblique inverse N, ce qui signifie que nous voulons dire une nouvelle Continuons à taper. C'est la deuxième ligne. Et les citations se terminent à la fin. Nous avons donc ici le caractère N de la barre oblique inverse, qui signifie une nouvelle ligne Si nous utilisons print D, vous verrez qu'il s'agit de la première ligne, et sur une ligne séparée, il s'agit de la ligne deux. Maintenant, c'est quelque chose que nous utilisons beaucoup, surtout si nous travaillons avec des fichiers texte, et vous constaterez souvent que vous devez insérer ou supprimer une nouvelle ligne de caractères dans les textes. Il est également possible de créer des onglets avec une barre oblique inversée T. Vous pouvez donc voir ici variables définies avec certains caractères de tabulation Et encore une fois, en imprimant ceci. Ce sont les onglets qui ont été insérés entre les mots. Il est essentiel de connaître les différents caractères d' échappement que vous pouvez insérer dans le texte. Vous pouvez voir une sélection de caractères d' échappement tels que des guillemets simples, des guillemets doubles, une nouvelle ligne avec N, un retour en chariot avec R, une tabulation avec T, et la possibilité de définir des caractères à l' aide de valeurs octales ou C'est bon. Parlons des chaînes brutes. Dans une chaîne brute, les caractères de séquence d'échappement tels que ceux que vous avez vus auparavant ne sont pas interprétés. Nous allons voir comment définir un caractère brut. Définissons une variable appelée A en utilisant le nouveau caractère de ligne. Pour créer une chaîne brute, une chaîne est préfixée par un R, comme indiqué ici Sinon, le contexte est exactement le même. L'impression affiche la chaîne brute, ce qui signifie que le nouveau caractère de ligne n'est pas interprété par print à sa gauche intact. Cela est utile dans les applications où les caractères de la séquence d'échappement ne doivent pas être interprétés normalement, comme les expressions régulières. Parfois, vous devez insérer une chaîne multiligne. Une chaîne multiligne commence et se termine par trois guillemets simples ou trois guillemets doubles Tous les guillemets, onglets ou lignes d' actualités entre les guillemets triples sont considérés comme faisant partie de la chaîne. Tapons ce qui suit. Le résultat apparaît sur la coque. De plus, une chaîne multiligne est souvent utilisée pour les commentaires. Génial. J'espère que vous avez compris ce que sont les chaînes et comment vous pouvez les créer et les utiliser. N'oubliez pas que les chaînes sont l'un des types de données fondamentaux en Python. Merci d'avoir regardé. 19. Qu'est-ce qu'une corde (exercice) 2024: Bienvenue, tout le monde, au premier exercice de cette section. Nos cours d'exercices sont entièrement axés sur l'entraînement. Vous vous entraînerez au processus d'écriture de code en résolvant des exercices soigneusement sélectionnés. Vous vous entraînerez également à lire code des autres et communiquer votre processus de pensée. faisant tout cela, vous mettrez pratique les concepts que vous avez appris dans le cours précédent et vous aiderez à les appliquer. Dans les prochaines leçons d'exercices, je vais vous présenter les tâches. Donnez-vous l'occasion de les résoudre vous-même, puis de vous montrer étape par étape comment j'ai résolu chacun d'eux. Suivez trois étapes pour chaque tâche, découvrez l'exercice, codez votre propre solution, puis comparez votre solution et le processus qui vous a permis d'atteindre la mienne. Lorsque je vous explique une tâche, je vous explique ce que je fais et pourquoi je le fais ainsi. Cela vous donnera l' occasion de comparer non seulement nos solutions finales, mais également la manière dont nous y sommes parvenus. Idéalement, cela peut vous aider à mieux comprendre les processus permettant de passer d' une description de tâche à une solution fonctionnelle dans le code. OK, ça suffit de parler. Voici votre premier exercice. Qu'est-ce qu'une chaîne ? une question très philosophique, mais nous allons l'aborder de manière un peu plus pratique. Votre tâche va consister à imprimer quatre chaînes individuelles répondant à certaines conditions. La première est qu'il doit y avoir guillemets doubles à l'intérieur de la chaîne. Le second doit avoir une apostrophe à l'intérieur Le troisième doit comporter plusieurs lignes avec des espaces blancs préservés, et le quatrième doit être codé sur plusieurs lignes, mais il n'est ensuite imprimé que sur une seule ligne. Ce sont différentes manières de construire des chaînes, et c'est juste une façon de vous rappeler comment vous pouvez créer des chaînes qui remplissent certaines conditions. Allez-y. Faites-le maintenant, et une fois que vous aurez terminé votre solution, passez à la leçon suivante où je vais également résoudre les quatre tâches, puis vous pourrez comparer avec ma solution. 20. Qu'est-ce qu'une solution de chaîne 2024: Je suis ici dans le Idle Shell interactif. Je vais aller de l'avant et prendre des notes rapides des différentes tâches que je dois effectuer ici. Il y avait quatre tâches. J'aime toujours commencer par prendre des notes sur ce que je suis censé faire, qui m'aide à m'organiser et à me rappeler en quoi consiste réellement la tâche. La première consistait donc à imprimer une chaîne avec des guillemets doubles. Je veux donc des guillemets dans la chaîne. C'est la première tâche. Ensuite, le second devait avoir une apostrophe dans La troisième était d' avoir une chaîne multiligne qui soit également imprimée sur plusieurs lignes Et le quatrième était d' écrire une chaîne sur plusieurs lignes, mais imprimée sur une seule ligne. J'ai donc pris quelques brèves notes pour me rappeler les tâches à accomplir et je vais m'y mettre. La première consiste à imprimer des guillemets doubles dans la chaîne, et je peux le faire en utilisant guillemets simples pour délimiter la chaîne Et puis je peux utiliser des guillemets doubles à l'intérieur. J'ouvre une chaîne en mettant un simple guillemet. Alors je peux écrire quelque chose ici. Je dirais donc qu'il y a des guillemets dans cette chaîne. Et j'ai entouré les mots entre guillemets doubles avec les guillemets réels. Et ça devrait bien s'imprimer car je ne mélange pas les guillemets. J'utilise des guillemets simples pour délimiter ma chaîne. Et puis les guillemets doubles à l'intérieur. Ils ne sont pas considérés comme des délimiteurs de chaînes, mais ce ne sont que les guillemets doubles du caractère Alors maintenant j'appuie sur Entrée, et mon appel d'impression s'exécute, et j'obtiens en sortie la chaîne Génial. La seconde, une apostrophe dans Faites un autre appel d'impression, et maintenant je vais utiliser des guillemets doubles pour délimiter la chaîne Je l'ouvre donc avec un double guillemet. Alors je pourrai écrire quelque chose. Je dirais que cette chaîne a une apostrophe, et j'utilise une apostrophe et j'utilise une apostrophe Cette chaîne a donc une apostrophe. Ce n'est pas une leçon d'anglais, et je ne serais pas la meilleure personne pour l'enseigner de toute façon. Mais j'ai un simple guillemet ou une apostrophe dans Et maintenant, j'appuie sur Entrée, et cela s'exécutera et fonctionnera correctement. Le troisième exercice consistait à écrire une chaîne de plusieurs lignes qui s' imprime également sur plusieurs lignes. Je peux donc le faire en utilisant des guillemets triples. Ainsi, par exemple, guillemets doubles ou les guillemets simples triples fonctionnent de la même manière. Et maintenant je peux dire que cette chaîne a été écrite sur plusieurs lignes. Eh bien, pas encore. Permettez-moi d'appuyer sur Entrée. Ensuite, je continue avec la chaîne et je dis qu' elle s'affiche sur plusieurs lignes. Et je dois fermer la ficelle. Je vais donc le fermer à nouveau avec des guillemets triples. Un, deux, trois, puis fermez également les parenthèses de la fonction d'impression Et maintenant je suis prêt à appuyer sur Entrée, et cela s'exécute. Et comme vous pouvez le voir, le nouveau personnage de ligne. Donc, à la touche Entrée que j'ai appuyée ici, ce nouveau caractère de ligne fait également partie de la chaîne. La sortie l'inclut donc, et c' est pourquoi elle s' affiche sur deux lignes. Enfin, la dernière tâche, écrivez une chaîne multiligne qui s' imprime sur une seule ligne, et vous pouvez le faire en évitant le nouveau caractère de ligne Maintenant, je vais juste utiliser un guillemet double, et je dirais que cette chaîne d'une ligne a été écrite. Ensuite, j'utiliserai le caractère de barre oblique inverse, qui Il s'agit d'un caractère spécial qui échappe au caractère suivant, qui dans ce cas sera une nouvelle ligne car après avoir mis la barre oblique inverse, j'appuierai sur Entrée et je continuerai à taper sur la Mais Python considère que cela fait toujours partie de la ligne précédente. Continuez donc à écrire mes chaînes, en disant en utilisant plusieurs lignes. Puis fermez la chaîne. Avec une chaîne comme celle-ci délimitée par un seul guillemet étalement d'une chaîne sur plusieurs lignes, comme je le fais ici, ne fonctionne que lorsque vous utilisez la barre oblique inversée Sinon, Python provoquerait une erreur de syntaxe, et maintenant appuyez sur Entrée. Et comme vous pouvez le voir, il s'affiche sur une seule ligne car j' échappe au nouveau caractère de ligne que j'ai utilisé ici. C'est bon. C'était donc un bref récapitulatif des différentes manières de mélanger et de faire correspondre les guillemets lorsque vous mélanger et de faire correspondre écrivez vos littéraux de chaîne 21. Manipuler les cordes avec les méthodes de cordes 2024: Les cordes sont fournies avec des fonctions spéciales. Elles sont appelées méthodes de chaînes que vous pouvez utiliser pour travailler avec des chaînes et les manipuler. nombreuses méthodes de chaînes de caractères sont Comme vous le verrez, de nombreuses méthodes de chaînes de caractères sont disponibles. Tout d'abord, vous pouvez vous concentrer sur une poignée de produits couramment utilisés. Dans cette leçon, vous allez apprendre comment convertir une chaîne en majuscules ou en minuscules, comment supprimer les espaces blancs d'une chaîne et comment déterminer si une chaîne commence ou se termine OK, il est temps d'apprendre votre première méthode. Le premier va travailler sur la conversion de la majuscule de la chaîne. Cette méthode est inférieure d'un point. Il convertira la chaîne en toutes lettres minuscules, en prenant toutes les majuscules et en les transformant en minuscules Cela ressemble à quelque chose comme ça. Si vous ajoutez la chaîne d'Albert Einstein puis que vous ajoutez un point en bas comme méthode, tous les caractères minuscules seront renvoyés Le point indique à Python que ce qui suit est le nom d'une méthode, et dans ce cas, la méthode inférieure. Vous entendrez souvent parler de cela dans les méthodes utilisant des chaînes de caractères en utilisant un point au début de leur nom, par exemple, point en bas ou, comme vous l'apprendrez ici dans une seconde, point en haut. Cela permet de différencier un peu plus facilement les fonctions qui sont méthodes de chaîne des fonctions intégrées impression ou la saisie que vous avez apprises plus tôt. Les méthodes fonctionneront sur une chaîne seule en ajoutant le point et la valeur inférieure. N'oubliez pas d'appeler la méthode entre parenthèses. Ils fonctionnent également si vous les avez affectés à une variable. Donc, dans ce cas, tapons name et mettons le .in et voulons renvoyer la version minuscule du OK. Maintenant que vous avez joué avec le point inférieur, la prochaine étape que vous allez apprendre est le point supérieur. point upper convertit donc la chaîne de toutes les lettres majuscules Donc, si vous prenez le même nom de variable et que vous appliquez la méthode du point supérieur, vous verrez qu'elle renvoie toutes les majuscules. Donc, encore une comparaison entre les méthodes et les fonctions que vous avez vues précédemment. Les méthodes de type chaîne commencent par un point au début de leur nom, et c'est ainsi que vous les désignerez avec le point initial. Donc, point en bas ou point en haut. Il sera ainsi beaucoup plus facile de différencier fonctions qui sont des méthodes de chaîne fonctions intégrées telles que print ou n. Lorsque vous les comparez indépendamment différents résultats de ces fonctions, la distinction importante réside dans la manière dont elles sont utilisées. Ces fonctions intégrées sont simplement appelées d'elles-mêmes. Donc, si vous voulez trouver la longueur d'une chaîne de nom, vous appelez Ln et vous y mettez le nom. Ou si vous voulez un nom d'impression, vous pouvez simplement faire la même chose , au lieu de les utiliser en majuscules et en minuscules, en conjonction avec la chaîne. Ils n'existent pas indépendamment. espace blanc est un caractère imprimé sous forme d'espace vide. Cela inclut des éléments tels que les espaces, les tabulations et même les flux de ligne, qui sont des caractères spéciaux qui déplacent le résultat vers une nouvelle ligne. Il est parfois nécessaire de supprimer les espaces blancs au début ou à la fin d'une chaîne. Cela est particulièrement utile lorsque vous travaillez avec des chaînes provenant d'entrées utilisateur , saisies par quelqu'un, qui peuvent parfois inclure des espaces supplémentaires par accident Vous pouvez utiliser trois méthodes de chaîne pour supprimer cet espace blanc d'une chaîne. bande Dot R supprime les derniers espaces situés sur le côté droit de la chaîne bande de points supprime les espaces précédents du côté gauche de la chaîne. Et le Dot strip supprime les espaces blancs des côtés gauche et droit, sorte que tout ce qui se trouve au début ou à la fin de la chaîne sera supprimé. Fait intéressant, cela ne supprime pas les espaces au milieu. Essayons-en une partie dans la fenêtre interactive. Tout d'abord, nous devons créer des espaces blancs. Je vais donc créer un nouveau nom, mettre quelques espaces et un onglet, et je vais réinscrire mon propre nom. Tu peux utiliser ton propre nom. Dans ce cas, je vais ajouter quelques espaces et un onglet, puis une barre oblique dans laquelle se trouve un flux de ligne En fait, je vais ajouter deux de ces fils de ligne avec quelques espaces entre les deux. Il y a donc beaucoup d'espaces blancs différents. En fait, si vous essayez d'imprimer avec le nom, vous verrez tous les espaces blancs, y compris les fils de ligne supplémentaires, les deux. OK ? Alors, que se passe-t-il si vous utilisez une bande point R ? Il a supprimé tous les espaces du côté droit, y compris les fils de ligne. Encore une fois, le nom est toujours le même. Donc, si je fais un nom et une bande de points, cela supprimera les espaces blancs sur le devant Et si nous utilisons une bande de points, cela supprime les espaces des deux côtés, tous les espaces blancs. Qu'il s'agisse d'onglets, d'espaces ou de flux de lignes. Lorsque vous travaillez avec du texte, vous devez parfois déterminer si une chaîne donnée commence ou se termine par un certain caractère. Vous pouvez utiliser deux méthodes de chaînes pour résoudre ce problème. Le premier est le point commençant par, et l'autre, le point se termine par. Essayons-le dans la fenêtre interactive. Disons que nous avons une chaîne bioélectrique. Nous allons créer une variable appelée puissance et capitaliser bioélectrique Si vous utilisez la méthode starts by, et dans ce cas, vous devez le faire, vous pouvez voir qu'elle commence à demander le préfixe que vous souhaitez utiliser Et si je mettais ma biographie en minuscules ? Est-ce que ça va marcher ? Cela renvoie faux. Vous avez peut-être compris pourquoi car cela commence par un B. Le fait que cela commence par méthode distingue en fait les majuscules et minuscules. Pour que cela soit vrai, faudrait taper la même chose, mais commencer par un Bo majuscule, qui renverrait vrai. Et de même, si vous vouliez en essayer un autre qui se termine par , dans ce cas, disons : est-ce qu'il se termine par l'électrique ? Tu deviendrais vrai. Cela fait également la distinction majuscules/majuscules. Les valeurs vraies et fausses ne sont pas des chaînes de caractères. Il existe un type spécial de données appelé valeur booléenne. Vous en apprendrez plus sur les valeurs de Boleing dans une leçon ultérieure. Désormais, les chaînes sont immuables. La plupart des méthodes de chaîne modifient une chaîne telle que upper et lower, mais elles renvoient en fait des copies de la chaîne d'origine avec ces modifications. Donc, si vous ne faites pas attention, se peut que vous ne le reconnaissiez et que cela introduise des bogues subtils dans votre programme. Essaie celui-ci. Alors, cette fois, donnez un nom à Wells Virginia. OK. Encore une fois, si vous tapez le nom et placez le point de méthode en haut, vous obtiendrez tout en majuscules Mais vous avez peut-être remarqué que j'ai montré un peu plus tôt l'original n' est pas modifié. Maintenant, pour qu'il change le nom de la variable, vous devez le réattribuer Cela ressemblerait donc à ceci. Le nom est égal au nom supérieur. Maintenant, le nom a été changé. Cela remplacera la chaîne d'origine que vous avez attribuée au nom en la réaffectant Vous avez peut-être remarqué qu'il existe de nombreuses méthodes associées aux chaînes. Les méthodes que je vais montrer dans cette leçon sont à peine superficielles. Idle peut vous aider à trouver ces nouvelles méthodes de chaînes de caractères. Laissez-moi vous montrer comment vous pouvez en découvrir certains. Revenons à notre exemple électrique. Si vous commencez par un nom de variable, puis que vous ajoutez le point, une petite boîte apparaîtra et commencera à vous montrer certaines des différentes variables disponibles. Si vous tapez une lettre, vous en recevrez également certaines. Cela permettra d'affiner les résultats. En fait, si je commence à épeler « upper », vous le verrez surligné ici. Vous pouvez terminer cette opération en appuyant sur la touche Tab, puis vous pouvez terminer en appelant la méthode. C'est une bonne façon de découvrir d'autres méthodes disponibles. OK. Maintenant que vous vous êtes entraîné un peu en essayant de trouver certaines de ces méthodes supplémentaires, voici un bref aperçu. Avec IDL, vous pouvez taper le nom d' une variable affectée à une chaîne, puis ajouter un point, souvent prononcé sous forme de point, puis attendre En tapant une lettre, vous affinerez certains résultats et appuyez sur Tab pour renseigner automatiquement le nom de cette méthode si vous avez commencé à le nommer. Et une remarque, cela fonctionne même avec les noms de variables. Essayez de taper les premières lettres électriques et d'appuyer sur Tab. Si vous n'avez défini aucun autre nom qui partage ces deux premières lettres, Idle complète le nom Electric pour vous. L'onglet est donc une belle sorte de saisie semi-automatique que vous pouvez utiliser dans Idol OK. Il est temps de revoir ce que vous avez appris. C'est l'heure de l'entraînement. Exercice 1. Ecrivez un programme qui convertit les chaînes suivantes en minuscules Imprimez ensuite chaque chaîne en minuscules sur une ligne séparée. Exercice 2. Essayez de répéter le premier exercice, mais convertissez chaque chaîne en majuscules plutôt qu'en minuscules Troisième exercice : écrivez un programme qui supprime les espaces blancs dans les chaînes suivantes. Imprimez ensuite les chaînes en supprimant tous les espaces blancs. Exercice 4. Écrivez un programme qui affiche les résultats des démarrages par B sur chacune des chaînes suivantes. Exercice 5. En utilisant les quatre mêmes chaînes que celles de l'exercice 4, écrivez un programme qui utilise des méthodes de chaîne pour modifier chaque chaîne afin que la valeur commençant par B renvoie la valeur vraie pour toutes les chaînes. Encore une fois, écrivez un programme qui utilise d'autres méthodes de chaîne pour modifier les chaînes de sorte que commencer par B renvoie la valeur true pour toutes. Vous trouverez des solutions à ces exercices et au code dans les fichiers de ressources de cette leçon. C'est bon. Ensuite, comment indexer et découper des chaînes . Merci d'avoir regardé. 22. Changer le cas (exercice) 2024: Voici votre prochain exercice. Il s'agit d'un changement de dossier. Dans cet exercice, votre tâche consiste à modifier la majuscule des chaînes. Expérimentez et entraînez-vous un peu avec les différentes méthodes de chaînes de caractères que vous pouvez utiliser, en changeant les majuscules et minuscules dans les chaînes. Et la tâche consiste à écrire un programme qui convertit d'abord les chaînes suivantes en minuscules. Et puis vous avez quatre cordes ici. Le premier concerne les animaux. Le second est le blaireau. Le troisième est Honey Space B, et le quatrième est Honey Space Badger Et après les avoir tous convertis en minuscules, vous devez les convertir en chaînes et en majuscules Et vous devez imprimer chacune des chaînes sur une ligne séparée. Donc, le résultat de la résolution de cette tâche sera essentiellement de nombreuses lignes d'appels d' impression où vous y appliquerez des méthodes de chaîne. Essayez-le , puis passez à la leçon suivante et comparez votre solution à la mienne. 23. Changer le cas (Solution) 2024: La tâche consiste à créer quatre chaînes, les convertir toutes en minuscules, puis à les convertir toutes en majuscules, chacune sur une ligne distincte Je vais commencer par définir les chaînes et les affecter à des variables La première chaîne était composée d'animaux dans le coffret titre. La deuxième corde était Badger. Enfilez trois abeilles mellifères. Et enfilez quatre blaireaux, les plus dangereux de tous. C'est bon. Et maintenant je vais écrire des appels pour imprimer. Imprimer, ouvrir les parenthèses, enfiler un point plus bas. Fermez-le, entrez. Et je reçois des animaux en guise de résultat. Imprimez la chaîne deux points plus bas. C'est donc un peu un exercice de dactylographie, comme vous pouvez le constater, car vous refaites en fait la même chose pour chacune des cordes Plus tard dans le cours, vous apprendrez également à le faire de manière un peu plus automatisée afin de ne pas avoir à taper autant. Mais pour l'instant, cela ne fait pas de mal de faire un peu d'exercice de dactylographie et de s'entraîner à utiliser ces méthodes de chaîne et à les appliquer à une chaîne, c'est-à-dire en écrivant d'abord la chaîne, puis un point, puis la méthode des chaînes. Et vous utilisez ces parenthèses ici, dans ce cas, elles sont vides pour appeler cette méthode C'est donc similaire à la fonction d'impression, comme vous pouvez le voir ici, où vous avez également besoin de parenthèses Génial. Nous les avons tous convertis en minuscules Comme vous pouvez le constater, le résultat est en minuscules. Et maintenant, nous voulons faire de même, mais les convertir en majuscules Nous allons donc dire PrintString un point plus haut. Entrez. Et vous pouvez voir que les animaux sont renvoyés en majuscules Continuons l'exercice de dactylographie. PrintString en haut à deux points. Prince String Three, pas plus haut. Et enfin, enfilez quatre points en haut. Sympa. Et c'est la fin de l'exercice. 24. Supprimer Whitespace (exercice) 2024: Dans cet exercice, votre tâche consiste à écrire un programme qui supprime les espaces blancs dans les chaînes suivantes. Imprimez ensuite les chaînes en supprimant les espaces blancs. La première corde est le filet mignon. Je suppose que ce sont deux aliments, mais il semblerait que la personne qui a écrit le menu ait eu du mal à mettre un peu trop espaces blancs à différents endroits. J'invente donc l'histoire autour la tâche selon laquelle vous êtes le programmeur du restaurant et que vous êtes censé nettoyer le menu en ligne, quelque chose comme ça. Vous voyez, le premier verre a un espace blanc sur la gauche. Le second comporte des espaces blancs à droite, et le troisième des espaces blancs à gauche et à droite C'est donc un hamburger au fromage avec un petit pain blanc. Une chose vous sera cependant utile avant de commencer cette tâche supposons que j'ai saisi cinq espaces au début de chacun de : supposons que j'ai saisi cinq espaces au début de chacun de ces mots, car cela me facilitera la tâche plutôt que de taper ces espaces blancs, même s'il n'a pas d' importance Allons supprimer quelques espaces blancs. 25. Supprimer Whitespace (Solution) 2024: La tâche consiste donc à supprimer l'espace blanc et à nettoyer le menu. Tapons ces trois chaînes. Maintenant, j'ai accès à ces trois chaînes 1, 2 et 3. Et vous pouvez voir qu'ils ont cet espace blanc dont vous devriez vous débarrasser. Maintenant, la méthode string pour ce faire est le point strip. Vous pouvez donc dire, par exemple, une chaîne de trois points, et cela supprimera les espaces blancs au début comme à la fin. qui signifie que vous pouvez utiliser une bande pour chacune de ces chaînes, et elle fera ce qu'on vous demande de faire. Mais Python a deux autres méthodes spécifiques ici où vous pouvez simplement supprimer de l'espace du côté droit ou du côté gauche, que j'appliquerai pour celles d'ici. Chaîne 2, je peux utiliser une bande point R. Il se retire simplement du côté droit, mais pas du côté gauche. Pour la première chaîne, je peux dire point strip. Ce qui va supprimer espaces blancs du côté gauche, mais ne rien faire du côté droit. Vous pouvez soit utiliser une bande pour toutes, et cela fonctionnera, soit utiliser la bande L et la bande R, plus spécifiques , pour la chaîne 1 ou la chaîne 2 respectivement. 26. Indexation des chaînes 2024: Souvent, dans les langages de programmation, les éléments individuels d'un ensemble ordonné de données sont accessibles directement à l'aide d'un index numérique ou d'une valeur clé. Ce processus fait référence à l'indexation. Les chaînes sont des séquences ordonnées de données de caractères et les caractères individuels d'une chaîne sont directement accessibles à l'aide d'un index numérique L'indexation des chaînes en Python est basée sur zéro. Ainsi, le tout premier caractère la chaîne aurait un indice zéro, le suivant serait un et ainsi de suite. L'indice du dernier caractère sera la longueur de la chaîne moins un. Regardons un exemple. Donc, pour la chaîne apple, le premier index, l'indice zéro, aura la lettre A, et la dernière lettre, qui est l'indice quatre, est E. Essayons cela de manière interactive Voici une chaîne A qui serait une pomme. Pour accéder au premier élément de ma chaîne, j'utilise des crochets. Dans ce cas, avec un index zéro, il extraira la première lettre de ma chaîne, et ainsi de suite. L'index 1 sera donc le deuxième caractère, P, et le dernier caractère E sera l'index quatre. Une autre façon d'y parvenir serait d'utiliser la longueur de la fonction len intégrée. Ainsi, la longueur de la chaîne A moins un obtiendra également le dernier caractère. Si je passe à un index dont dépasse la longueur de la chaîne, j'obtiens une erreur d'index, indice de chaîne hors de portée. L'indexation des chaînes peut également être spécifique avec des nombres négatifs. L'indexation négative est également disponible. Dans ce cas, il faut revenir en arrière. Moins un viendra à la fin, donc E sera moins un, et moins cinq sera A, votre première lettre. Laisse-moi essayer. Ainsi, A , moins un entre crochets fournira la dernière lettre et ainsi de suite. Encore une fois, vous pouvez utiliser la fonction n comme ceci. Ce sera ta première lettre. Avec Index, vous pouvez accéder à des caractères individuels, et vous pouvez également en saisir des plages. C'est ce qu'on appelle le string slicing et est la prochaine étape. Merci de m'avoir regardée. 27. Tranchage de chaînes 2024: Python permet également une forme de syntaxe d' indexation qui extrait les sous-chaînes d'une C'est ce qu'on appelle le string slicing. La syntaxe que vous utilisez est très similaire à celle de l'indexation. Au lieu de mettre une seule valeur entre crochets, vous en mettez deux avec deux points entre les deux. Ainsi, dans cet exemple, D est une chaîne, et M et N sont deux valeurs qui renvoient une partie de D, commençant par la position M et jusqu'à la position N. Définissons la chaîne D pour l'avocat. Si vous sélectionnez l'index un plus deux, mais pas quatre, qu'obtenez-vous ? COV. Encore une fois, zéro est A, un est V , deux est O, trois est C et quatre est A également, mais sans compter quatre. Alors, que se passe-t-il si vous omettez le premier N ou le dernier index ? Si vous omettez le premier index, dans ce cas, A , deux points, puis N, il commencera à être découpé au début de dans ce cas, A , deux points, puis N, il commencera à être découpé au début de la chaîne et remontera à la valeur d'indice non calculée N. L'omission du dernier index n'étendra pas cette tranche du premier index M jusqu'à la En omettant les deux index, la chaîne d' origine sera renvoyée dans son intégralité Ce n'est pas une copie. Il s'agit d'une référence à la chaîne d'origine. Regardons-les en pratique. Tapez D, deux points deux, et il renverra AV. Jusqu'à cinq, nous retournerons A VOCA. Jusqu'à la fin, vous pouvez le faire en tapant. Une autre façon de le faire serait de saisir la valeur de votre index de départ, puis d'utiliser la fonction de longueur comme index final. Si vous essayez les chaînes sans valeurs, cela recommencera du début à la fin. Il s'agit d'une référence à la chaîne d'origine. L'indexation négative fonctionne également. Vous pouvez également combiner des indices positifs et négatifs Je vais commencer par un indice négatif cinq et passer à un indice négatif un. Qu'est-ce que tu obtiens ? Vous obtenez l'OCAD. Lorsque vous effectuez un découpage, vous pouvez spécifier une chaîne dans une chaîne de tranches Il s'agit d'ajouter deux points supplémentaires et un troisième index indique la foulée C'est ce qu'on appelle aussi l'étape. Donc, dans ce cas, si notre tranche devait commencer par le début, puis être suivie de la deuxième étape, elle commencerait par le tout premier élément, zéro et la lettre A, puis sauterait deux étapes pour saisir la lettre O, puis passer à l' étape suivante pour saisir l'index quatre, puis passer à la fin. Et si nous tapions deux points à la deuxième étape ? Il saisira ces lettres AO AO. Vous pouvez également utiliser une foulée négative. C'est tout pour aujourd'hui. J'espère que vous comprenez ce qu'est le tranchage de ficelles. Merci d'avoir regardé. 28. EXERCICE : Tranchage de chaînes: Cet exercice consiste à découper une chaîne, et votre tâche consiste à imprimer la chaîne en utilisant la notation par tranche pour spécifier la plage de caractères correcte dans la caisse de chaînes Vous commencez donc par la caisse à cordes, puis vous coupez cette ficelle pour n'en retirer que la partie qui indique « à ». Rata ta, allons-y. 29. SOLUTION : Tranchage de chaînes: D'accord, j'ai ouvert mon Python idle. Ma tâche est de trancher la caisse pour obtenir un rat. Je vais donc commencer par attribuer la chaîne crate à une variable Donc, je vais juste dire « mot » dans ce cas. OK, nous avons ici une caisse, puis je vais utiliser notation par tranches pour en extraire la partie rat. Et pour utiliser la notation par tranches, vous devez utiliser des crochets. À l'intérieur des crochets, vous devez mettre les index que vous souhaitez utiliser L'indexation des chaînes commence par zéro. Donc C est à l'indice zéro, puis j'ai R à l'indice un. Je peux donc commencer par un. Et puis dans ce cas, je veux obtenir tout ce qui commence par un et va jusqu'à la lettre T, qui est dans l'index trois. C'est ce qu'on appelle également l'indice d'arrêt. Je peux donc simplement le faire en y mettant deux points. Je veux mettre un gros avertissement ici. Vous devez en spécifier un plus le dernier caractère que vous souhaitez obtenir. Je veux donc passer à quatre, qui est l'indice de E, qui signifie que je vais tout obtenir jusqu'à E. Donc, le mot un, deux points et tout obtenir jusqu'à E. Donc quatre devrait me donner la chaîne que je recherche, à savoir Rat. Donc, en tapant le mot un, deux points, quatre, je devrais obtenir juste la chaîne Rat. Et confirmons en appuyant sur Entrée. C'est ici. J'ai tranché un rat dans une cage. Voilà. Cependant, si vous avez une chaîne plus longue et que vous voulez que tout aille jusqu' au dernier caractère, mais pas au caractère final, il peut être difficile de compter ainsi. Au lieu de cela, vous pouvez revenir en arrière. Et vous pouvez également compter les indices commençant par un signe négatif. Donc, le premier sera moins un, puis T sera moins deux, et cetera Je peux donc plutôt spécifier des mots commençant par un puis allant jusqu' à moins un, ce qui revient à dire un à quatre. C'est donc une autre façon de devenir un rat. Et maintenant, j'ai trouvé deux moyens de m' en sortir sans le personnage final E. 30. Corde: Quelques opérateurs peuvent être utilisés sur des opérandes numériques qui peuvent également être appliqués aux chaînes Dans ce cas, l'opérateur qui ressemble à un signe plus est considéré l'opérateur de concaténation et l'opérateur de signe de multiplication qui, dans les chaînes, crée plusieurs copies d' Donc, pour commencer, l' opérateur plus concatène les chaînes. Elle renvoie une chaîne composée des opérandes réunis. Je vais d'abord définir quelques chaînes de caractères. Un équivalent à Apple. Le prochain objectif de chaîne que nous allons créer est B égal à banana. Et enfin, C est égal à la cerise. Alors, que se passe-t-il si j' utilise le signe plus, l'opérateur de concaténation, A plus B Combinons les trois éléments. Il concaténera les trois. Nous pouvons également concaténer chaînes dans des fonctions d'impression comme celle-ci M. C'est donc l'opérateur de concaténation. Examinons l'opérateur de multiplication, qui est un astérisque, qui crée plusieurs copies d'une chaîne pour renvoyer une chaîne composée de copies concaténées d'une Laisse-moi te montrer à quoi ça ressemble. Je vais créer un objet, D, qui est un entier égal à cinq. Que se passe-t-il si vous multipliez A, multipliez D ? L'opérateur réplique donc l'objet chaîne cinq fois et les concatène ensemble Le multiplicateur doit donc être un entier. Vous ne pouvez pas multiplier par un nombre flottant, par exemple. Et s'il s'agit d'un nombre négatif ? Cela renverra une chaîne vide. 31. EXERCICE : conception des cordes: Voici votre deuxième leçon d'exercice sur la concaténation. Créez deux chaînes, concaténez-les et imprimez la Et puis il y a la question. Pouvez-vous également ajouter un espace entre eux en utilisant uniquement la concaténation ? Choisissez donc deux mots que vous avez toujours voulu associer. Je vais choisir les mots chauve-souris et homme. Accédez à votre éditeur Python et concrétisez-le. Ensuite, passez à la leçon suivante et regardez-moi le faire. 32. SOLUTION : conception des cordes: La tâche consistait à créer deux chaînes et à les attribuer à des variables. Concaténez-les sans espace et concaténez-les avec de l'espace et concaténez-les avec de Commençons par créer deux variables qui pointent vers des chaînes. Je vais commencer par le trait de soulignement à gauche, vers lequel je pointerai une chaîne appelée ainsi Ensuite, je vais faire un autre trait de soulignement d'une seule chaîne, à droite. C'est ce que je vais montrer, mec. Et maintenant, je peux utiliser un appel à imprimer pour assembler les deux. J'ouvrirai donc les parenthèses après avoir écrit print, puis je taperai String underscore left plus string underscore Fermez les parenthèses. Comme vous pouvez le voir ici, j'utilise l'opérateur plus, qui, si vous l'utilisez avec des chaînes, concatène ensemble Donc, ça va littéralement lier batte et homme ensemble sans aucun espace entre les deux. J'appuie sur Enter pour confirmer, et on obtient la corde Batman. Maintenant, la dernière tâche était de les concaténer avec un espace. Je vais donc simplement copier mon appel pour l'imprimer et passer au milieu de celui-ci à côté de l'opérateur Plus. Et ici, je vais ajouter une autre chaîne, un caractère d'espace Je m'ouvre donc aux guillemets, mets un espace, puis je ferme à nouveau les guillemets. C'est une chaîne parfaitement valide. Il s'agit simplement d'une chaîne composée d'un seul caractère, qui est un espace dans ce cas. Encore une fois, j'utilise les opérateurs plus gauche et à droite pour assembler ces trois chaînes. Maintenant, dans iBressenter, je vais me procurer un Batman à cordes tout-en-un, et c'est l'exercice 33. Formatage des chaînes: Je vais maintenant vous montrer comment formater des chaînes à l'aide de l'opérateur de pourcentage. C'est ce qu'on appelle également le formatage des chaînes de pourcentage ou le style C. La syntaxe d'utilisation de l' opérateur de pourcentage est la suivante. syntaxe comporte trois parties : la chaîne entre guillemets, l' opérateur de pourcentage et les valeurs ou variables à insérer dans une chaîne séparées par des virgules Le premier tampon consiste à écrire la chaîne à mettre en forme entre guillemets Ensuite, nous écrivons le symbole du pourcentage. Enfin, nous écrivons les variables ou les valeurs entre crochets. Le format du pourcentage est utilisé pour représenter une chaîne, Andreas dans ce cas. Alors que le format du pourcentage D représente un entier, 75 kilogrammes dans ce cas. Python Prince, je m' appelle Andreas et mon poids est de 75 kg. Vous pouvez télécharger un PDF que j'ai créé, qui est une liste d'ensembles complets de symboles pouvant être utilisés ainsi que des pourcentages. Vous pouvez le trouver dans vos fichiers de ressources. Au lieu d'utiliser l' opérateur de pourcentage pour formater les chaînes, Python nous fournit également une méthode de formatage pour formater les chaînes. La syntaxe est un format de chaîne par points, des valeurs ou des variables à insérer dans une chaîne séparées par des virgules Lorsque nous utilisons la méthode de formatage, nous n'utilisons pas le pourcentage S ou le pourcentage D comme espaces réservés Nous utilisons plutôt des crochets comme celui-ci. abord, nous écrivons la position des paramètres à utiliser à l'intérieur des crochets, suivie de deux points, et après les deux points, nous écrivons le format sans espaces entre crochets . Lorsque nous écrivons zéro point S, nous demandons à l' interpréteur de remplacer zéro point S par un paramètre en position zéro qu'il s'agit d'une chaîne car le formateur est S. Lorsque nous écrivons deux points D, nous nous référons au paramètre en position un, qui est le nombre entier Le symbole du format est D. Notez que les positions commencent toujours à zéro. Le résultat est le même que ci-dessus. Si vous ne souhaitez pas formater la chaîne, vous pouvez simplement écrire. R L'interpréteur remplacera les crochets en fonction de l'ordre des paramètres fournis Nous avons abordé les principes de base des méthodes de formatage de chaînes, que nous apprendrons plus en détail dans la prochaine leçon . Merci d'avoir regardé. 34. F-Strings : une syntaxe améliorée de formatage des chaînes: Très bien, parlons des cordes en fa. Alors pourquoi utiliser trois chaînes F en Python ? Ils sont plus lisibles. Ils sont plus concis, moins sujets aux erreurs et plus rapides. Mais je vais commencer par le formatage des chaînes à l'ancienne, le formatage en pourcentage, le format en points de chaîne. Permettez-moi de commencer par quelques exemples. Ouvrez le Python Shell. Configurons une variable et donnons-lui un nom. Par exemple, Alan. Utilisez cette variable dans une chaîne. En utilisant le pourcentage a dans votre chaîne et à la fin de celle-ci. Le pourcentage puis le nom de la variable, Enter. Supposons que nous ayons une autre variable. Nous avons maintenant deux variables. Nous aimerions ajouter quelque chose à notre chaîne. Il en va de même pour le nom. Ensuite, nous saisissons l'âge, le pourcentage et S. Donc, dans ce cas, nous avons deux variables que nous allons intégrer. Pour ce faire, tapez le pourcentage, puis le nom, l'âge entre parenthèses Et si vous avez beaucoup plus de variables ? Configurons quelques variables. Mettre tout cela dans une seule chaîne, ça commence à devenir un peu compliqué. Nous devrons compter le pourcentage S pour nous assurer qu' ils sont dans le bon ordre N de ceux que vous remplacez. À la fin, nous devons mettre toutes les variables entre parenthèses C'est bon. Ça a l'air correct. Appuyez sur Entrée. Heureusement, il existe de meilleurs moyens de le faire. Parlons du format string dot. Nous pouvons placer des espaces réservés dans notre chaîne entre crochets. Et à la toute fin de la chaîne, nous dirions format point, puis nous pourrions mettre des arguments dans le nom et l'âge. Nous pouvons également référencer les variables dans leur index. Disons que c'est l'indice 1 et celui-ci est l'indice zéro. Et nous inversons le nom et l'âge de la commande. Nous obtenons donc le même résultat. Parlons maintenant d'une nouvelle méthode améliorée pour formater les chaînes en Python, les chaînes F. Les chaînes F sont également connues sous le nom chaînes littérales formatées et créées dans la version Python 3.6 Ils ont une syntaxe simple. Ils sont évalués au moment de l'exécution et formatés à l'aide du protocole de formatage Permettez-moi de vous donner quelques exemples. Configurons trois variables. Nom, âge et profession pour construire une ficelle à l'intérieur de nos crochets bouclés Nous mettons nos expressions. Et si vous le souhaitez, vous pouvez utiliser F au début de votre chaîne. Joli et simple. Maintenant que je vous ai montré la syntaxe simple des chaînes F, parlons des expressions arbitraires. Vous pouvez faire une simple masse à l'intérieur de crochets bouclés. Vous pouvez également faire quelque chose comme ça. Je peux aussi appeler des fonctions et des méthodes, mais ce sont des concepts qui le feront plus tard. Maintenant, nous pouvons également créer des chaînes multilignes. Il s'agit d'un message multiligne ici. À quoi ressemble ce message ? Tapez un message. N'oubliez pas que vous devez mettre le F sur chacune d' entre elles pour entrer chacune de ces expressions dans la chaîne. Qu'en est-il de la vitesse ? Les chaînes F sont plus rapides que formatage en pourcentage et le format à points STR. Je vais donc vous faire passer en revue tout ce que vous avez abordé et appris dans cette leçon. Nous avons commencé avec le format de chaîne le plus ancien, le formatage de chaîne en pourcentage, également appelé style C. Ensuite, nous avons commencé à parler de la méthode du format string point, qui a débuté à partir de la version 2.6 de Python. Enfin, nous avons abordé la nouvelle méthode de formatage des chaînes, la chaîne F, qui a débuté à partir de la version 3.6 de Python. C'est tout pour aujourd'hui. Merci donc encore de m'avoir rejoint dans cette leçon. Et j'espère que vous pouvez maintenant voir à quel point les chaînes F peuvent être plus concises, lisibles, pratiques et rapides. 35. EXERCICE : rationaliser vos impressions: Dans cet exercice, vous allez rationaliser vos impressions. Comme vous l'avez déjà vu, le simple fait les concaténer peut devenir un Voici donc un exercice dans lequel vous pouvez essayer trois types différents d'affichage de la même chaîne en utilisant différentes manières d' assembler la concaténation de chaînes, le format de points de chaîne et également en utilisant une La tâche consiste à créer un objet flottant nommé weight avec une valeur de 0,2, puis à créer un objet chaîne nommé animal avec la valeur Anim, puis à utiliser ces objets pour imprimer la chaîne suivante Donc, d'abord, en utilisant uniquement la concaténation, la chaîne devrait indiquer que 0,2 kilogramme est le poids d' Ensuite, vous devez afficher la même chaîne en utilisant la méthode du format par points et des supports vides entre crochets Enfin, je fais également la même chose en utilisant une chaîne F. Allez-y, relevez ce défi vous-même, puis je vous verrai dans la prochaine leçon. 36. SOLUTION : rationaliser vos impressions: Me revoilà dans le shell interactif, et la tâche était de commencer par définir deux variables. L'un était un poids égal à 0,2 virgule flottante. Et puis l'animal était la ficelle qui devait pointer vers la ficelle Nim Bien, commençons par la concaténation. Je vais l'imprimer même si ici dans la console, nous obtiendrions également un résultat s'il ne l'imprimait pas. Mais restons-en là. Et là encore, je vais devoir convertir le premier chaîne car il s' agit actuellement d'un float. Si j'essaie d'ajouter un float et une chaîne à l'aide de l'opérateur plus, cela me donnera une erreur comme vous l'avez vu plus tôt. Je vais donc dire le poids de la chaîne, le convertir explicitement en chaîne, puis plus. Ouvrez les guillemets et tapez. kilogramme d'espace est à nouveau le poids de l'espace, encore une fois entre guillemets. Ensuite, je vais le concaténer à nouveau avec animal. Il est donc dit que 0,2 kilogramme est le poids d'un NM. Et puis je pense qu'il devrait y avoir un point à la fin pour en faire une phrase appropriée. Si j'appuie sur Entrée ici, vous pouvez voir qu'il est indiqué 0,2 kilogramme est le poids du NM. C'est donc une solution qui fonctionne en utilisant uniquement strnkencnation et Nous allons maintenant essayer d'utiliser la méthode du format point sur la chaîne. Encore une fois, j'ouvre la fonction d'impression. Et maintenant, je peux utiliser les bretelles bouclées comme espace réservé. C'est un endroit où je veux insérer quelque chose. Dans un premier temps, je veux insérer le poids. Puis vient la partie centrale de la ficelle. kilogramme est le poids du, et maintenant je vais utiliser une autre paire de bretelles bouclées où je vais insérer l'animal Cela devrait indiquer Nim, et ensuite je pourrai y mettre un point Et maintenant, c'est en quelque sorte mon modèle de chaîne dans lequel je veux insérer ces deux variables que je dois trouver plus tôt. Et je peux le faire en utilisant le format point. Donc, sur cette ficelle, kilogramme correspond au poids des bretelles bouclées J'appelle le format point. Je vais maintenant transmettre les deux variables que je souhaite insérer dans les deux espaces réservés ici Dans le premier, je veux insérer le poids, puis l'animal. Et il va prendre le premier argument et l'insérer dans le premier espace réservé , puis le deuxième argument et insérer dans le deuxième espace réservé Donc, si je ferme maintenant les parenthèses pour l' appel d'impression puis que j'appuie sur Entrée, vous pouvez voir que j'obtiens le même résultat qu'avant C'est ainsi que vous pouvez le faire en utilisant la méthode du format point. Vous pouvez voir que cela le rend déjà plus lisible que la simple concaténation de chaînes, et cela vous évite d'avoir à effectuer une conversion de type explicite sur des objets qui ne sont pas Et maintenant, à mon avis, chaîne F sera encore un peu plus lisible . Encore une fois, j' ouvre un appel pour imprimer. Et ici, je vais commencer par taper F, puis ouvrir la chaîne en faisant simplement deux guillemets. Et j'utiliserai à nouveau l'espace réservé aux bretelles bouclées. Mais maintenant, au lieu de le laisser vide, je vais saisir directement le nom de la variable. Je vais donc dire poids, puis la partie centrale du kilogramme de corde est le poids du. Ouvrez une autre paire de bretelles bouclées et insérez l'animal directement dans les bretelles, puis un point à la fin. Et c'est tout ce que vous devez faire pour la corde F. Si j'appuie sur Entrée maintenant, vous pouvez le voir à nouveau, vous obtenez le même résultat que dans les deux autres variantes. Il existe donc trois manières différentes d'assembler cette chaîne finale qui fournit les informations contenant à la fois une chaîne, la chaîne NEM, ainsi que la représentation sous forme de chaîne d'un nombre à virgule flottante Très bien, c'est comme ça que tu peux le faire. Dites-moi quel est votre préféré. 37. Interagir avec l'entrée utilisateur(): Pour être utile, le programme doit généralement communiquer avec le monde extérieur en obtenant les données d'entrée de l'utilisateur et en affichant les résultats à l'utilisateur. Ce didacticiel vous présentera les entrées et sorties en Python. saisie peut provenir directement de l'utilisateur via le clavier ou d'une source externe telle qu'un fichier ou une base de données. La sortie peut être affichée directement sur la console ou sur l'IDE à l'écran via une interface utilisateur graphique ou à nouveau sur une source externe. Les programmes ont souvent besoin d'obtenir des données de l'utilisateur, généralement par le biais d'une saisie au clavier. Le moyen le plus simple d'y parvenir en Python est d'utiliser la saisie. La saisie est une excellente fonction en Python et est souvent utilisée en programmation. Il met votre programme en pause et attend que l'utilisateur saisisse du texte Une fois que Python reçoit l'entrée de l'utilisateur, il la stocke dans une variable. Donnons quelques exemples. Tapez. Une fois que l'utilisateur appuie sur la touche Entrée, tous les caractères sont lus et renvoyés sous forme de chaîne. Notez que la nouvelle ligne générée lorsque l'utilisateur appuie sur la touche Entrée n'est pas incluse dans la chaîne de retour. Si vous incluez l'argument prompt facultatif, input l'affiche sous forme d'invite à l'utilisateur avant de suspendre la saisie rouge La fonction d'entrée ne prend qu'un seul argument. Les instructions que vous souhaitez afficher à l'utilisateur. Ensuite, l'utilisateur voit le message demandant quel est votre nom et attend pendant qu'il saisit sa réponse et continue après avoir appuyé sur Entrée La réponse est stockée dans le message variable. Ensuite, le message affiche la saisie de l'utilisateur. il est préférable d'ajouter un espace à la fin de vos instructions après notre exemple, il est préférable d'ajouter un espace à la fin de vos instructions après le point d'interrogation pour séparer l'invite de la réponse de l'utilisateur De plus, j'utilise des guillemets doubles parce que je les ai déjà cités dans le texte. Essayons maintenant quelque chose de différent. Nous voulons écrire une invite de plus d'une ligne. La première diapositive enregistre la première partie du message avec la variable prompt. Sur la deuxième ligne, l'opérateur ajoute la chaîne enregistrée dans une invite et ajoute la nouvelle chaîne à la fin. La barre oblique inverse N change de ligne. L'invite est ensuite stockée dans un nom de variable et transmise à la fonction d'entrée. Enfin, nous imprimons le texte en haut, le nom de la variable et la phrase «  Je m'appelle robot ». Si vous regardez attentivement la ligne de code, l'erreur de syntaxe est due aux guillemets. J'ai ouvert avec des guillemets doubles et fermé avec des guillemets simples. Laisse-moi régler ça. Génial. L'entrée renvoie toujours une chaîne. Si vous voulez un type numérique, vous devez convertir la chaîne dans le type approprié à l'aide des fonctions intégrées NT, float ou complex Cette ligne convertit N en entier pour que l' instruction d'impression réussisse. Je pense que vous êtes prêt à explorer vous-même les commentaires des utilisateurs un peu plus en profondeur. Voici quelques exercices de révision pour vous. Essayez d'écrire un programme qui prend les informations de l'utilisateur et les affiche ensuite, peu comme vous l'avez déjà fait, mais modifiez-le un peu. Essayez d'écrire un programme qui prend les données saisies par l'utilisateur, puis les affiche en minuscules Essayez d'écrire un programme qui prend les données saisies par l'utilisateur, puis affiche le nombre de caractères, en comptant les caractères de l'entrée saisie Comme toujours, vous trouverez les solutions à ces exercices et le code dans les fichiers de ressources de cette leçon. C'est bon. Ensuite, vous allez commencer à travailler avec des chaînes et des nombres. 38. EXERCICE : interagir avec les entrées de l'utilisateur: Dans cet exercice, vous vous aventurez dans le monde de l'interaction avec vos utilisateurs Et dans ce cas, vous devez écrire un programme qui prend les entrées de l'utilisateur, puis les affiche en retour, mais les convertit d' abord en minuscules Donc, si l'utilisateur écrit bonjour en majuscules ou en majuscules, il devrait toujours le récupérer en minuscules, peu importe ce qu'il y tape Ensuite, il y a une petite tâche supplémentaire dans laquelle vous pouvez également afficher le nombre de caractères saisis par l'utilisateur. OK. Réfléchis à ça. Prenez un moment, écrivez-le dans votre éditeur ou dans le REPL, puis passez à la leçon suivante et comparez-le à ma solution 39. SOLUTION : interagir avec les entrées de l'utilisateur: Pour résoudre cet exercice, vous allez devoir utiliser la fonction d'entrée en Python pour collecter les entrées de l'utilisateur , puis certaines méthodes de chaîne pour les convertir. Et puis il y a aussi une fonction appelée n qui peut vous aider à obtenir la longueur des chaînes. Je pourrais le faire ici dans Idle maintenant, et je vais probablement expérimenter un peu. Mais j'ai également ouvert un fichier dans lequel je vais écrire le code afin pouvoir l'exécuter plusieurs fois plus facilement sans avoir à le taper à chaque fois. Cela me donne également l' occasion de tester et de voir si mon script fonctionne, pas seulement pour une entrée, mais pour les différentes entrées répétées. Je vais donc écrire le code dans le script, mais vous pouvez également l'écrire via REPL si vous le souhaitez Ce sont les trois tâches que mon script doit effectuer. Je vais commencer par le numéro un, où je vais utiliser la saisie avec une petite invite ici. L'invite va dire « tapez quelque chose ». Et j'ajoute cet espace ici pour le mettre en forme un peu mieux. Ensuite, je dois en recueillir le résultat. Donc, si je lance simplement une entrée comme ça, essayons ici dans le REPL. Je vais recevoir le message qui dit de taper quelque chose. Et je peux dire bonjour, et on me le rendra. Mais dans mon script, je ne le collectionne nulle part pour le moment , ni même ici dans le shell Idol. Je ne le collectionnais nulle part, donc je dois l'attribuer à une variable dont je peux ensuite faire quelque chose, comme le mettre en minuscules, l'afficher et obtenir sa longueur, Donc, de retour dans mon éditeur sur la première ligne, je vais dire que les entrées de soulignement de l'utilisateur sont égales au retour de l' entrée d'appel et peu importe ce que l'utilisateur y tape Ensuite, je veux le convertir en minuscules et l'afficher. Commençons donc par ceci. J'utiliserai la fonction d'impression en tapant print, ouvrant les parenthèses, puis en insérant le point de soulignement de l'utilisateur plus bas s'agit donc simplement de la méthode de la chaîne par points que vous avez déjà utilisée plusieurs fois et que vous avez montrée à nouveau à l'utilisateur à l'aide de la fonction d'impression. Je vais tester ce script en l'exécutant en mode inactif. Vous pouvez appuyer sur la touche F5 pour l'exécuter , l' enregistrer et l'exécuter. C'est ce que nous allons faire. Nous pouvons voir ici que je suis invité à taper quelque chose. Je vais réessayer de dire bonjour en majuscules, vous pouvez voir que mon script fonctionne. Je reçois la même chaîne, mais en minuscules, un autre avantage d'avoir un script ici est que je peux simplement le réexécuter sans avoir besoin de taper autre chose Je reçois une autre invite et je peux essayer les cas mixtes. Bonjour Et encore une fois, je le reçois juste en minuscules Cela fonctionne donc. Je vais maintenant résoudre la tâche de la troisième ligne, imprimant également la longueur de l'entrée. Pour cela, je peux simplement utiliser la fonction len. La fonction len fonctionne en prenant une collection, par exemple une chaîne, puis en renvoyant simplement le nombre d' éléments de cette collection. Donc, si je mets une chaîne ici et que je dis bonjour, j'en reçois cinq , soit le nombre de caractères. Un, deux, trois, quatre, cinq. C'est donc exactement ce que je veux. Et pour en revenir à mon script, je vais dire imprimer. Ouvrez les parenthèses, puis je dirai Len parce que c'est ce que je veux imprimer. N comme argument, je vais transmettre l'entrée de l'utilisateur. Notez que l' entrée utilisateur que je transmets ici est en fait celle d'origine. Ce n'est donc pas une minuscule, mais cela n'a pas d'importance car le point inférieur ne changera pas le nombre de caractères Il ne s'agit vraiment que de le mettre en minuscules. Ainsi, la version en minuscules et la version saisie en majuscules par l'utilisateur auront le même nombre de caractères Maintenant, je vais tester à nouveau le script en l'exécutant. Enregistrez et exécutez. Tapez quelque chose. Je sais déjà que Hello en a cinq, donc nous allons utiliser cela et un type de bonjour mixte. Appuyez sur Entrée. Et en sortie, je reçois la version minuscule de cette chaîne et le nombre de caractères de cette Génial. Cela résout les trois problèmes ici. 40. Travailler avec des chaînes et des nombres: Maintenant que vous avez un peu travaillé avec les entrées utilisateur, parlons de l'utilisation des chaînes et des nombres. Lorsque vous obtenez une entrée utilisateur à l'aide de la fonction de saisie intégrée, le résultat est toujours une chaîne. Il existe de nombreuses autres situations dans lesquelles entrée est donnée à un programme sous forme de chaîne. Parfois, ces chaînes contiennent des nombres, et ils doivent être intégrés aux calculs. Dans cette leçon, vous allez apprendre à gérer des chaînes de nombres. Vous découvrirez également comment les opérations arithmétiques fonctionnent sur chaînes et comment elles aboutissent souvent à des résultats surprenants Ensuite, vous apprendrez à convertir entre chaînes et types de nombres. Commençons par la fenêtre interactive. Essaie ça. Je vais vous demander de créer une variable appelée Num. Ensuite, je vais lui attribuer la chaîne contenant le chiffre deux. Voici donc Num avec une chaîne littérale contenant deux. Et si vous utilisiez l' opération plus et que vous disiez num plus num ? Qu'est-ce que ça fait ? Vous avez peut-être déjà pensé que cela va les concaténer ensemble. Cela n'est pas égal à quatre, mais à deux et deux, soit 22. Eh bien, la chaîne 22, pas le chiffre. Si vous avez pris NUM et que vous utilisez l'astérisque, qui est l'opérateur de multiplication, et que vous dites : OK, multipliez cela par cinq Eh bien, cela devrait être égal à dix, non ? Eh bien, dans ce cas, cela va créer une chaîne avec le chiffre deux répété cinq fois. Vous obtenez donc une chaîne de cinq deux, concaténant En utilisant les chaînes avec des opérateurs arithmétiques, vous pouvez maintenant voir qu'il se comporte un peu différemment de ce que vous auriez pu penser L'opérateur plus peut caténer deux chaînes comme vous l'avez déjà fait, et l'astérisque ou l'opérateur de multiplication par étoiles crée plusieurs copies d' Et peu importe que le nombre soit droite ou à gauche de l' expression. Supposons que vous ayez été engourdi sept fois, il considère toujours NUM comme une chaîne, et sept sera juste le nombre de fois que le nombre situé à l'intérieur de Num, la chaîne, sera concaténé En fait, vous le faites avec d'autres choses, non ? Tu pourrais dire bonjour cinq fois. Une chose que vous pouvez faire est de dire que vous avez multiplié la chaîne de 12 par la chaîne de trois. Ensuite, nous vous indiquerons une erreur de type. Vous ne pouvez pas multiplier ces deux ensemble car cela indique que vous ne pouvez pas multiplier une séquence de type chaîne. La séquence dont il est question est donc la chaîne un, deux, qui est une séquence de deux caractères, puis on essaie de la multiplier par trois, qui est une chaîne non entière. Cela ne fonctionne donc pas. Cela génère une erreur de type. Et de même, et si vous preniez la chaîne de trois et que vous essayiez de l'ajouter seule au chiffre trois ? Donne un autre type d'erreur de type. Il indique que vous ne pouvez concaténer qu'une chaîne, pas un entier à une chaîne Si un objet situé de part et d'autre du signe plus est une chaîne, Python essaie d'effectuer une concaténation de chaînes Il ne fonctionnera en plus que si les deux objets sont des nombres. Vous devez d'abord convertir cette chaîne trois en un nombre avant de pouvoir l'ajouter à trois. Voyons comment procéder. Alors, que faites-vous de toutes ces chaînes que vous préférez être des nombres ? Vous allez utiliser certaines fonctions intégrées pour cela. La fonction INT convertit les objets en nombres entiers ou est également connue sous le nom de nombres entiers Parfois, vous voudrez que les objets soient transformés en nombres comportant réellement des virgules décimales Dans ce cas, vous devez utiliser la fonction flottante intégrée. Essayons-les. Pour tester cela, retournez dans Idle, et vous allez créer un nouveau fichier. Vous pouvez utiliser le menu déroulant Fichier et Nouveau ou vous pouvez utiliser le raccourci clavier Command plus N ou Control plus N sous Windows pour ouvrir une fenêtre d'édition. Ici, dans la fenêtre d'édition, nous créons un objet Num. Et il acceptera la saisie d'un utilisateur. Et voici le message. Vous dites d'entrer un chiffre à doubler. Fermez ça. La fonction de saisie intégrée va donc le demander, puis la valeur saisie sera affectée à la variable NUM. Ensuite, pour créer un NUM doublé, vous direz que NUM est multiplié par deux. Ensuite, la sortie d'impression. Génial. Allez-y, sauvegardez ça. Je l'appellerai pi à double point ou à double point. Et encore une fois, il suffit de l'enregistrer sur mon bureau. Dans ce cas, si vous appuyez sur F cinq pour le faire passer ici, cela vous demande de doubler un chiffre. Et je répondrai : Oh, six, s'il te plaît. Oh, tu vois mon erreur ? J'ai créé une variable avec le mauvais nom ici. Je n'ai pas réutilisé le nom correct, je dois donc le changer ici ou là. Je vais donc le modifier ici ou le changer là et enregistrer. Donc, un petit problème d'erreur de nom. C'est bon. Maintenant que je l'ai enregistré, nous pouvons le réexécuter. OK. Cette fois, je peux taper six. Au lieu de six fois deux sur 12, j'en obtiens 66. Donc six et six parce que c'est le cas pour deux cordes. Nous devons donc trouver comment changer cela. Ouvrez une nouvelle fenêtre de coque ici pour nettoyer un peu les choses. Tu peux continuer dans le tien. Je veux juste ne pas trop taper en bas. Alors, comment pouvez-vous travailler avec cela ? Eh bien, nous avons eu affaire au numéro six tout à l'heure. Ce que vous pouvez faire, encore une fois, au lieu de simplement travailler avec le chiffre six en tant que chaîne, c'est convertir une chaîne comme six en un entier. Et vous pouvez voir que INT convertira cela en une valeur numérique réelle de six ici. Il n'est pas entouré de guillemets comme s'il s'agissait d'une chaîne littérale INT signifie entier et convertit les objets en nombres entiers, tandis que float va le convertir en un nombre avec un point décimal Donc, si je devais utiliser float pour six, vous verrez 6.0. OK, alors que devons-nous faire ? Eh bien, ce que nous pouvons faire, c'est le convertir ici et dire INT pour le nombre. Il s'agit là d'une solution. Essayons-le. Je viens donc de le sauvegarder à nouveau. Si j'appuie sur F cinq pour l'exécuter, oh, cette fois, disons 12. Génial. Là, 12 multiplié par deux est 24. Mais si je voulais taper, je ne sais pas, 2,5. Eh bien, alors il faudrait qu'il soit à flot. Et ce ne serait pas mal si c'était 12 points, oh. Alors peut-être que ce serait plus sûr en fonction de ce que nous voulons taper. Il est un peu plus flexible d'utiliser le flotteur à la place. Je vais donc le faire, et exécutons-le après avoir sauvegardé. Maintenant, si je devais, comme je l'ai dit, taper 2.5, oups. J'ai oublié de remplacer l' INT par float ici. Avez-vous remarqué mon erreur ? Oui. Maintenant, exécutons à nouveau dans le type 2.5. Je dirais 5.0. Ou même si je le réexécutais et que je tapais 12 points oh ou même 12 tout seul, il reviendrait sous forme de virgule flottante. Pourquoi avons-nous utilisé float au lieu de INT ? Si vous donnez à la fonction INT intégrée quelque chose qui n'est pas en base dix, comme si vous deviez dire 2,5, elle se met un peu en colère. Il indique que c'est un littéral non valide pour INT avec cette exigence de base dix Donc, même si vous avez dit 12 points, oh, vous obtenez le même type d'erreur. Le float vous donne donc beaucoup plus de flexibilité, en fonction de la chaîne que vous y insérez. Parfois, vous devez convertir un nombre en chaîne de caractères. Pour faire l'inverse, il existe également une fonction. Permettez-moi de vous donner un exemple. Disons que nous allons refaire une concaténation. Supposons que nous ayons une variable appelée le nombre de pommes, et qu'elle est actuellement de quatre. Tu as très faim et tu dis : je vais manger. Concaténez ensuite le nombre de pommes à une autre chaîne contenant des pommes Imprimez-le automatiquement et insérez le numéro. Eh bien, vous ne pouvez concaténer qu'une chaîne, pas un entier à une La variable num apples étant un nombre, Python ne peut pas la concaténer avec l'autre chaîne Vous devez convertir l'entier Num apple en chaîne, et c'est là que nous utilisons la fonction STR intégrée. Tout comme INT et float, il existe une fonction intégrée STR qui renvoie une version chaîne d'un objet. Et ici, vous pouvez ajouter la fonction STR intégrée qui prend un objet et le place dans une chaîne. Génial. Voyons si cela fonctionne. Ouais. Cela fonctionne très bien. Ce qui est plutôt cool, c'est que la fonction STR intégrée peut gérer des expressions arithmétiques directement à l'intérieur de celle-ci Supposons donc que vous ayez eu un total de quatre pommes. Et voici le nombre que vous en avez mangé jusqu' à présent, soit deux. Nous avons donc attribué deux variables, total de pommes au nombre entier quatre et le nombre total de pommes consommées au nombre entier deux. Et vous voulez créer une chaîne indiquant que seul l'espace peut se caténer Et cette fois, vous êtes en train de convertir en chaîne. Et vous allez dire le nombre total de pommes moins le nombre de pommes consommées et le concaténer pour indiquer le nombre de pommes restantes I Donc, il peut faire cette soustraction juste à l'intérieur Examinons quelques exercices supplémentaires que vous pourrez pratiquer avec ceux-ci. Exercice 1. Créez une chaîne contenant un entier, puis convertissez cette chaîne en un entier réel à l'aide de la fonction INT intégrée. Testez votre nouvel objet sous forme de nombre en le multipliant par un autre nombre et en affichant le résultat Exercice 2. Réessayez l'exercice précédent, mais utilisez un nombre à virgule flottante et la fonction flottante intégrée. Exercice 3. Essayez de créer un objet chaîne et un objet entier. Affichez-les ensuite côte à côte avec une seule impression à l'aide de la fonction chaîne. Exercice 4. OK. Dans celui-ci, vous allez utiliser la saisie deux fois pour obtenir deux nombres différents d'un utilisateur, puis multiplier les nombres ensemble et afficher le résultat. L'impression doit ressembler à ceci. Vous trouverez les solutions à ces exercices ainsi que le code dans les fichiers de ressources de cette leçon. Ensuite, vous allez apprendre à rationaliser votre fonction d'impression. 41. EXERCICE : travailler avec des cordes et des nombres: Et vous allez continuer avec d' autres exercices de saisie. Celui-ci s'appelle Travailler avec des chaînes et des nombres. Écrivez un programme qui utilise deux fois la fonction de saisie pour obtenir deux nombres de l'utilisateur, multiplie les nombres ensemble et affiche le résultat Si l'utilisateur entre deux et quatre, par exemple, la nouvelle entrée doit imprimer le texte suivant. Le produit de deux et quatre est huit points zéro. Ce que vous pouvez voir ici, c'est que le résultat doit être affiché sous forme de nombre à virgule flottante. N'oubliez pas que la fonction d'entrée crée toujours une chaîne dans laquelle vous pouvez convertir certaines chaînes en nombres réels à l'aide des fonctions int et float, et que vous pouvez convertir des nombres en chaînes à l'aide de la fonction de chaîne STR. Vous devrez donc recueillir les entrées de l'utilisateur, puis saisir la conversion, puis faire puis saisir la conversion, puis quelques calculs mathématiques et les afficher à nouveau à l'utilisateur. Essayez-le vous-même, puis si vous le souhaitez, vous pourrez regarder la leçon suivante où je vais résoudre la tâche. 42. SOLUTION : travailler avec des cordes et des nombres: J'ai ouvert un nouveau fichier et j' ai pris quelques notes pour les instructions. Je veux obtenir deux nombres de l'utilisateur, les multiplier, puis afficher le résultat. C'est ce que je veux faire dans cette multiplication. Il y a en fait une autre étape là-dedans. Je vais également vouloir les convertir en nombres. Je peux donc le faire à un moment donné, mais je dois le faire avant de les multiplier. Et c'est parce que vous ne pouvez pas réellement multiplier deux chaînes ensemble. Ça va juste être une erreur. Je passe donc au REPL juste pour vous montrer ça. Si j'ai deux chaînes et que j' essaie de les multiplier ensemble, je vais obtenir une erreur de type indiquant que Python ne peut pas multiplier séquences par un entier de type chaîne. C'est un message bien descriptif qui me dit simplement que cela ne fonctionne pas. Mais si vous collectez les entrées de l'utilisateur, il s'agira toujours d'une chaîne, même si l'utilisateur saisit un nombre. Essaie ça aussi. Je vais donc attribuer la valeur de retour de l'entrée à A. Je vais juste donner une invite vide ici. Et donc l'invite, elle m'invite maintenant à saisir quelque chose Si j'en saisis quatre. Je pense donc que je saisis un chiffre. Ce que j'obtiens en conséquence est toujours une chaîne. Comme vous pouvez le voir, il s'agit d'une classe STR. Ça ressemble à ça. Donc, si vous collectez les entrées des utilisateurs, elles arriveront toujours sous forme de chaîne. Et puis si vous essayez de multiplier deux chaînes ensemble, vous allez rencontrer une erreur. Mais il y a un petit côté amusant. Si vous aviez un autre programme qui avait un entier fixe avec lequel vous multipliez l'entrée utilisateur, disons que si vous n' effectuez pas de conversion de type ici, vous pourriez obtenir une sortie à laquelle vous ne vous attendez peut-être pas Nous avons un, qui pointe vers quatre, non ? Et supposons que le programme multiplie les entrées d'un utilisateur par 20, n'est-ce pas ? Dans ce cas , vous obtenez donc une concaténation de chaînes. Python concatène la chaîne d'entrée 20 fois. Vous obtenez donc 20 quatre en sortie, ce qui serait un résultat de calcul étrange faites quatre fois 20. Pour éviter cela, vous devez donc le convertir explicitement. Vous pourriez, par exemple, convertir A en un entier, puis effectuer la multiplication, et cela fonctionne, n'est-ce pas ? Cela fonctionne correctement, et les mathématiques reprennent tout leur sens. C'est juste pour garder à l'esprit que vous devrez convertir ces nombres. Commençons donc par recueillir les deux numéros auprès de l'utilisateur. Revenons à notre éditeur et passons à la deuxième ligne. La lettre A est saisie. Ouvrez maintenant les parenthèses entre guillemets et tapez. Entrez un chiffre. Demandez-leur de le rendre un peu plus lisible, puis recommencez la même chose pour un autre numéro. Je dirais que B est une entrée. Tapez ensuite, entrez un autre numéro. Ensuite, je veux les convertir en nombres pour pouvoir les multiplier. Je vais le faire en une seule étape. Je vais donc les convertir en flottants car dans la sortie, je veux avoir des flottants agit donc de convertir explicitement A et B en nombres à virgule flottante, puis de les affecter à une variable appelée produit Ici, je fais la conversion et la multiplication en une seule étape. Enfin, je dois afficher le résultat. Je vais le faire simplement en utilisant la concaténation de chaînes, qui, comme vous le verrez, va devenir assez longue Vous avez probablement déjà trouvé une meilleure façon de le faire. Mais pour l'instant, restons-en à concaténation de chaînes, car je veux également vous montrer quelque chose de similaire à multiplication qui ne fonctionne pas avec Vous ne pouvez pas effectuer de concaténation si les deux ne sont pas des chaînes. Donc, pour pouvoir afficher ce message, le produit d'ici, le produit d'ici, vous pouvez simplement utiliser la variable que j'ai collectée car A est une chaîne, n'est-ce pas ? Je le convertit simplement par multiplication en un nombre à virgule flottante. A pointe donc toujours vers la chaîne d'origine saisie. Je peux donc dire que le produit de A et B est Et maintenant, si j'ajoute simplement le produit ici sans aucune conversion, je rencontrerais à nouveau une erreur. Essayons-le sur la console. Donc, ici, j'essaie de concaténer une chaîne et un nombre à virgule flottante C'est donc marqué ici. Je vais dire, A, c'est ma chaîne plus un nombre à virgule flottante, 0,2. Et vous pouvez voir que Python génère à nouveau une erreur de type où il vous indique qu'il ne peut concaténer que des chaînes chaînes et non un float en Ainsi, pour pouvoir mettre produit dans la chaîne que vous concaténez ici, vous devez le convertir explicitement en chaîne en utilisant la fonction STR et en passant le produit comme argument Avec ça, ça va marcher. Et vous pouvez également continuer à ajouter une autre chaîne, qui dans ce cas, n'est qu'un point. C'est bon. C'est donc une très, très longue méthode pour assembler ce message, utilisant simplement la concaténation de chaînes Mais essayons-le et voyons si cela fonctionne. Je le sauvegarde et je le gère. Entrez le chiffre deux, entrez un autre chiffre quatre, et le produit de deux et quatre est 8,0. J'obtiens donc le résultat attendu. Le résultat de la saisie ressemble à un nombre à virgule flottante. Mais ici, dans l'appel d'impression, vous le convertissez en chaîne avant concaténer avec les autres parties de la chaîne que vous Si vous avez utilisé le format point ou une chaîne F pour le message final, c'est également une excellente solution. Donc, si vous êtes coincé avec la concaténation de chaînes jusqu'à présent, vous aurez l'occasion d' essayer quelque chose de nouveau. 43. Méthodes de formatage Print(): Bonjour à tous, et bienvenue dans le cours. Dans cette leçon, je vais consacrer un peu plus de temps à la mise en forme des chaînes de caractères afin que vous puissiez créer des messages plus complexes dans le cadre de votre fonction d'impression. Tout d'abord, vous pouvez concentrer deux chaînes pour en créer une troisième. Hello plus world donnerait lieu à une troisième chaîne appelée Hello World. Il faut être un peu prudent en Python. Cela ne modifie pas réellement la chaîne. Cela crée une troisième chaîne toute neuve. Cela peut rendre la manipulation des chaînes un peu gourmande en mémoire et ralentir les performances. Au fil des ans, Python a ajouté plusieurs méthodes de manipulation des chaînes Le premier est similaire au C, supportant la notation en pourcentage a. Le second comporte des espaces réservés entre crochets, et le troisième, assez récent, est une chaîne en F. Nous avons déjà discuté de ces trois méthodes lorsque nous avons découvert les chaînes de caractères. Je vais maintenant vous montrer comment intégrer ces méthodes de formatage dans la fonction d'impression En général, il est recommandé d' utiliser la chaîne F autant que possible, mais il existe encore quelques cas où style C peut être plus important. Je vais vous montrer comment utiliser ces deux éléments dans le terminal dès maintenant. Je vais commencer par créer quelques variables ici. Prénom Âge du nom de famille. Et le premier exemple de formatage est le pourcentage S. Le pourcentage indiqué dans cette chaîne est un espace réservé pour l'endroit où le contenu va être injecté Le pourcentage à la fin de la chaîne indique ce qu'il faut injecter. Dans ce cas, la valeur des noms de famille est insérée dans la chaîne. Vous pouvez mettre plusieurs pourcentages dans un format. Pour ce faire, vous devez passer un turple à la chaîne au lieu d'une valeur unique Notez que si vous souhaitez utiliser le nom de famille deux fois, vous devez utiliser le 2% S, un pour chaque instance du nom de famille et la variable deux fois à l'intérieur des tuples pourcentage S indique que vous allez y mettre une chaîne. pourcentage D indique que vous allez saisir un entier. pourcentage F est pour les flotteurs. Tapez. Le chiffre a été coupé à 3,14. Pourquoi est-ce le cas ? Expliquons ici. Le premier chiffre est le nombre minimum total de chiffres que la chaîne doit contenir. Le nombre qui suit est le nombre décimal. Cela signifie combien de nombres afficher après la virgule décimale ? C'est pourquoi le résultat est 3,14. Donc, si je devais le remplacer par trois, cela indiquerait 142. Si j'en fais un grand nombre, par exemple huit, il remplira le reste de ces nombres par des zéros Changeons maintenant le premier chiffre. Disons 20 et lançons le programme. Remarquez comment nous remplissons un tas d'espaces blancs. Maintenant, rappelons-nous comment convertir en chaîne de caractères. Nous pouvons également utiliser un signe de pourcentage R, qui fait la même chose avec le signe de pourcentage S. Prenons un autre exemple en utilisant plusieurs signes de pourcentage. Python les prendra dans l'ordre. Le premier côté en pourcentage sera attribué au premier élément, et le deuxième signe de pourcentage sera attribué au deuxième élément. Bien, nous allons maintenant faire le même exemple en utilisant le deuxième type de méthode de formatage. Et je vais utiliser des crochets ici et mettre un niveau de variable arbitraire Par exemple, X se ferme avec des guillemets puis un point et appelle la méthode de format sur cette chaîne. Ensuite, la variable X et mon nom sous forme de chaîne. Sympa. Modifions ce code en ajoutant la phrase suivante et une deuxième étiquette de variable. Pourquoi, par exemple ? Python 3 a introduit le concept d'une chaîne F. Le F devant la chaîne indique qu'il s'agit d'une chaîne de mise en forme. Maintenant, les crochets indiquent où placer l'injection. C'est le même que dans le premier exemple. Je trouve ce mécanisme beaucoup plus facile à lire, surtout si vous avez plusieurs variables. Les chaînes de format permettent le calcul. Ils prennent également en charge le formatage. Ouvrons une nouvelle fenêtre shell, importons le premier module math, qui donne accès aux fonctions mathématiques. À l'intérieur des crochets, vous placez deux points, indiquant votre mécanisme de formatage Oups, j'ai oublié de définir la variable âge. Le 0,2 F est similaire au 0,2 F ci-dessus, ce qui nous donne l'âge d'Alan Turing multiplié par Pi à deux chiffres significatifs. Génial. Assurez-vous de prendre votre temps et de regarder attentivement la conférence. Si vous avez des questions, n' hésitez pas à les poster sur le forum de questions-réponses. Merci d'avoir regardé. 44. Trouver une corde dans une corde: Maintenant que vous avez découvert comment rationaliser vos impressions à l' aide de chaînes F, il ne reste plus qu'à trouver une chaîne dans une chaîne. L'une des méthodes de chaînes les plus utiles est find. Comme son nom l'indique, cette méthode permet de trouver l'emplacement d'une chaîne dans une autre chaîne, communément appelée sous-chaîne. Pour utiliser find, vous devez le placer à la fin d'une variable ou d'une chaîne littérale en saisissant la chaîne que vous souhaitez rechercher entre parenthèses La valeur renvoyée par Find est un indice de la première occurrence de la chaîne que vous lui transmettez. Jetons un coup d'œil à cela dans la fenêtre interactive. Commençons par une phrase. La phrase variable va donc être affectée à la chaîne littérale L'alarme incendie continue de sonner. Si vous deviez utiliser la méthode fine au lieu des crochets, vous choisirez la sous-chaîne que vous recherchez dans la chaîne Donc, dans ce cas, nous allons dire, recherchez le feu. Tapons. Phrase à rechercher, feu entre guillemets, fermer les parenthèses Il renverra l'indice de la première occurrence de la sous-chaîne à l'intérieur de la chaîne Dans ce cas, il s'agit du quatrième point d'indice. Voici donc zéro, un, deux, trois, quatre. Je sais que c'est la cinquième position, mais encore une fois, partant de zéro, zéro , un, deux, trois, quatre. C'est là que tout commence. Génial. Et si la sous-chaîne n'existe pas dans la chaîne ? Tapons la phrase point find dans un mot aléatoire. Vous obtiendrez un retour négatif, ce qui signifie qu'il ne l'a pas trouvé. Donc, attention, n'oubliez pas qu'il faut que le boîtier corresponde. Donc, si je lui donne un F pour le feu, il renverra moins un. Essayons un autre exemple. Je vais appeler ça une nouvelle phrase. Et cela équivaudra à mettre une ficelle dans la tienne. Dans ce cas particulier, lorsque vous dites « nouvelle phrase introuvable », qu'obtiendrez-vous si vous tapez une chaîne de caractères ? Donc, dans ce cas, ce n'est que la première occurrence. Il n'a pas renvoyé le second. Cela renvoie uniquement l'index de la première occurrence, commençant par le début de la chaîne. Et notez que si vous aviez une chaîne, disons un numéro de téléphone. Si vous essayez de trouver le chiffre quatre, comme dans ce cas, un entier, cela vous donne une erreur. Dans les commentaires, il est dit qu'il s'agit d'une erreur de type. La valeur doit être une chaîne non un entier à rechercher. Il faudrait donc trouver une chaîne littérale de quatre et elle se trouve juste là au tout début de l'indice zéro Parfois, vous souhaiterez peut-être remplacer toutes les occurrences d' une chaîne particulière au sein d'une chaîne. Comme find renvoie l'index de la première occurrence d'une sous-chaîne, vous ne pouvez pas facilement l'utiliser pour effectuer cette opération Mais les chaînes ont une méthode de remplacement qui remplace chaque instance d' une sous-chaîne par une autre chaîne Tout comme cette méthode find, vous ajoutez replace à la fin d' une variable ou d' une chaîne littérale Dans ce cas, cependant, vous devez mettre deux chaînes entre parenthèses et les séparer par une virgule première serait la sous-chaîne que vous souhaitez trouver, et la seconde est une chaîne par laquelle vous souhaitez remplacer les courants Ido de la sous-chaîne. Essayons-le dans la fenêtre interactive. Ainsi, tout comme find, vous balisez la méthode replace à la fin de la variable ou de la chaîne littérale Essayons ça. Disons que nous avions une variable appelée Mon histoire. OK. Et dans ce cas, vous vouliez remplacer en utilisant dot replace. Et vous pouvez voir ici qu'il est écrit « mettez l'ancienne », c'est-à-dire que la sous-chaîne que vous recherchiez doit être remplacée par la nouvelle chaîne Je vais donc dire de rechercher la vérité et de la remplacer par des mensonges. Maintenant, n'est-ce pas cool ? Maintenant, ce qui est arrivé à mon histoire elle-même, vous vous souvenez peut-être que les chaînes sont des objets immuables et que le remplacement ne modifiera pas la variable my story Et l'utilisation de la méthode replace ne modifie pas la chaîne de mon histoire. Si vous tapez immédiatement mon histoire dans la fenêtre interactive, vous verrez que si vous souhaitez modifier la valeur de la chaîne my story, vous devez la réattribuer Donc, encore une fois, pour faire un petit rappel à ce sujet, vous diriez j'aimerais attribuer mon histoire, dans ce cas, à cette remplaçante Donc, vous diriez : disons que nous voulons faire la même chose, échanger la vérité contre des mensonges. Alors maintenant, qu'y a-t-il dans mon histoire ? Vous verrez ici qu'il a été modifié et réaffecté. Replace remplacera chaque instance de la sous-chaîne par le texte de remplacement Et si vous aviez une autre chaîne assignée à certains éléments ? Voici donc le texte, et vous vouliez une nouvelle version du texte. Et tu voulais faire quelques remplacements. Supposons que vous vouliez remplacer une partie par tout, mais que vous vouliez aussi remplacer des choses par des choses. Eh bien, il faudrait les faire un par un. Donc, le nouveau texte dit tout, et vous pourriez dire, OK, eh bien, nouveau texte. Je veux aussi faire un nouveau texte, ne pas remplacer les trucs du coma. Maintenant, tu as accompli les deux. La méthode de remplacement remplace chaque instance d'une sous-chaîne particulière par un texte de remplacement Maintenant, si vous souhaitez remplacer plusieurs sous-chaînes différentes dans une chaîne, vous devez utiliser replace plusieurs fois. Il est temps de vous lancer le défi avec nouveaux exercices de révision. Exercice 1. Sur une ligne de code, affichez le résultat de la tentative de recherche de la sous-chaîne A minuscule dans la chaîne de trois A. Notez que le résultat doit être négatif Exercice 2, remplacez chaque occurrence du caractère S par X. Dans cette chaîne, quelqu'un a dit quelque chose à John. Troisième exercice : écrivez un programme qui accepte les entrées par l'utilisateur , puis affiche le résultat de la tentative de recherche d'une lettre particulière dans cette entrée. Vous trouverez les solutions à ces exercices et le code dans les fichiers de ressources de cette leçon. Merci d'avoir regardé. 45. EXERCICE : trouver une lettre dans une chaîne: Votre prochain exercice s'appelle trouver une lettre dans une chaîne. Ici, vous devez écrire un programme qui accepte entrées utilisateur avec la fonction de saisie et affiche le résultat de la tentative de recherche d'une lettre particulière dans cette chaîne d'entrée à l'aide de la fonction point find. Quelle lettre n'est pas définie ici. Il semble donc que ce sera une autre entrée, probablement de la part de l'utilisateur, ou peut-être que ce n'est tout simplement pas une très bonne description. Quoi qu'il en soit, je vais donc ajouter cette description selon laquelle l' utilisateur devrait pouvoir saisir à la fois le mot ou la phrase , puis la lettre à rechercher dans cette phrase. OK, essayez-le, puis passez à la leçon suivante. 46. SOLUTION : trouver une lettre dans une chaîne: La tâche parlait donc de l' écriture d'un programme, ce qui indique généralement que vous devez utiliser un script pour cela. Encore une fois, j'ai ouvert un nouveau script , puis je l'ai transformé en notes courtes. Je souhaite recueillir des informations, puis afficher les résultats de la recherche d'une lettre. Commençons par recueillir les données, puis les enregistrer quelque part. Donc, mon texte va être saisi, entrez une lettre. Ensuite, je souhaite afficher résultat de la recherche d'une lettre dans ce texte. Je veux donc dire point de texte Find. Et puis une lettre. Qu'est-ce que cette lettre ? Je ne sais pas Je pourrais simplement rechercher une lettre codée en dur, par exemple X ici, puis en imprimer le résultat. Essayons ça. Je vais le sauvegarder et le lancer. Je peux maintenant saisir un texte. Je vais sauver Virginia et j'en aurai moins un parce qu' il n'y a pas de X en Virginie. Maintenant, si je réexécute le script et que j' essaie avec un texte contenant un X, par exemple Xavier, alors j'obtiens zéro. Il trouve donc X en première position. Cela fonctionne donc avec X, mais je ne pense pas que ce soit génial. S'il cherche toujours X, c'est peut-être un peu ennuyeux. Je vais donc modifier cela pour permettre à l'utilisateur de saisir également le caractère à rechercher. Je vais donc créer une autre variable que j'appellerai caractère. Et ce sera un autre appel à la saisie. Ensuite, je vais dire « Entrez le caractère » à rechercher. Enfin, je dois également remplacer l'argument du texte fin par un caractère. Ce qui signifie alors que ce sera le cas quelle que soit la saisie par l'utilisateur. Techniquement, cette saisie utilisateur peut comporter plus d'un caractère. recherche par points fonctionne avec des sous-chaînes Vous pouvez donc saisir plusieurs caractères sous forme de sous-chaîne à rechercher Si Python trouve la sous-chaîne, il renvoie l'index du début de l' endroit où la sous-chaîne apparaît pour la première fois dans la Mais pour cet exercice, vous n'avez pas à vous soucier de tout cela. Vous supposerez que vos utilisateurs sont de bons citoyens et suivrez les instructions pour ne saisir qu'un seul caractère. Refaisons-le. Entrez un texte. Maintenant, je peux dire Samantha et rechercher A. Et puis vous pouvez voir qu'il trouve à la première position de l' index Donc, à la deuxième position, qui est la position de l'indice. Et faisons-le encore une fois. Vérifiez si cela fonctionne toujours comme prévu. Si je dis Samantha et que je cherche X, j'obtiens moins un. Et encore un test. Si je tape Samantha et que je recherche T, vous pouvez voir que j'en obtiens cinq, qui est la position d'index du premier T que Python trouve dans la chaîne d'entrée C'est bon. Donc ça marche. Nettoyons le script, supprimons les commentaires, et nous avons terminé cet exercice. 47. Cordes et méthodes de cordes (RÉSUMÉ): Bienvenue, tout le monde. Dans cette section, vous allez apprendre à manipuler des chaînes à l' aide de méthodes de chaîne. Vous apprenez à utiliser les entrées utilisateur et à gérer des chaînes de chiffres. Parallèlement à cela, vous avez appris plusieurs façons de formater des chaînes pour l'impression. Nous avons également abordé le fractionnement, concaténation et la jonction de chaînes En cours de route, vous avez également découvert chaînes F, les chaînes multilignes, comment indexer et découper des chaînes, comment les chaînes sont immuables, et vous avez également appris à découvrir d'autres méthodes en utilisant le mode inactif Dans la section suivante, nous allons nous entraîner à travailler avec des chaînes et des méthodes de chaînes. faisant tout cela, vous mettrez en pratique les concepts que vous avez appris dans la section et vous aiderez à les appliquer. Je tiens à vous remercier et à vous féliciter d' avoir rempli cette section. 48. PROJET : Créer un programme d'impression de reçus: Bienvenue dans votre premier projet. Nous allons créer un programme d'impression de reçus très basique. de la semaine, comme nous l'avons appris sur les variables, les opérateurs de manipulation de chaînes utiliseront ces compétences pour créer ce programme. Il est toujours bon d'imaginer un dessin de ce que vous essayez de construire. Pour les projets plus importants, vous devez créer un organigramme ou sorte de document de conception qui vous permettra de rester sur la bonne voie. De cette façon, vous ne vous éloignez pas du résultat escompté. Pour nous, nous allons créer un petit programme d'impression de reçus avec les concepts que nous avons appris, dans lesquels le résultat ressemblera à ce qui suit. Commençons donc. Chaque fois que vous commencez un projet, vous devez toujours savoir par où commencer. Quelle que soit la taille du projet, il existe certaines dépendances. Comme pour construire une maison, vous devez avoir une fondation avant de pouvoir y installer un toit. Commençons par définir les variables avec lesquelles nous travaillerons tout au long de ce programme. R Il est bon d' implémenter de bonnes techniques de codage lors de l'écriture d'un programme Python. Cette technique introduite dans son bloc est la possibilité de déclarer plusieurs variables sur la même ligne. Pour ce faire, nous séparons les noms des variables et leurs valeurs associées par. En regardant les deux premières variables déclarées, la valeur des oranges sera enregistrée avec le nom de variable P, un trait de soulignement et la valeur 5,90 Cela sera enregistré dans le nom de variable P one underscore price Plutôt que d'écrire six lignes, nous avons déjà réduit notre programme de moitié. Moins nous utilisons de lignes, mieux c' est la plupart du temps. Définissons ensuite les variables que nous utiliserons pour l'entreprise en haut du reçu. Par exemple, nous avons laissé le nom de l'entreprise en minuscules afin que vous puissiez utiliser une méthode de manipulation du streaming pour résoudre ce problème Enfin, déclarons le message qui sera envoyé à l'utilisateur au bas du reçu. Comme nous pouvons le voir dans le design que nous avons élaboré au début du projet, nous devrons tracer une bordure en haut et en bas. Commençons par une bordure supérieure. Tout ce que nous essayons de faire, c'est d'imprimer 50 étoiles d'affilée pour Tom Border au lieu de faire 50 déclarations imprimées. Nous pouvons simplement multiplier la chaîne par le nombre que nous voulons. Nous avons déjà défini nos variables dans l'entreprise à l'aide des lignes précédentes, alors affichons-les. Les caractères d'échappement sont lus dans le caractère de barre oblique inverse qui le définit Tout ce qui vient après cette barre oblique inverse est ce que l'ordinateur interprétera Dans les trois premières instructions d'impression, nous utiliserons la barre oblique inverse T pour l'indentation des onglets Lorsque nous utilisons les deux caractères qui s'échappent d'affilée pour nous centrer dans notre sortie, allons maintenant créer un diviseur Comme nous avons imprimé notre bordure supérieure, nous allons multiplier le symbole égal par 50 pour créer la même ligne de largeur. Cela donnera l'apparence de sections distinctes. Nous voulons maintenant créer un en-tête avant répertorier le nom et le prix de chaque produit. Cela peut être fait simplement en utilisant nos caractères d'échappement pour l'indentation En raison de la taille des noms des en-têtes, nous ne voulons utiliser qu'un seul onglet avant chaque en-tête. Nous pouvons maintenant continuer et afficher une ligne pour les informations de chaque produit. OK. OK. Nous utilisons styles similaires dans les relevés imprimés précédents afin de centrer le titre, le prix et les en-têtes respectifs de chaque produit prix et les en-têtes respectifs Essayez de ne pas vous laisser embrouiller par tous les symboles de la chaîne d'impression, car vous pouvez simplement les décomposer en un onglet, puis la première variable étant formatée dans la chaîne, suivie de deux onglets, puis du signe $1 pour que le prix ressemble à une devise, puis la seconde variable formatant la chaîne Ceci complète la section réservée à nos articles, alors ajoutons un autre séparateur de section Comme dans la section des produits. Nous voulons créer un en-tête pour notre total, mais nous voulons également le centrer sous la colonne des prix, comme dans la section des produits. Pour ce faire, nous avons besoin de trois onglets. Maintenant que notre en-tête total aligné sur la colonne des prix des produits, nous pouvons importer notre total sur la ligne suivante. Toutefois, avant de pouvoir imprimer un total, nous devons d'abord le calculer, c' est-à-dire la somme de tous nos produits. Définissons une variable appelée total, puis nous l'imprimerons. Encore une fois, nous avons ajouté trois onglets plus signe de 1$ pour que la valeur totale apparaisse sous forme de devise. Ajoutons maintenant une bordure de section. Y. Pour afficher le dernier message de remerciement, notre design est légèrement plus espacé que n'importe quelle autre section Nous devrons donc ajouter quelques nouvelles lignes pour lui donner un espace supplémentaire Notre message est désormais centré et nous sommes prêts à passer à autre chose. Pour terminer le programme d'impression simple, nous devons ajouter une bordure inférieure pour des raisons esthétiques. Lancez le programme. Notez que le prix de notre troisième produit, l'huile d'olive, est centré sur celui des deux autres produits. Supprimons donc un onglet. Lancez à nouveau le programme. Et ça marche très bien. Félicitations. Aussi simple que cela puisse être, il s'agit d'une étape importante. Essayez d'interrompre le programme. J'encourage toujours les étudiants à essayer et à abandonner les programmes, car cela vous apprendra à y remédier. Maintenant, j'ai une question difficile à poser. Dans le cadre du projet, nous avons fini par créer des bordures au-dessus et en dessous des informations imprimées. Essayez maintenant d'ajouter une bordure en étoile sur les côtés également sur les bordures latérales. La solution se trouve toujours dans les fichiers de ressources. Si vous avez des questions ou des suggestions sur la façon d'améliorer le programme, hésitez pas à me le faire savoir. Merci d'avoir regardé. 49. Numéros et mathématiques (aperçu): Les ordinateurs utilisent des chiffres pour représenter toutes sortes d' informations telles que du texte, des images, de la musique et même des vidéos comme celle que vous êtes en train de regarder. Pratiquement tout est un chiffre du point de vue de l' ordinateur. Pour cette raison, les nombres et la capacité à les manipuler jouent un rôle important dans tous les langages de programmation, y compris Python. C'est peut-être aussi pour cela que certains débutants pensent qu'ils ont besoin de solides compétences mathématiques pour devenir programmeurs Cependant, c'est une idée fausse courante. En réalité, vos connaissances en mathématiques au primaire devraient être largement suffisantes pour commencer à coder. Le niveau réel de familiarité mathématique dépendra de votre rôle spécifique dans l'application que vous créez Par exemple, vous étiez moins susceptible d'avoir besoin de connaissances algèbre linéaire ou en statistiques en tant que développeur Web qu' en tant que data scientist Dans ce cours, vous aurez un aperçu des types numériques en Python, de la création d'entiers, de nombres flottants et de nombres complexes, ainsi que de l'exécution d'opérations arithmétiques Découvrez l'erreur de représentation en virgule flottante, travaillez avec les fonctions mathématiques et les méthodes numériques, formatez et affichez les nombres sous forme de chaînes. Bien, il est temps pour vous de commencer par avoir un aperçu des types numériques disponibles en Python 50. Types numériques en Python: Dans cette leçon, vous allez avoir une vue d'ensemble des types numériques disponibles en Python Python possède trois types numériques intégrés à la syntaxe, ce qui signifie que vous pouvez commencer à les utiliser immédiatement lorsque vous les exécutez en mode inactif Les trois types numériques natifs de Python sont entiers ou des nombres entiers tels que moins trois, zéro ou 42 Python les appelle « It » en abrégé. Ensuite, il y a les nombres à virgule flottante, qui peuvent avoir une partie fractionnaire, comme moins 2,32 ou 3,14, Ils sont connus sous le nom de flotteurs, et vous apprendrez pourquoi ils sont appelés ainsi Enfin, il existe des nombres complexes composés de parties réelles et imaginaires. Ils sont légèrement plus avancés et rarement utilisés dans la pratique. Vous aborderez donc les nombres complexes dans une leçon ultérieure. Le type de données correspondant en Python est appelé complexe. Il convient de mentionner que les trois types numériques intégrés à Python sont signés, ce qui signifie qu'ils peuvent stocker valeurs positives et négatives avec le zéro neutre De plus, les nombres entiers n'ont pas valeur maximale ou minimale, qui est uniquement limitée par la mémoire disponible sur votre ordinateur En revanche, les nombres à virgule flottante et leurs cousins des nombres complexes ont une plage de valeurs et une précision fixes. Néanmoins, ils sont suffisamment grands pour s' adapter à la plupart des cas d'utilisation réels. À proprement parler, Python possède encore un autre type numérique, qui est le type spécial de type de données entier Il est appelé booléen ou bool en abrégé et ne peut stocker qu'une des deux valeurs, vraie Ces valeurs peuvent être représentées par un et zéro, respectivement. Cependant, vous ne devriez pas vraiment considérer les booléens comme des nombres, car ils sont utilisés dans un but différent, ce que vous découvrirez dans un cours vidéo distinct sur la logique conditionnelle Dans la plupart des applications, vous utiliserez entiers et des nombres à virgule flottante exclusivement des nombres entiers et des nombres à virgule flottante, car ils couvrent le plus large éventail de problèmes tout en étant les plus efficaces Une exception notable concerne toutefois les opérations financières sur des valeurs fractionnaires, qui nécessitent une précision exacte, en particulier lorsque vous travaillez avec grandes et de petites quantités en même temps Étant donné que les nombres à virgule flottante ont une précision limitée, leur utilisation pour représenter des montants en devises entraînerait inévitablement des erreurs d'arrondissement importantes Vous ne devez jamais utiliser flottants pour représenter des données financières dans des applications réelles, sauf si cela ne vous dérange pas de perdre des informations sur l'argent de votre client Un schéma courant pour représenter des montants d'argent consiste à les stocker sous forme d'entiers en termes de plus petite unité monétaire, telle que les cents, puis à les reconvertir en dollars Cependant, cette approche ne fonctionnera pas avec plusieurs devises qui peuvent utiliser des unités différentes. Par exemple, 1 dollar vaut exactement 100 cents, tandis qu'un bitcoin peut être subdivisé en presque n'importe quelle fraction Pour résoudre le problème des flottants, Python fournit quelques types numériques supplémentaires biais de ces modules de bibliothèque standard , que vous découvrirez ultérieurement Vous n'aurez pas besoin de ces types numériques supplémentaires pendant ce cours, mais cela vaut la peine de les connaître. Le premier est appelé décimal car il stocke les nombres en interne en utilisant le système de position décimale au lieu du système binaire, comme la plupart des autres types numériques En dehors de cela, il se comporte principalement comme un nombre à virgule flottante Contrairement à un nombre à virgule flottante, il possède une position arbitraire mais finie, dont la valeur par défaut est de 28 décimales Vous devez donc décider l'avance du nombre de chiffres que vous souhaitez conserver De plus, bien qu'un nombre décimal fonctionne avec des nombres entiers, vous ne pouvez pas le mélanger facilement avec des nombres à virgule flottante Si c'est une exigence, vous pouvez utiliser un autre type numérique fourni avec Python appelé fraction Il représente un nombre rationnel ou un quotient de deux entiers, par exemple un tiers Les fractions ont une précision infinie, ce qui vous permet de représenter des nombres exactement, même s'ils ont une expansion décimale ou binaire récurrente expansion décimale ou binaire sans perte d' informations due à Maintenant que vous avez une idée générale des types numériques en Python, il est temps d'examiner de plus près les entiers 51. Entiers: Dans cette leçon, vous allez approfondir l'un des types numériques les plus courants en programmation, le type de données entier, que Python appelle Int Si vous souhaitez suivre une session d' interpréteur Python interactive, alors lancez-vous dans session d' interpréteur Python interactive, le mode inactif dès maintenant. Un entier est un nombre entier sans décimale. Le moyen le plus rapide de créer un entier en Python est de créer un littéral entier composé de chiffres qui apparaissent littéralement dans votre Par exemple, si vous tapez 42 et idle, vous créez un entier. Vous pouvez vérifier le type d'un tel littéral, que Python appelle It car les entiers sont des nombres entiers Ils ne sont pas livrés avec une fraction. Ainsi, dès que vous incluez le point décimal dans votre littéral, vous ne créez plus de nombre entier Même si la partie fractionnaire de votre littéral est égale à zéro, comme dans cet exemple, le résultat sera un nombre à virgule flottante, que vous découvrirez dans la leçon suivante D'autre part, un littéral entier peut inclure le signe moins Cela crée un nombre entier négatif. De plus, vous pouvez délimiter des groupes de plusieurs chiffres en plaçant un seul trait de soulignement n' importe où dans votre littéral pour en faire un grand nombre, un peu plus facile Cela ne fait aucune différence pour Python que vous utilisiez les traits de soulignement ou non, mais écrire un nombre avec eux est sans doute plus lisible pour les humains Jusqu'à présent, vous n'avez vu que des littéraux décimaux composés des dix chiffres habituels de zéro à neuf Cependant, il peut arriver que vous souhaitiez exprimer un nombre en utilisant un système numérique différent. Parce que les ordinateurs utilisent binaires et parfois quelques autres systèmes numériques, Python vous permet de créer des entiers en utilisant ces alternatives En préfixant votre entier littéral avec l'une des rares bases du système prises en charge, vous pouvez modifier le nombre de chiffres que vous souhaitez utiliser Par exemple, le nombre 42 peut être exprimé comme un, zéro, un, zéro, un, zéro dans le système binaire. Pour indiquer à Python d'interpréter un littéral tel que des chiffres ou des bits binaires, vous pouvez utiliser le préfixe zéro B. Remarquez comment idle vous présente à nouveau le nombre dans le système décimal C'est le même nombre représenté uniquement de deux manières différentes. De même, vous pouvez exprimer le nombre 42 dans le système hexadécimal en utilisant le préfixe zéro x suivi des chiffres deux A. Disposez d'un maximum de 16 chiffres dans le système hexadécimal Les dix chiffres habituels de 0 à 9 plus six lettres latines de A à F. Les lettres peuvent être en majuscules ou en minuscules Le dernier système numérique supporté par les littéraux Python est le système octal, qui comporte huit chiffres les littéraux Python est le système octal, qui comporte huit Vous pouvez activer un littéral octal avec le préfixe 00. Encore une fois, vous obtenez une représentation décimale de l'entier créé Il est juste de dire que vous aurez rarement besoin d'utiliser des littéraux entiers autres que le nombre décimal par défaut Néanmoins, ils peuvent parfois être utiles. Il est préférable d'utiliser des nombres entiers littéraux lorsque vous connaissez vos nombres dès le départ et que vous souhaitez les intégrer dans votre code sous une forme littérale Cependant, les nombres sont souvent fournis sous forme de chaînes par les utilisateurs qui les ont tapés sur leur clavier une leçon précédente, vous vous souvenez peut-être que vous pouvez convertir une chaîne en entier en appelant la Dans une leçon précédente, vous vous souvenez peut-être que vous pouvez convertir une chaîne en entier en appelant la fonction intégrée en Python. Notez les guillemets autour de 42, qui définissent une chaîne littérale Vous obtenez en retour la valeur entière correspondante indiquée sans les guillemets Encore une fois, vous pouvez vérifier le type de la valeur de retour qui se trouve être int. Par défaut, la fonction int suppose que vous fournirez une chaîne composée de chiffres décimaux allant de zéro à neuf Si vous souhaitez choisir une base différente pour le système numérique, vous pouvez de manière optimale transmettre un deuxième argument à la fonction après une virgule Dans ce cas, vous créez un nombre entier 42 à partir d'une chaîne de chiffres binaires 101010 La valeur maximale de la base prise en charge par Python est 36. Il convient de noter que le service informatique accepte une valeur de n'importe quel type de données, et pas seulement des chaînes. Par exemple, vous pouvez transmettre un nombre à virgule flottante afin de tronquer sa partie fractionnaire Comme vous pouvez le constater, la fonction int permet de convertir des valeurs d'autres types de données en nombres entiers, ce qui peut être nécessaire pour effectuer certains calculs sur des nombres plutôt que sur des chaînes Lorsque vous appelez Int sans passer de valeur en argument, vous renvoyez toujours zéro comme résultat. La troisième méthode pour créer des entiers en Python consiste à utiliser des expressions telles que des expressions arithmétiques ou des appels de fonction Vous en apprendrez davantage à ce sujet à l'avenir. En attendant, les littéraux entiers devraient être totalement suffisants. C'est bon. Vous savez maintenant comment créer des nombres entiers en Python à l'aide de littéraux entiers, que vous pouvez représenter avec différents systèmes numériques, notamment les systèmes décimal, binaire, hexadécimal et Dans ce cas, ce sont toutes des représentations différentes de la même valeur. Vous connaissez également la fonction in, qui renvoie zéro lorsque vous l'appelez sans aucun argument. Sinon, il convertira le type de données que vous fournissez, tel qu'une chaîne littérale nombre entier correspondant Lorsque vous appelez la fonction in avec un nombre à virgule flottante comme argument, elle tronque sa partie fractionnaire et renvoie uniquement la partie entière sous forme d' Enfin, la fonction in peut éventuellement prendre un autre argument, qui est la base du système utilisé pour interpréter une chaîne de chiffres, telle que 10, un, 010 dans la base donnée. Ensuite, vous allez explorer les nombres à virgule flottante, le deuxième type de nombres le plus important, et Python. Mais avant cela, j'ai un exercice sur les nombres entiers dans la leçon suivante Au cours de ces exercices, vous approfondirez vos connaissances et consoliderez votre compréhension du langage Python Non seulement vous gagnerez en confiance en vos capacités de programmation, mais vous améliorerez en confiance en vos capacités de programmation, également vos compétences en résolution de problèmes. 52. EXERCICE : définir les littéraux entiers: Cet exercice testera votre capacité à définir des entiers en Python en utilisant leur forme littérale Il serait utile de se rappeler ce que sont les littéraux entiers. Comme vous le savez déjà, un entier est un nombre entier sans décimale Par exemple, un est un entier, mais pas 1,0. Vous pouvez créer un entier en saisissant le nombre souhaité. Par exemple, ce qui suit affecte le nombre entier 25 à la variable num. Lorsque vous créez un entier comme celui-ci, la valeur 25 est appelée littéral entier car le nombre entier est littéralement saisi dans le code C'est bon. Voici les instructions pour cet exercice. Vous devez écrire un programme qui crée deux variables, numéro un et numéro deux. un et le numéro deux doivent tous deux se voir attribuer le littéral entier de 25 millions, l'un écrit avec des traits de soulignement et l'autre sans Imprimez ensuite le chiffre un et le numéro deux sur deux lignes distinctes. Je vais vous laisser y réfléchir par vous-même avant de passer à la leçon suivante où nous allons résoudre cet exercice ensemble. 53. SOLUTION : définir des littéraux entiers: J'ai déjà ouvert Idol dans le mode interactif par défaut , comme en témoigne l'invite composée de trois crochets à angle droit. Il s'agit du shell Python, que vous pouvez utiliser comme terrain de jeu pour tester rapidement des idées en exécutant des extraits de code courts avant de les enregistrer dans un fichier. Je vais ancrer cette fenêtre sur le côté gauche de l' écran afin d' avoir un espace sur la droite où je peux ouvrir autre fenêtre avec un fichier vide prêt à être modifié. J'aime avoir un écran partagé avec tout ce dont j'ai besoin sur un seul espace de travail comme celui-ci pour éviter de perdre le focus ou passer d'un programme à l' autre. Vous remarquerez également que j'utilise de nombreux raccourcis clavier pour accélérer un peu les choses. Bien que vos raccourcis soient légèrement différents des miens, vous pouvez toujours les trouver dans le menu du haut si leur contenu vous intéresse. Je vais coller les instructions de l'exercice sous forme de chaîne Python dans l'éditeur de code pour une référence rapide. Comme vous pouvez le constater, j'ai déjà transformé chaque phrase en un point distinct , que nous allons aborder un par un. Nous allons créer deux variables nommées num un et num deux. Il est habituel de définir chaque variable sur une ligne séparée en Python pour une meilleure lisibilité, même s'il est techniquement possible de les regrouper sur une seule ligne, ce qui peut parfois être justifié Pour rappel, vous pouvez définir une variable en spécifiant son nom, tel que num un, suivi de l'opérateur d' affectation, qui est le signe égal en Python, et enfin de la valeur. Selon le deuxième point, les deux variables sont censées avoir la même valeur entière de 25 millions, mais elles sont écrites sous deux formes littérales alternatives Utilisons le littéral entier avec des traits de soulignement pour la première variable et un sans les traits de soulignement pour la Vous pouvez placer des traits de soulignement n'importe où dans vos littéraux, condition qu'ils n'apparaissent ni au début ni à la fin En d'autres termes, il doit y avoir des chiffres des deux côtés du trait de soulignement, et ces traits de soulignement sont totalement facultatifs car Python les ignore Ils peuvent être utiles pour regrouper visuellement des chiffres similaires, comme dans l'exercice. On peut soutenir que la première valeur littérale est plus facile à lire que la seconde Dès le départ, il est dit d' écrire un programme qui indique que vous devez enregistrer votre code sous forme de script Python, ce que je vais faire maintenant, et nommer le fichier exercise one. Idle suppose que nous créons un fichier avec le code source Python Il ajoute donc automatiquement l'extension point pi au nom du fichier, sauf indication contraire Vous pouvez voir le chemin d'accès à votre fichier dans la barre de titre de la fenêtre. Le dernier point de cet exercice concerne l'impression deux variables afin de révéler leurs valeurs actuelles. L'impression se résume à appeler la fonction d'impression intégrée avec chaque variable comme argument Imprimez donc le numéro un et le numéro deux. Vous pouvez maintenant enregistrer le fichier et l' exécuter dans la fenêtre interactive de gauche. Sur mon ordinateur, je peux recharger le module en appuyant sur la touche F5 de mon clavier Les deux nombres qui apparaissent à l' écran sont le résultat de appels à la fonction d'impression deux appels à la fonction d'impression avec des arguments différents. Notez que malgré l'utilisation formes littérales alternatives que nous attribuons aux variables, Python les imprime de la même manière Vous pouvez le vérifier en appelant explicitement print avec num un et num deux dans le shell Python interactif sur la gauche. Vous voyez, du point de vue de Python, les deux variables contiennent exactement la même valeur numérique. L'utilisation de traits de soulignement dans des littéraux entiers ne fait de différence que pour les programmeurs comme vous qui lisent le code source UN 54. Numéros à virgule flottante: Dans cette leçon, vous allez apprendre à représenter des nombres à l'aide du type de données à virgule flottante de Python, qui convient le mieux aux nombres à partie fractionnaire Comme pour les nombres entiers, vous pouvez créer des nombres à virgule flottante en utilisant leur forme littérale La seule différence entre un littéral entier et un 0,1 flottant est qu' un littéral à virgule flottante doit avoir une virgule décimale pour séparer la partie entière de la partie fractionnaire Vous n'avez même pas besoin du zéro final pour déterminer un nombre à virgule flottante tant que vous incluez le point décimal dans votre De même, vous pouvez ignorer le zéro initial si votre nombre est une fraction telle que 0,42 Les nombres à virgule flottante en Python supportent le même regroupement de numériques que d'entiers à l'aide du caractère de soulignement Comme vous pouvez le constater, il est possible d' exprimer la même valeur, par exemple 42, en utilisant différents types de données en Python. La différence réside dans la façon dont ils le représentent dans la mémoire de votre entreprise et dans l'espace qu'ils occupent, ce qui a une incidence sur les performances et la précision des différentes opérations. En outre, vous pouvez définir des littéraux à virgule flottante en Python à l'aide de la notation scientifique , parfois connue sous le nom notation exponentielle ou de notation E. L'idée sous-jacente est de réduire les zéros répétés en un très grand ou très petit nombre et de se concentrer uniquement sur les chiffres significatifs Par exemple, vous pouvez écrire le même nombre 4,2 fois dix avec une puissance de sept. La lettre E, qui peut être en minuscule ou en majuscule, représente l'exposant L'exposant lui-même doit être un entier, mais peut-être négatif, tout comme le nombre qui le précède Une telle notation peut sembler étrange ou peu pratique, mais elle peut parfois faciliter la manipulation de grands ou de petits nombres dans les opérations arithmétiques Vous avez peut-être vu la notation E sur les calculatrices portatives, qui l'utilisent pour représenter des nombres qui ne pourraient pas tenir à l' écran autrement Si vous n'aimez pas cette notation, vous pouvez formater votre nombre à virgule flottante en utilisant un nombre fixe de décimales, par exemple huit, pour révéler tous les zéros Comme pour les nombres entiers, vous pouvez créer des nombres à virgule flottante de deux manières. Vous pouvez soit utiliser leur littéral composé de chiffres et de virgule décimale, soit appeler la fonction flottante intégrée Lorsque vous appelez la fonction sans aucun argument, elle revient à un nombre à virgule flottante égal à zéro. Notez que cela est différent d'un zéro entier. Cependant, dans la plupart des cas, la fonction accepte un seul argument, qui peut être une chaîne ou un nombre tel qu'un entier ou un autre nombre à virgule flottante. C'est pratique pour convertir d'autres types de données en nombres à virgule flottante. Vous souhaiterez également utiliser la fonction float pour définir quelques valeurs spéciales qui n'ont pas représentation littérale dans le type de données des nombres à virgule flottante Dans ces cas, vous allez transmettre une valeur de chaîne particulière en tant qu' argument à la fonction float. Deux d'entre eux sont l'infini positif et l'infini négatif. Elles sont utiles comme limites supérieures et inférieures indépendantes lorsque vous recherchez une valeur maximale ou minimale, par exemple De manière pratique, vous pouvez comparer l'infini à des nombres réguliers, ce qui donne des résultats judicieux. La troisième valeur spéciale du type de données à virgule flottante est appelée « not a number » ou « NAN ». Vous pouvez l'utiliser pour indiquer explicitement une valeur manquante. Cependant, il est plus couramment utilisé par Python lui-même pour signaler une opération mathématique non définie, telle que la division d'un infini par un autre infini Il y a une particularité intéressante à propos de l'absence de nombre, car Python suit la spécification IE 754 pour l' arithmétique à virgule flottante Aucun nombre n'est jamais égal à une valeur, pas même à lui-même. Une autre différence à propos des nombres à virgule flottante lorsque vous les comparez à des entiers est qu'ils ont une limite fixe Si vous essayez de trouver une valeur supérieure à la valeur maximale autorisée, vous obtiendrez une valeur infinie. Comment savoir quelle est la valeur maximale ? Eh bien, en pratique, cela n'a pas vraiment d'importance car la plage d' un nombre à virgule flottante est si énorme qu'elle sera largement suffisante dans la plupart des cas. Cependant, si vous voulez vraiment le savoir, vous pouvez utiliser les instructions suivantes. Dans ce cas, la valeur maximale est d'environ 1,8 fois dix pour la puissance 308. N'oubliez pas que ce chiffre est gravé dans le marbre car les différents interpréteurs Python peuvent avoir des limites différentes, en fonction de la plate-forme pour laquelle ils sont conçus En résumé, vous pouvez créer des nombres à virgule flottante en Python en utilisant leurs littéraux. Cela doit contenir un point décimal. Dans le même temps, vous n'avez pas besoin zéros de fin ou de début dans ces littéraux, seule la virgule décimale Vous pouvez spécifier des littéraux à virgule flottante à l'aide de la notation scientifique connue sous le nom de notation E, qui vous permet d'exprimer très grands ou très petits nombres à virgule flottante très grands ou très petits de manière concise La deuxième méthode de définition des nombres à virgule flottante permet à Python de tirer parti de la fonction flottante intégrée. Lorsque vous appelez la fonction sans argument, elle renvoie un nombre à virgule flottante égal à zéro. Cependant, vous allez presque toujours l'appeler avec un argument pour convertir un autre type de données en nombre à virgule flottante. Plus précisément, vous pouvez convertir une chaîne composée de chiffres décimaux et de quelques caractères spéciaux tels que le signe moins, ou vous pouvez convertir un entier ou même un autre nombre à virgule flottante Il existe également quelques valeurs spéciales à virgule flottante que vous pouvez obtenir à l' aide de la fonction float. Il s'agit de l'infini négatif, l'infini positif et non d'un nombre. Maintenant que vous connaissez les nombres entiers et les nombres à virgule flottante, il est temps d'apprendre comment les utiliser dans expressions arithmétiques en Python 55. Opérateurs arithmétiques et de comparaison: Salut, tout le monde. Voici Andreas. Dans cette conférence, nous allons en apprendre davantage sur les opérateurs arithmétiques, et nous allons donner une douzaine d'exemples pour les comprendre pleinement. Alors lancez Shell, et commençons. Les opérateurs nous aident à effectuer les opérations mathématiques habituelles sur les variables opérateurs arithmétiques en Python incluent addition, la soustraction, la multiplication, la division, la division étage, également appelée division entière, modulo, exponentiation, positif unaire et négation unaire J'ai inclus un fichier PDF avec un joli tableau avec l'opérateur, un exemple, la signification et le résultat. Vous pouvez l'ouvrir depuis vos fichiers de ressources. Voici quelques exemples de ces opérateurs utilisés. A est égal à dix, B égal à trois. Addition A plus B. Le résultat est 13. Soustraction, A moins B. Le résultat est sept, multiplication, A, multiplié par B. Le résultat est 30 Division, A, divisez par B. Entrez. Le résultat est 3,333, et cetera L'opérateur de la division est une barre oblique. Le résultat d'une division standard est toujours un flottant, même si le dividende est divisible de manière égale par le diviseur Division d'étage. A, la division d'étage B est égale à trois. L'opérateur de la division par étage est la double barre oblique. Le résultat de la division par étage est le quotien où A est divisé par B, arrondi au plus petit nombre entier suivant Lorsque le résultat de la division du sol est positif, c'est comme si la fraction était tronquée, ne laissant que la partie entière Lorsque le résultat est négatif, le résultat est arrondi à l'entier négatif inférieur ou supérieur suivant. Modulus, A, modulo B est égal à un. L'opérateur de modulo est le caractère de pourcentage. Le résultat de modulo est le reste lorsque A est divisé par B. Exponentiation A, l'exposant B est égal à 1 000. L'opérateur de l'explication est le double astérisque. Le résultat de l'exponentiation est A élevé à la puissance B. En programmation, le signe égal est appelé signe d'assignation Cela signifie que nous attribuons la valeur en fonction du côté droit du signe égal à la variable de gauche. De plus, les déclarations A égal à B et B égal à A ont des significations très différentes en programmation. Par exemple, ouvrez l'éditeur inactif et saisissez le code suivant. Exécutons le programme avec F cinq ou comme menu. Nous devons d'abord le sauvegarder. Et regardez les résultats. A est égal à 20, et B est égal à 20. Bien que A ait une valeur initiale de dix déclarée sur la première ligne, la troisième ligne A égale à B attribue la valeur de B à A, modifiant ainsi la valeur de A à 20, tandis que la valeur de B reste inchangée La priorité des opérateurs mathématiques est cruciale. L'ordre des opérations des opérateurs mathématiques Python est similaire à celui des mathématiques. L'opérateur exposant est évalué en premier. Les opérateurs de multiplication, de division, de division par étage et de module sont ensuite évalués, de gauche à droite Les opérateurs d'addition et de soustraction sont évalués en dernier, également de gauche à droite Vous pouvez utiliser des parenthèses pour remplacer la priorité habituelle si nécessaire Passons au shell interactif pour donner quelques exemples. Le résultat est 13 car la multiplication est évaluée en premier. Mettons maintenant cinq et deux entre parenthèses . Le résultat est 28. Comme c'est la parenthèse qui a le plus de précédents, examinons un autre exemple Le résultat est trois car la parenthèse a la priorité la plus élevée Cela est donc égal à trois, et cela vaut cinq, et le résultat final est trois. Ne vous inquiétez pas de la priorité des opérateurs mathématiques. C'est le travail de Python d'évaluer certaines parties de l'expression. Si vous avez des questions sur les opérateurs de base, n' hésitez pas à les poser. Je serais ravie de vous aider. Merci d'avoir regardé. 56. Opérateurs de comparaison logique (booléen) et enchaînés: Bonjour, les gars, Whatsap ? Dans cette vidéo, vous allez apprendre à utiliser les trois opérateurs logiques les plus critiques dans le cadre de comparaisons de chaînes multiples. Passons donc à la leçon. Si vous souhaitez comparer des valeurs booléennes, il existe trois opérateurs booléens et/ou et zéro Les opérateurs logiques not or et and modifient et joignent les expressions évaluées dans contexte booléen pour créer des conditions plus complexes Voici le tableau que vous pouvez également trouver sous forme de fichier PDF. Expliquons ces opérateurs un par un. L'opérateur and renvoie la valeur true si toutes les conditions sont remplies. Sinon, la valeur renvoyée sera fausse. Par exemple, l'énoncé trois supérieur à un et cinq supérieur quatre renverra vrai puisque les deux conditions sont vraies, mais trois supérieur à un et cinq inférieur quatre renverra faux puisque l'une des deux conditions est fausse. L'opérateur or renvoie la valeur true si au moins une condition est remplie. Sinon, le résultat sera faux. L'énoncé trois supérieur à un ou cinq inférieur quatre retournera vrai puisque la première condition trois supérieur à un est vraie. L'opérateur non renvoie vrai si les conditions après le t sont fausses, sinon il renverra faux. L'énoncé « pas quatre supérieur à cinq » sera confirmé, car quatre n'est pas supérieur à cinq. Ainsi, l'opérateur no évalue simplement à la valeur Bolein opposée L'une des fonctionnalités intéressantes de Python est sa capacité à enchaîner plusieurs comparaisons pour effectuer un test plus complexe. Les opérateurs de comparaison peuvent être enchaînés pour être arbitraires Par exemple, tapez cinq supérieur à trois, supérieur à un, puis entrez. C'est vrai parce que Python vérifie d'abord si cinq est supérieur à trois, puis si trois est supérieur à un. Prenons un autre exemple avec des expressions booléennes qui utilisent des opérateurs de comparaison dans le shell interactif Un de moins trois et trois de moins de cinq. Et entrez. Il s'agit d'une erreur de syntaxe. Pourquoi ? Parce que j'ai tapé et en majuscules, ce qui est faux. Modifions-le et entrons à nouveau. C'est vrai parce que les deux conditions entre parenthèses sont vraies J'espère que vous comprenez les opérateurs booléens. Suivez vos exemples à la maison pour bien les comprendre. Merci de votre attention, je vous verrai lors de la prochaine conférence. Au revoir. 57. Erreur de représentation en virgule flottante: Salut, tout le monde. Dans cette leçon, nous allons découvrir l'erreur de représentation, qui affecte la précision des nombres à virgule flottante dans pratiquement tous les langages de programmation, y compris Python. Avant d'explorer les nombres à virgule flottante, il est utile de prendre du recul et de réfléchir aux nombres à virgule fixe, qui constituent l'un des moyens les plus simples de représenter des nombres réels sur ordinateur. L'idée qui sous-tend les nombres à virgule fixe est d'attribuer un nombre spécifique de chiffres à la partie entière et à la partie fractionnaire Par conséquent, le placement de la virgule décimale ainsi que le nombre total de chiffres sont connus à l'avance et ne changent jamais Le principal problème d'une telle représentation est son inefficacité en termes de stockage, qui limite la plage de valeurs que vous pouvez utiliser Remarquez combien d'espace reste vide en étant rempli de zéros dans ces exemples Les nombres à virgule flottante, quant à eux, peuvent s'adapter à la taille du nombre qu'ils représentent. Dans la représentation en virgule flottante, la virgule décimale peut flotter vers la gauche ou vers la droite pour s'adapter à différentes tailles de nombres. Ainsi, vous pouvez utiliser l'espace disponible manière plus efficace sans gaspiller de mémoire. très grands nombres, tels que la vitesse de la lumière, n'ont généralement pas besoin de beaucoup de précision. Il est donc probablement normal d' allouer plus de mémoire aux chiffres significatifs tout en échangeant la partie fractionnaire À l'inverse, les nombres plus petits, tels que la taille d'un atome, bénéficieront de l' augmentation du nombre de chiffres fractionnaires en faisant flotter la virgule décimale vers la gauche Tant que vous êtes d'accord avec l'échange de précision contre la magnitude d'un nombre et inversement, vous serez en mesure de stocker une énorme gamme de nombres sur une quantité de mémoire relativement petite. Plus le nombre à virgule flottante est élevé, sa précision est faible. Dans le même temps, les petits nombres ont tendance à avoir une plus grande précision. Vous savez maintenant que les nombres à virgule flottante doivent leur nom à la façon dont ils sont représentés dans la mémoire d'un ordinateur. Il s'agit essentiellement d'une notation scientifique dans le système binaire avec quelques fioritures supplémentaires, ce qui les rend exponentiellement efficaces en termes d'utilisation de la mémoire Malheureusement, le prix d' une telle représentation est la perte de la capacité d'exprimer exactement certains nombres, ce qui peut mener à des résultats très surprenants, comme ceux que vous pouvez voir sur la diapositive actuelle. Regardez quelques exemples dans IDL. Lorsque vous tapez 0.1 plus 0.2 en Python, vous obtenez un résultat assez proche de ce à quoi vous vous attendiez, mais pas tout à fait correct. Ce résultat étrange s'explique le fait que les deux nombres que vous essayez d' additionner n'ont pas de représentation exacte sur le type de données à virgule flottante, qui n'est qu'une approximation des nombres réels. Par défaut, Python n' affiche que les chiffres les plus significatifs d'un nombre. Pour révéler les autres, vous pouvez formater votre numéro en demandant, exemple, 100 chiffres décimaux Cependant, le type de données de flux se limite à 55 chiffres environ. Si vous demandez plus de chiffres, Python ajoutera des zéros sur la droite car il n'y a pas assez d'informations Maintenant, d'où viennent tous ces chiffres apparemment aléatoires ? Sans trop entrer dans les détails techniques, vous devez vous rappeler que les ordinateurs conservent tous les nombres du système binaire en utilisant uniquement des uns et des zéros plutôt que le système décimal à dix chiffres de 0 Lorsque vous convertissez un dixième ou deux dixièmes système binaire, vous obtenez une chaîne binaire récurrente qui se répète C'est un problème familier auquel vous serez également confronté dans le système décimal Lorsque vous essayez de représenter un tiers, par exemple, le résultat est 0,3 récurrent car les ordinateurs ne disposent pas d'une quantité infinie de mémoire À un moment donné, il leur suffit de recadrer la chaîne binaire et d'arrondir les résultats à la valeur représentable la plus proche D'autre part, tant que vous restez dans le domaine du système binaire, vous serez capable de représenter un nombre exactement en utilisant un type de données à virgule flottante. Par exemple, un quart est une puissance de deux, il a donc une expansion binaire finie Pareil pour la moitié. Lorsque vous les additionnez, vous obtiendrez un résultat exact sans erreur d'arrondissement Pour rappel, un nombre à virgule flottante n'est généralement qu'une approximation du nombre réel, peu comme la compression avec perte dans les images JPEG, par exemple Ne vous inquiétez pas si cela vous fait tourner la tête. Dans la plupart des applications d'ingénierie, l'erreur de représentation en virgule flottante reste dans les limites acceptables et les résultats sont satisfaisants Cependant, dans les calculs scientifiques ou financiers, l'erreur d'arrondissement devient perceptible Dans ces cas, vous devriez examiner d'autres types numériques, comme le type décimal mentionné plus haut dans ce cours OK. Cela étant dit, il est temps d'examiner de plus près les fonctions mathématiques et les méthodes numériques en Python. 58. Fonctions mathématiques et méthodes de numérotation: Dans cette leçon, vous allez découvrir les fonctions les plus courantes qui vous permettent de travailler avec des nombres en Python. Vous découvrirez également certains comportements utiles présentés par les nombres entiers et les nombres à virgule flottante. Sans plus tarder, plongeons-nous dans le vif du sujet. La première fonction que vous pouvez rencontrer lorsque analysez des nombres en Python est la fonction ronde Par défaut, il prend un nombre à virgule flottante et renvoie le nombre entier le plus proche. Par exemple, passer 2,3 comme argument arrondira le nombre vers le bas et renverra deux. D'un autre côté, un nombre tel que 2,7 sera arrondi au chiffre supérieur. Les choses deviennent encore plus inattendues lorsque votre chiffre se termine par cinq. C'est ce qu'on appelle une égalité parce que la distance par rapport au nombre entier le plus proche est exactement la même, que vous arrondissiez le chiffre supérieur ou inférieur. Python suit une stratégie selon laquelle les liens de ce type sont résolus en arrondissant au nombre pair le plus proche Dans ce cas, ce chiffre est deux. Cependant, dans le cas de 3,5, le nombre pair le plus proche est quatre. Il s'agit d'un choix conçu pour minimiser l'impact de l' arrondissement sur les opérations impliquant de nombreux nombres à virgule flottante Un autre fait intéressant à propos de la fonction ronde en Python est que vous pouvez éventuellement lui passer un deuxième argument, en spécifiant le nombre de décimales que vous souhaitez arrondir à deux Par exemple, si vous avez une approximation de Pi, vous pouvez l'arrondir de deux ou trois décimales Notez que vous obtenez un nombre à virgule flottante cette fois, car cinq était le dernier chiffre de cet exemple. Cela signifie qu'il y a une cravate. Au lieu d'arrondir à l'entier pair le plus proche, Python examinera l'avant-dernier chiffre pour décider de la direction d'arrondissement Dans ce cas, deux est le nombre pair le plus proche. Cependant, cela ne fonctionne pas toujours correctement. Lorsque vous essayez d'arrondir un nombre tel que 2,675 à deux décimales, vous vous attendez à obtenir 2,68 car huit est le nombre pair le plus Mais lorsque vous exécutez réellement ce code, vous remarquerez que Python arrondit vers le bas plutôt que vers le haut. Il ne s'agit pas d'un bogue dans la fonction ronde elle-même, mais plutôt du résultat de cette erreur de représentation en virgule flottante que vous avez découverte dans la leçon précédente. OK. La prochaine fonction liée aux nombres en Python que vous voudrez peut-être utiliser s'appelle abs, qui est l'abréviation de valeur absolue. Il prend un chiffre et renvoie sa taille sans le signe. Par exemple, la valeur absolue de 42 est 42. Dans le même temps, la valeur absolue de -42 est également 42. Vous pouvez appeler la fonction des applications sur nombres entiers ainsi que sur des nombres à virgule flottante Quoi qu'il en soit, vous obtiendrez toujours la valeur positive d'un nombre. Cependant, lorsque vous appelez la fonction ABS sur un nombre complexe, vous obtenez ce que l'on appelle l'amplitude d'un nombre complexe, qui est calculée à l'aide de la formule correspondante. Vous allez examiner de plus près les nombres complexes dans l'une des prochaines leçons. Voici les principaux cas d'utilisation de la fonction ABS en Python. Enfin, la troisième et dernière fonction que vous allez découvrir dans cette leçon est la fonction d'alimentation. Il fournit un moyen plus explicite d' augmenter un nombre à la puissance donnée par rapport au double astérisque ou à l' opérateur exponentiel que vous avez appris auparavant La fonction d'alimentation prend deux arguments. Le premier est la base ou le nombre à élever à une puissance. Et le deuxième argument est l'exposant ou la puissance à laquelle le nombre doit être augmenté Comme pour l'opérateur exponentiel, vous pouvez utiliser des exposants et des bases négatifs ou fractionnaires Bien que les deux méthodes de calcul de la puissance d'un nombre en Python fonctionnent essentiellement de la même manière, la fonction power accepte un troisième argument facultatif tant que les trois arguments sont exprimés en nombres entiers Il s'agit d'une notation abrégée pour l'opérateur modulo sur le résultat d'une telle puissance Vous pouvez l'écrire de manière plus compacte, en passant la troisième valeur comme argument facultatif Avant de clore l'exaltation, il convient de mentionner que les nombres en Python exposent quelques méthodes utiles, tout comme les chaînes, dont vous vous souviendrez peut-être dans une section précédente Par exemple, vous pouvez vérifier si un nombre à virgule flottante contient une valeur entière sans partie fractionnaire en l'appelant méthode is integer Notez cependant que pour appeler une méthode en Python, vous devez utiliser l'opérateur point, qui est également la virgule décimale dans les littéraux à virgule flottante Pour éviter cette ambiguïté, vous pouvez placer votre littéral numérique entre parenthèses N'oubliez pas qu'un littéral numérique sans point décimal représente un Si vous souhaitez être plus explicite, vous pouvez également attribuer votre numéro à une variable. Et appelez la méthode sur la variable plutôt que sur le littéral Dans ce cas, 3,14 n' est pas un entier, mais oh à trois points l'est Une autre méthode utile disponible sur les flottants est le ratio entier Ce qui renvoie une paire d'entiers dont le ratio est exactement égal au flottant d'origine Dans ce cas, les chiffres sont assez élevés, mais vous pouvez essayer quelque chose comme les trois quarts pour obtenir un ratio composé de plus petits nombres. Les nombres entiers ont également quelques méthodes utiles. Lequel d'entre eux peut vous indiquer nombre de bits dont vous avez besoin pour représenter un nombre dans le système binaire. Par exemple, une chaîne composée de chiffres binaires 10, un, zéro, 10 représente le nombre décimal 42 Vous avez donc besoin d'au moins six bits pour exprimer fidèlement le même nombre dans le système binaire Vous pouvez le confirmer en appelant la méthode de la longueur en bits sur le numéro 42. Il existe également une méthode de comptage de bits portant le même nom, qui vous indiquera combien de ces bits sont réellement activés. La chaîne de bits d'origine comporte trois uns et 30, la valeur de retour est donc trois. Pour récapituler ce que vous venez d'apprendre, Python est livré avec quelques fonctions mathématiques intégrées pour travailler avec ces nombres. Elle possède la fonction ronde, qui arrondit un nombre à virgule flottante soit à l'entier entier le plus proche , soit à la décimale donnée, que vous ne pouvez pas spécifier comme deuxième argument de la fonction Les égalités sont résolues en arrondissant au nombre pair le plus proche, mais les erreurs de représentation en virgule flottante interfèrent parfois avec le sens d' arrondissement attendu La fonction AB renvoie la valeur absolue d' un nombre ou l'amplitude d'un nombre complexe. La fonction de puissance effectue en grande partie la même opération mathématique que l' opérateur d'exponentiation en Python, mais elle fournit également une notation abrégée pour calculer le modulo de la Vous apprendrez également que les nombres à virgule flottante en Python exposent quelques méthodes, telles que la méthode I integer, qui vérifie si la valeur est un nombre entier ou non. Le ratio as integer, quant à lui, renvoie une paire d'entiers dont le ratio est égal au nombre à virgule flottante Les nombres entiers ont également leurs méthodes. Par exemple, vous pouvez indiquer nombre de bits dont vous avez besoin pour les représenter dans le système binaire ou nombre de bits éclairés. Ensuite, vous allez apprendre à formater des nombres sous forme chaînes lorsque vous souhaitez les afficher avec d'autres textes à l'utilisateur. 59. Nombres formalisés en chaînes: Dans cette leçon, vous allez apprendre à imprimer des nombres avec style. Souvent, vous voudrez combiner vos chiffres avec du texte supplémentaire avant de le présenter à l'utilisateur. Par exemple, vous souhaiterez peut-être insérer le prix d'un produit dans un espace réservé embelli dans un Traditionnellement, il existe de nombreuses façons de formater les nombres en Python. Par exemple, vous pouvez appeler la fonction de format, que vous avez déjà vue dans ce cours, pour révéler les chiffres décimaux d'un nombre à virgule flottante Cependant, la plupart des programmeurs utilisent aujourd'hui les littéraux de chaîne formatés ou les chaînes F de Python, qui semblent plus simples et offrent encore Vous pouvez créer une chaîne formatée en préfixant votre chaîne littérale normale par une lettre minuscule ou majuscule F. Dans l'ensemble, cela fonctionnera comme une chaîne normale, cela fonctionnera comme une chaîne normale vous pouvez donc Par exemple, ce produit coûte 3,90$. Cependant, contrairement à une chaîne normale, une chaîne F vous permet également de spécifier un ou plusieurs espaces réservés à des valeurs à remplir ultérieurement Supposons que vous souhaitiez limiter votre message à de nombreux produits proposés à des prix différents. Vous pouvez déclarer une variable auxiliaire avec prix d'un produit, puis remplacer la valeur concrète de votre chaîne F par un espace réservé en utilisant les crochets et en insérant le nom Cela a bien fonctionné. Notez, cependant, que le dernier zéro du prix du produit a été réduit à néant Heureusement, ces accolades prennent en charge un langage de formatage simple que vous pouvez utiliser pour modifier l'apparence de valeur dans la chaîne formatée finale Par exemple, pour afficher le prix en utilisant exactement deux décimales, vous pouvez ajouter un spécificateur de format facultatif dans votre Les deux points séparent une expression à évaluer, telle qu'une variable, du spécificateur de format Dans ce cas, le spécificateur est 0,2 F, ce qui arrondit les nombres à deux décimales près La lettre F indique à Python d'afficher le prix sous forme de nombre fixe. Si un prix augmente, vous pouvez ensuite insérer des virgules pour regrouper la partie entière du plus grand nombre par milliers Une autre fonctionnalité utile des chaînes formatées en Python est la possibilité de formater les nombres sous forme de pourcentages Par exemple, si vous avez un nombre fractionnaire tel que 0,91 23, Python peut l'afficher automatiquement sous forme pourcentage arrondi au nombre de décimales demandé Y Le mini-langage de mise en forme est puissant et complet. Bien que vous n'ayez vu que les éléments de base jusqu'à présent, voici quelques exemples supplémentaires. Vous pouvez arrêter la vidéo maintenant et y jeter un œil ou consulter les diapositives PDF qui l'accompagnent plus tard. C'est bon. Dans la leçon suivante, vous allez revoir les nombres complexes en Python Mais avant cela, faisons un exercice pour bien saisir la leçon. 60. EXERCICE : afficher un pourcentage: Vous avez presque atteint la ligne d'arrivée lorsqu' il s'agit de formater des nombres en Python. Dans ce dernier exercice, vous allez formater une fraction décimale sous forme pourcentage sans décimales . Tu as compris. J'ai foi en toi. 61. SOLUTION : afficher un pourcentage: Lorsque vous divisez deux par dix, vous obtenez un nombre à virgule flottante avec un chiffre décimal Vous pouvez le formater sous forme de pourcentage en utilisant le pourcentage sinusoïdal comme spécification de format. Si vous avez suivi, vous pouvez deviner comment demander zéro décimale C'est exact. Vous ajoutez a.in zéro au pourcentage sinusoïdal Vous pouvez utiliser la même syntaxe dans un littéral de chaîne F pour une syntaxe plus compacte OK. Eh bien, cet exercice n'était pas trop difficile, il est temps de passer à une autre section de ce cours dans laquelle vous allez interagir avec l' utilisateur. Merci d'avoir regardé. 62. Nombres complexes: D'accord. Dans cette leçon, vous allez passer en revue certaines des notions de base relatives à l' nombres complexes en Python. Alors plongeons-nous dans le vif du sujet. Les nombres complexes étant rarement utilisés en dehors des domaines du calcul scientifique et de l'infographie, ils n'ont été mentionnés que brièvement dans cette section. Dans le même temps, n'hésitez pas à sauter cette leçon si vous n'avez aucun intérêt à travailler avec des nombres complexes. Python est l'un des rares langages de programmation qui fournit un support natif pour les nombres complexes. Vous pouvez considérer un nombre complexe comme une paire composée de la partie réelle et de la partie imaginaire. Il existe deux manières de créer des nombres complexes en Python. Vous pouvez soit appeler la fonction complexe intégrée en passant ces deux parties en arguments, soit utiliser une syntaxe spéciale pour définir un littéral numérique complexe Remarquez la lettre J à côté du deuxième chiffre, qui indique ce que l' on appelle l'unité imaginaire. Les mathématiciens utilisent généralement la lettre I pour désigner une unité imaginaire, mais Python suit une notation utilisée par les ingénieurs pour éviter de la confondre une minuscule L ou un chiffre qui pourrait apparaître dans Lorsque vous supprimez l'unité imaginaire, littéral de votre nombre complexe devient une simple expression arithmétique régulière, qui ajoute deux Vous pouvez attribuer l' unité imaginaire à l'un de ces deux nombres dans un nombre complexe littéral pour indiquer qu'il s'agit de la partie imaginaire Lorsque vous n'avez que des nombres imaginaires dans votre littéral, Python les ajoute et crée un nombre complexe sans la partie réelle Mais c'est toujours un chiffre complexe. Vous attribuez généralement un nombre complexe à une variable telle que Z. L' utilisation de la lettre Z pour un nombre complexe est une convention historique qui remonte à Carl Friedrich Tout comme les entiers et les nombres à virgule flottante, les nombres complexes ont quelques attributs et méthodes intéressants en Python Par exemple, vous pouvez obtenir les composantes réelles et imaginaires d' un nombre complexe à l'aide de ses attributs réels et imaginaires. Notez que les parties réelles et imaginaires sont stockées sous forme nombres à virgule flottante, même lorsque vous définissez un nombre complexe en termes d'entiers Vous pouvez également calculer le conjugué d'un nombre complexe en appelant sa méthode conjuguée. Un conjugué renverse le signe de l'unité imaginaire. En fait, tous les nombres en Python, y compris les nombres entiers et les nombres à virgule flottante, ont les attributs réel et image ainsi que la méthode conjuguée. Cela n'est pas surprenant d' un point de vue mathématique car les nombres complexes sont un sur-ensemble de nombres réels. Pour les nombres ins et flottants, l'attribut réel et la méthode conjuguée renverront le nombre lui-même, tandis que l'attribut image sera toujours égal Les nombres complexes prennent en charge tous les opérateurs arithmétiques que vous avez appris, à l'exception la division entière et de l'opérateur modulo. Sinon, vous pouvez ajouter deux nombres complexes. Tu peux les soustraire. Multiplier. Et divisez-les ou portez-en un au pouvoir. Mais vous ne pouvez pas utiliser la division au sol. Vous ne pouvez pas non plus calculer le reste d'une division, qui n'est définie que pour les nombres entiers. En résumé, vous pouvez définir un nombre complexe à l'aide de la fonction complexe intégrée ou du nombre complexe littéral avec la lettre J collée à la partie imaginaire Vous pouvez également accéder à vos nombres complexes, attributs et à vos méthodes pour obtenir la partie réelle, la partie imaginaire, et pour calculer le conjugué. 63. L'opérateur restant ( % Modulo): En Python, le symbole du pourcentage est l'opérateur restant. C'est ce que l'on appelle l'opérateur du module. L'opérateur de reste effectue la division, mais au lieu de renvoyer le quotient, il renvoie le reste L'instruction suivante en attribue deux aux restes. Tapons le résultat restant égal à 17. Tapez le symbole parfait, trois. Imprimons maintenant la variable restante. Si j'exécute le code, le résultat sera deux. Cette déclaration attribue deux aux restes, car 17/3 correspond à cinq avec un reste Le reste de l'opérateur est utile dans certaines situations. Il est couramment utilisé dans calculs qui convertissent des temps ou des distances, détectent des nombres pairs ou impairs et effectuent d'autres opérations spécialisées. Pour mieux comprendre l'opérateur restant, nous allons créer un programme qui obtient le nombre de secondes de l'utilisateur et le convertit en nombre de secondes en heures, minutes et secondes. Par exemple, il convertirait 11 730 secondes en 3 heures, 15 minutes et 30 secondes. Et voici le résultat du programme que nous allons créer. Il est maintenant temps de mettre la vidéo en pause et d'essayer. D'accord, comment vous êtes-vous entendu ? J'espère vraiment que tu as bien essayé. Faisons l'exercice ensemble et écrivons le code. Tout d'abord, je vais écrire quelques commentaires. Les commentaires jouent un rôle important dans la programmation. Ils vous permettent, en tant que programmeur, d' expliquer chaque partie de ce que fait votre code. Dans la ligne suivante, je vais créer une variable appelée Total des secondes. Je souhaite obtenir un certain nombre de secondes de la part de l'utilisateur. Convertit la valeur en valeur flottante. Ensuite, il l'affecte à la variable du nombre total de secondes. Je vais laisser une ligne vide, et à la quatrième ligne, j'ajouterai un commentaire. Obtenez le nombre d'heures. Entrez. J'ai un total de secondes de la part de l'utilisateur, et je veux les convertir en heures. Nommons les heures variables. Il y a 3 600 secondes dans une heure. Cette instruction divise donc le total des secondes par 3 600. Notez que nous utilisons l'opérateur de division en nombres entiers. C'est parce que nous voulons le nombre d'heures sans fraction. C'est le moment idéal pour connaître le nombre de minutes restantes. Je vais utiliser les minutes variables. Tout d'abord, je vais utiliser l'opérateur de division en nombres entiers pour diviser le total des secondes par 60. Cela nous donne le nombre total de minutes. Ensuite, j'utiliserai l'opérateur de module pour diviser le nombre total de minutes par 60 et obtenir le reste de la division Le résultat est le nombre de minutes restantes. L'étape suivante consiste à obtenir le nombre de secondes restantes. Nommons la variable secondes. Il y a 60 secondes dans une minute. Dans cette déclaration, je vais donc utiliser l'opérateur de module pour diviser le total des secondes par 60 et obtenir le reste de la division Le résultat est le nombre de secondes restantes. La dernière étape consiste à afficher les résultats à l'aide d'une instruction d'impression. R : Tout d' abord, je vais imprimer les heures. Puis les minutes. Enfin, je vais imprimer le second. Il est maintenant temps d'exécuter le code. Python attend que l'utilisateur insère les secondes qu'il souhaite convertir. Je vais taper 11 730 secondes. Il en va de même pour la sortie. Ainsi, il est plus facile de comparer les réponses. Cela fonctionne très bien. J'espère que vous avez compris l'importance du reste de l'opérateur. Si vous avez des questions, hésitez pas à me le faire savoir. Merci de m'avoir regardée. 64. Lire les numéros avec la fonction d'entrée: La fonction d'entrée renvoie toujours l' entrée de l'utilisateur sous forme de chaîne, même si l'utilisateur saisit des données numériques Supposons, par exemple, que vous appeliez la fonction d'entrée. Tapez le chiffre 72 et appuyez sur la touche Entrée. La valeur renvoyée par une fonction d'entrée est la chaîne 72. Cela peut poser problème si vous souhaitez utiliser la valeur dans une opération mathématique. Les opérations mathématiques ne peuvent être effectuées que sur des valeurs numériques, et non sur des chaînes Heureusement, Python a intégré des fonctions que vous pouvez utiliser pour convertir une chaîne en un type numérique Ces deux fonctions sont INT et float. Supposons, par exemple, que vous rédigez un programme de paie et que vous souhaitiez connaître le nombre d' heures travaillées par l'utilisateur. Regardez le code suivant. La première instruction obtient le nombre d'heures de l'utilisateur et affecte cette valeur sous chaîne à la variable de valeur de chaîne La deuxième instruction appelle la fonction INT en transmettant une valeur de chaîne comme argument. La valeur référencée par la valeur de chaîne est convertie en INT et affectée à la variable heures. Cet exemple illustre le fonctionnement de la fonction INT, mais il est inefficace car il crée deux variables Un pour contenir la chaîne renvoyée par la fonction d'entrée et un autre pour contenir le nombre entier renvoyé par la fonction INT. Le code suivant montre une meilleure approche. Cette instruction effectue tout le travail effectué par les deux instructions présentées précédemment, et elle ne crée qu'une seule variable. Cette instruction utilise des appels de fonctions imbriqués. La valeur renvoyée pour la fonction de sortie est transmise en tant qu'argument à la fonction INT. C'est ainsi que cela fonctionne. Il appelle la fonction de saisie pour obtenir une valeur saisie au clavier. La valeur renvoyée par la fonction d'entrée, une chaîne, est transmise en tant qu' argument à la fonction INT. La valeur INT renvoyée par la fonction INT est affectée à la variable heures. Une fois cette instruction exécutée, la variable heures est affectée à la valeur saisie au clavier convertie en INT Regardons un autre exemple. Supposons que vous souhaitiez obtenir le taux de rémunération horaire de l' utilisateur. L'instruction suivante invite les utilisateurs à saisir cette valeur à l'aide du clavier, la convertir en valeur flottante et à l'affecter à la variable du taux de rémunération I Voici comment cela fonctionne. Il appelle la fonction de saisie pour obtenir une valeur saisie au clavier. La valeur renvoyée par la fonction d'entrée, une chaîne, est transmise en tant qu' argument à la fonction flottante. La valeur flottante renvoyée par la fonction flottante est affectée à la variable de taux de rémunération. Une fois cette instruction exécutée, la variable du taux de rémunération est affectée à la valeur saisie au clavier convertie en virgule flottante Pour mieux comprendre tout cela, faisons un exercice. Supposons que vous souhaitiez écrire un programme qui demande à l'utilisateur de saisir son nom, âge et son revenu, puis affiche la valeur saisie par l'utilisateur. Voici le résultat du programme. Mettez la vidéo en pause maintenant et terminez ce défi. Très bien, comment vous êtes-vous entendu ? J'espère vraiment que tu as bien essayé. Faisons l'exercice ensemble et écrivons le code. Ajoutons d'abord la ligne de commentaire. La deuxième ligne invite l'utilisateur à saisir son nom. La valeur saisie est affectée sous forme de chaîne à la variable name. La troisième ligne invite l'utilisateur à saisir son âge. La valeur saisie est convertie en INT et affectée à la variable d'âge. La quatrième ligne invite l'utilisateur à saisir ses revenus. La valeur saisie est convertie en flottante et affectée à la variable de revenu. Laissons une ligne vide et ajoutons un commentaire à la sixième ligne. À la septième ligne, nous affichons le message. Voici les données que vous saisissez. La huitième ligne affiche le nom saisi par l'utilisateur. La neuvième ligne indique l'âge saisi par l'utilisateur. dixième ligne affiche le revenu saisi par l'utilisateur. Ouais. Les fonctions INT et float ne fonctionnent que si l'élément en cours de conversion contient une valeur numérique valide Si l'argument ne peut pas être converti dans le type de données spécifique, une erreur appelée exception se produit. Une exception est une erreur inattendue qui se produit pendant l' exécution du programme et qui entraîne son arrêt si l'erreur n'est pas traitée correctement. Par exemple, lancez le programme et entrez XYZ comme âge. Voici l'erreur connue sous le nom d'exception. J'espère que vous avez compris comment lire les nombres grâce à la fonction de saisie. Merci d'avoir regardé. 65. Numéros et mathématiques (RÉSUMÉ): Bon retour, tout le monde. Dans cette section, vous avez tout appris sur l'utilisation des nombres en Python. Vous avez vu qu'il existe deux types de nombres de base, les entiers et les nombres à virgule flottante, et que Python a également intégré le support des nombres complexes. Tout d'abord, vous avez vu comment faire de l'arithmétique de base avec des nombres en utilisant les opérateurs de multiplication plus moins, de division et de division par étage Vous apprendrez à écrire des expressions arithmétiques et découvrirez les meilleures pratiques de la PEP 8 pour formatage d' expressions arithmétiques dans Vous découvrirez ensuite les nombres à virgule flottante et le fait qu'ils ne sont pas toujours précis à 100 %. Cette limitation n'a rien à voir avec Python. C'est un fait de l'informatique moderne lié à la façon dont les nombres à virgule flottante sont stockés dans la mémoire d'un ordinateur. Ensuite, vous avez vu comment arrondir nombres à une décimale donnée arrondissant et vous avez appris que les ronds sont égaux à des nombres pairs, ce qui est différent de la façon dont la plupart des gens apprennent à arrondir les nombres à l'école Vous avez également découvert de nombreuses manières de formater les nombres pour les afficher. Enfin, vous avez découvert le support intégré de Python pour les nombres complexes, et nous avons fait une série d'exercices pour bien comprendre les sujets. Je tiens à vous remercier d'avoir regardé, et je vous verrai dans le prochain. 66. DÉFI : déterminer un pourcentage: Si vous écrivez un programme qui fonctionne avec le pourcentage, vous devez vous assurer que le pourcentage décimal est au bon endroit avant faire des calculs avec le pourcentage Cela est particulièrement vrai lorsque l'utilisateur saisit un pourcentage en entrée. La plupart des utilisateurs saisissent le chiffre 50 pour 50 %, 20 pour 20 %, etc. Avant d'effectuer des calculs avec un tel pourcentage, vous devez le définir par 100 pour déplacer sa décimale de 0,2 place vers la gauche Passons en revue le processus d'écriture d'un programme qui calcule un pourcentage Supposons qu'un commerce de détail envisage d'organiser une vente dans tout le magasin, laquelle tous les prix des articles seront réduits de 20 %. Il faut demander à écrire un programme pour calculer le prix de vente d'un article une fois que l'article a été soustrait Voici l'algorithme. Premièrement, obtenez le prix initial de l'article. Deuxièmement, calculez 20 % du prix initial. Il s'agit du montant de la réduction. Troisièmement, soustrayez la réduction du prix initial. Il s'agit du prix de vente. Quatrièmement, affichez le prix de vente. N'oubliez pas que la sortie doit correspondre exactement à l'exemple de sortie. Et lorsque vous cliquez sur Exécuter, c' est le résultat que vous recherchez. Il est maintenant temps de mettre la vidéo en pause et d'essayer. Très bien, comment vous êtes-vous entendu ? J'espère vraiment que tu as bien essayé. Faisons l'exercice ensemble et écrivons le code. À la première étape, nous obtenons le prix initial de l'article. Nous demanderons à l'utilisateur de saisir ses données sur le clavier. Dans notre programme, nous utiliserons l' instruction suivante pour ce faire. Notez que la valeur saisie par l'utilisateur sera stockée dans une variable nommée prix d'origine. A à la deuxième étape, nous calculons le montant de la réduction. Pour ce faire, nous multiplions le prix initial par 20 %. L'instruction suivante effectue ce calcul et affecte le résultat à la variable d' escompte À la troisième étape, nous soustrayons la réduction du prix initial L'instruction suivante effectue ce calcul et enregistre le résultat dans une variable de prix de vente. Enfin, à la quatrième étape, nous utiliserons la déclaration suivante pour afficher le prix de vente. Lancez le programme et fixons un prix de vente initial aléatoire. Et voici le prix de vente réduit de 20 %. Génial. J'espère que vous avez réussi à créer le programme vous-même. Si vous avez des questions, me le faire savoir. Au revoir 67. DÉFI : mesurer une moyenne: La détermination de la moyenne des groupes de valeurs est un calcul simple. Additionnez toutes les valeurs, puis divisez la somme par le nombre de valeurs. Bien qu'il s'agisse d'un calcul simple, il est facile de se tromper en écrivant un programme qui calcule une moyenne Par exemple, supposons que les variables A, B et C contiennent chacune une valeur et nous voulons calculer la moyenne de ces valeurs. Si nous faisons preuve de négligence, nous pouvons rédiger une déclaration telle que la suivante pour effectuer le calcul Vous voyez l'erreur dans cette déclaration ? Lors de son exécution, la division aura lieu en premier. La valeur en C sera divisée par trois. Le résultat sera ensuite ajouté à A plus B. Ce n'est pas la bonne façon de calculer une moyenne. Pour corriger cette erreur, nous devons placer A plus B plus C entre parenthèses , comme indiqué ici Passons en revue le processus d' écriture d'un programme qui calcule une moyenne Supposons que vous ayez passé trois tests dans votre cours d'informatique et que vous souhaitiez un programme qui affiche la moyenne des résultats des tests. Voici l'algorithme. Un, obtenez le premier score au test, deux, obtenez le deuxième score au test, trois, obtenez le troisième score au test. Quatrièmement, calculez la moyenne en additionnant les trois résultats du test et en divisant la somme par trois. Afficher la moyenne. N'oubliez pas que la sortie doit correspondre exactement à la sortie de l'écran. Et lorsque vous appuierez sur Exécuter, ce sera le résultat que vous recherchez. Il est maintenant temps de mettre la vidéo en pause et d'essayer. Bien, comment vous êtes-vous entendu ? J'espère vraiment que tu as bien essayé. Faisons l'exercice ensemble et écrivons le code. Ajoutons d'abord quelques commentaires. Au cours des étapes 1, 2 et 3, nous demanderons à l'utilisateur de saisir trois résultats de test. Nous stockerons les résultats de ces tests dans les variables Test one. Testez deux. Dans le troisième test. À la quatrième étape, nous calculerons la moyenne des résultats des trois tests. Nous utiliserions l' instruction suivante pour effectuer le calcul et enregistrer le résultat dans la variable moyenne. Enfin, à la cinquième étape, nous affichons la moyenne. Lancez le programme. Entrez le premier résultat du test, par exemple 90. Entrez le résultat du deuxième test, par exemple 80, entrez le troisième score du test, par exemple 100. La note moyenne est de 90. J'espère que vous avez compris comment fonctionne la moyenne en Python. Merci de votre attention, je vous verrai dans la prochaine leçon. 68. DÉFI : transformer une formule mathématique en une instruction de programmation: Supposons que vous souhaitiez déposer une certaine somme d'argent sur un compte d'épargne et le laisser tranquille pour percevoir des intérêts pour les dix prochaines années. Au bout de dix ans, vous aimeriez avoir 10 000$ sur votre compte Combien devez-vous déposer aujourd'hui pour que cela se produise ? Vous pouvez utiliser la formule suivante pour le savoir. Les termes de la formule sont les suivants. P est le présent futur ou le montant que vous devrez déposer aujourd'hui. F est la valeur future de ce que vous voulez voir apparaître sur le compte. Dans ce cas, F est de 10 000$. R est le taux d'intérêt annuel. Et c'est le nombre d' années que vous devez prévoir pour que l'argent reste sur le compte. Il serait pratique d'écrire un programme informatique pour effectuer ce calcul, car nous pourrons alors expérimenter différentes valeurs pour les variables. Voici un algorithme que nous pouvons utiliser. Premièrement, obtenez la valeur future souhaitée, deuxièmement , obtenez le taux d'intérêt annuel. Troisièmement, obtenez le nombre d'années pendant lesquelles l'argent restera sur le compte. Quatrièmement, calculez le montant qui devra être déposé. Cinq, affichez le résultat du calcul à l'étape quatre. Il est maintenant temps de mettre la vidéo en pause et d'essayer. Bien, comment vous êtes-vous entendu ? J'espère vraiment que tu as bien essayé. Faisons l'exercice ensemble et écrivons le code. Tout d'abord, je vais écrire quelques commentaires. Dans la ligne suivante, je vais créer une variable appelée valeur future. Je souhaite obtenir la valeur future souhaitée auprès de l'utilisateur. Convertit la valeur en valeur flottante, puis l'affecte à la future variable de valeur Je laisse une ligne vide et à la quatrième ligne, j'ajouterai un commentaire. Obtenez le taux d'intérêt annuel, entrez. Dans la ligne suivante, je vais créer une variable appelée taux. Je souhaite obtenir le taux d'intérêt annuel de l'utilisateur. Convertit la valeur en valeur flottante, puis l'affecte à la variable de taux Je vais laisser une ligne vide. Ajoutons maintenant un commentaire. Ensuite, je vais créer une variable appelée années. Ensuite, je vais créer une variable appelée années. Convertissez-le en entier et demandez à l'utilisateur le nombre d' années pendant lesquelles l'argent augmentera. Maintenant, il a commencé à convertir la formule en ligne de code. Calcul du montant nécessaire pour déposer. Ainsi, la valeur actuelle est égale à la valeur future. Divisé par 100 % plus le taux d'intérêt annuel. Tout cela au fil des années. La dernière étape dont nous avons besoin est la valeur de la variable de valeur actuelle. Il est maintenant temps d'exécuter le code. Python attend que l'utilisateur saisisse la valeur future souhaitée. Tapons 10 000. Ensuite, je vais saisir le taux d'intérêt annuel. Tapons 0,05, soit 5 %. Enfin, je vais entrer le nombre d'années, tapez dix ans. Et voici le résultat. Vous devrez déposer le montant de 6 139$ et de nombreux nombres décimaux. Cela fonctionne très bien. J'espère que vous avez compris comment convertir une formule mathématique en instruction de programmation. Si vous avez des questions, n' hésitez pas à me le faire savoir. Merci d'avoir regardé. 69. Dates et temps: dates et les heures sont des éléments avec lesquels la plupart des gens ont travaillé un peu. Nous prenons rendez-vous dans le cadre d'événements planifiés pour des dates et des heures précises. La plupart de notre journée tourne autour de l'horloge. C' est donc une bonne idée de regarder comment Python traite l'interaction avec les dates et l'heure, en particulier le stockage de ces valeurs pour une utilisation ultérieure. Comme pour tout le reste, les ordinateurs ne comprennent que les nombres. La date et l'heure n'existent pas. Travailler avec les dates et les heures comme l'un des plus grands défis dans la programmation entre les fuseaux horaires, l' heure d'été et les différents formats de dates écrites, il peut être difficile de suivre quels jours et heures vous êtes référencement. Heureusement, le module datetime Python intégré peut vous aider à gérer la nature complexe des dates et des heures. Techniquement, cet acte s'appelle l'importation d'un paquet. Et vous en apprendrez plus à ce sujet dans les prochaines leçons. Pour obtenir l'heure actuelle, vous pouvez simplement taper la date importante, heure, la date, le point horaire, le point datetime. Maintenant, vous voyez la date complète et les informations d'heure se trouvent sur l'horloge de votre ordinateur. Vous avez peut-être remarqué que la date et l'heure sont un peu difficiles à lire dans le format existant. Voyant que vous voulez simplement obtenir la date actuelle en utilisant la commande string dans un type de format lisible. Maintenant, c'est beaucoup mieux. Datetime fournit trois classes qui composent l'interface de haut niveau que la plupart des gens utiliseront. Dateheure. Date est une date idéalisée qui suppose que le calendrier grégorien s'étend infiniment dans le futur et le passé. Cet objet stocke l'année, mois et le jour en tant qu'attributs. Datetime, pas le temps est un temps idéalisé qui assure qu'il y a 86 400 secondes par jour sans secondes bissextiles. Cet objet stocke l'heure, seconde minute microseconde et l'information z, les informations de fuseau horaire. Datetime dot datetime est une combinaison de date et d'heure. Il a tous les attributs des deux classes. Tout d'abord, vous devez importer les trois classes principales de DateTime en utilisant le code suivant. Maintenant, vous pouvez utiliser certaines méthodes pour créer des instances de jour. Il existe deux méthodes qui ne vous obligent pas à utiliser des entiers pour spécifier chaque attribut, mais vous permettent plutôt d'utiliser d'autres informations. jour le jour crée une instance de date de point datetime avec la date locale actuelle. Le point Datetime crée désormais une instance de jour de point datetime avec la date et l'heure locales actuelles. Jetons un coup d'oeil à quelques exemples. Je vais utiliser le point de date aujourd'hui et le point date-heure maintenant pour créer des instances d'objets date, datetime et heure, chaque instance est stockée dans une variable différente. Aujourd'hui est une instance de date qui n'a que l'année, le mois et le jour. Maintenant est une instance datetime qui a l'année, le mois, le jour, l'heure, la minute, la seconde et les microsecondes. Comme vous pouvez le voir, travailler avec les dates et les heures et la programmation peut être compliqué. Heureusement, vous avez rarement besoin d'implémenter des fonctionnalités complexes à partir de zéro ces jours-ci, car de nombreuses bibliothèques open source sont disponibles pour vous aider. C' est certainement le cas en Python, qui comprend trois modules distincts dans la bibliothèque standard pour travailler avec les dates et les heures. Le calendrier sort, les calendriers et fournit des fonctions à l'aide d'un calendrier grégorien idéalisé. Datetime fournit des classes pour manipuler les dates et les heures. Le temps fournit des fonctions liées au temps où les dates ne sont pas nécessaires. Avec la commande time que vous pouvez utiliser pour obtenir l'heure actuelle, vous pouvez obtenir différentes valeurs pour chacun des composants qui composent la date et l' heure en utilisant les valeurs du jour, du mois, de l'année, de l'heure, des minutes, de la seconde et de la microseconde. Mais c'est hors de la portée de cette leçon. Vous avez appris le concept fondamental de la date et de l'heure. Il est temps pour vous d'appliquer vos nouvelles connaissances trouvées dans les applications du monde réel. Merci d'avoir regardé. 70. What liste: Salut tout le monde, c'est Andreas, et dans cette conférence, vous apprendrez quelles sont les listes et comment commencer à travailler avec l'élément dans une liste. Les listes sont l'une des fonctionnalités les plus puissantes de Python qui vous permettent de stocker des ensembles d'informations en un seul endroit. Alors qu'est-ce que la liste ? Une liste est une collection d'éléments dans un ordre particulier. Vous pouvez créer une liste qui inclut les lettres de l'alphabet, les chiffres de 0 à neuf, les noms, les couleurs, tout ce que vous voulez. Vous pouvez mettre n'importe quoi dans une liste. Les listes contiennent des objets complexes tels que des fonctions ou des classes ou même des modules. Les éléments de votre liste n'ont pas à être liés d'une manière particulière. En outre, une liste contient généralement plus d'un élément. Les crochets Python indiquent une liste dans les éléments individuels de la liste sont séparés par des virgules. Faisons un exemple. Ouvrez l'éditeur et commencez à taper. Nous ferons une liste. Nommez les produits Apple avec quatre éléments. Maintenant, nous allons imprimer la liste. Python retourne sa représentation de la liste, y compris les crochets. Vous pouvez également déclarer une liste sans lui attribuer de valeur initiale. Vous pouvez taper les produits Apple équivaut à deux crochets. Il s'agit d'une liste vide qui ne contient aucun élément. Vous devez utiliser la méthode append pour ajouter des éléments à la liste. Nous en apprendrons plus tard sur la méthode append. Les éléments de la liste sont accessibles par un index. Pour ce faire, vous nommez la liste, puis à l'intérieur d'une paire de crochets, vous utilisez un numéro d'index, comme ce que je montre ici, qui permet d'accéder à des éléments individuels dans la liste. L' indexation de cette liste est basée sur 0. Donc, si vous avez une liste comme celle-ci avec ces six éléments, les indices commencent par 0 et nous allons aller jusqu'à cinq. Par exemple, directement dans le shell. Le résultat est iPhone car 0 est la première valeur de la liste. Maintenant tapez. Et le résultat est iCloud car l'index trois est la quatrième valeur de la liste. Si vous essayez d'accéder à l'index qui est au-delà de la portée, vous obtiendrez l'index hors de portée. En outre, le tranchage est également disponible pour. Slicing est une syntaxe d'indexation qui exprimera une partie de votre liste. Donc, dans cet exemple, si a est votre liste qu'à l'intérieur des crochets, vous devrez indexer des nombres séparés par un deux-points, et il va retourner une partie de cette liste que nous allons commencer par la position m et aller jusqu'à, mais sans inclure l'index n en utilisant ce même exemple d'avant. Et si vous avez pris un 225, vous obtenez trois objets au milieu, commençant à l'index deux et allant jusqu'à l'index quatre, mais pas cinq. Un raccourci est disponible en omettant le premier index. Votre tranche va commencer au début de la liste et aller jusqu'au deuxième index. Si vous omettez le dernier index, il va étendre les diapositives du premier index et aller jusqu'à la fin de la liste. Et si vous deviez omettre les deux index, il va retourner une copie de la liste entière. Et contrairement à une chaîne, c'est une copie, pas une référence au même objet. Il est possible d'ajouter un troisième index après deux points supplémentaires. Ce troisième index indique une foulée, mais on l'appelle aussi parfois un timbre. Donc, dans cet exemple, si vous ajoutez une tranche qui est passée de 0 à six avec un pas de deux, vous retournerez l'objet à l'index 024. Alternativement, vous pouvez accéder aux valeurs d'une liste à l'arrière. Le dernier élément de cette liste a un index de moins un. Le second a un indice de moins deux et ainsi de suite. Droit ? Et le Python répond iCloud parce que c'est le, le dernier élément. Vous pouvez également affecter une liste ou une partie de celle-ci à un type de variable. Ainsi, les produits variables deviennent iPhone, iPad, Mac Air, iCloud. Maintenant, si vous tapez, le résultat est iPad virgule MAC air, parce que vous affectez des éléments avec l'index un à l'index trois moins un. La notation un à trois est également connue sous le nom de tranche. Chaque fois que nous utilisons une notation de tranche en Python, l'élément au début de l'index est toujours inclus, mais l'élément à la fin est toujours exclu. En d'autres termes, la notation 1-2-3 fait référence aux éléments de l'index deux, index quatre moins un, qui est l'index trois. Il y a aussi une notation de tranche plus complexe qui comprend un troisième nombre connu sous le nom de pas à pas, mais nous allons l'ignorer pour l'instant. Une fonction importante est d'ajouter si vous voulez ajouter des éléments à une liste, par exemple, avec cette ligne de code, vous pouvez ajouter la valeur iPod à la fin de la liste, imprimer la liste et voir le résultat. Si vous souhaitez supprimer des éléments d'une liste, vous utiliserez l'instruction delete. Supposons que vous souhaitiez supprimer l'article iPad, qui est en position un. Type. Entrez un iPad n'existe pas. Les listes sont cruciales dans la programmation Python. C' est une fonctionnalité en Python que nous allons voir plusieurs fois. Et c'est crucial si vous allez créer des programmes et des projets en Python. Dans la prochaine conférence, nous allons plonger plus profondément dans les listes. Si tu as besoin de quoi que ce soit, je serai ravi de t'aider. Merci d'avoir regardé. 71. Travailler avec des listes: Bonjour tout le monde. Aujourd'hui, nous allons continuer à travailler avec les listes. Voyons donc quelques autres fonctions. Lorsque vous travaillez avec une liste. Si vous voulez combiner deux listes, vous allez utiliser la fonction étendue, ouvrir l'éditeur et écrire le programme suivant. Exécutez-le, et regardez la nouvelle liste. Super. Pour mieux comprendre comment cela fonctionne, copions le code du programme et collez-le dans Python Tutor.com. Cliquez sur Démarrer, visualisez votre code maintenant. Et c'est comme la version trois de Python. Collez le code et cliquez sur le bouton et visualisez l'exécution. Regarder tout le travail étape par étape. Si j'appuie sur le bouton avant, je vais passer à l'étape suivante et voir la sortie du côté droit. La première ligne crée les produits Apple une liste avec trois éléments à l'intérieur de l'iPhone, iPad et iPod avec l'index 012. En appuyant sur le bouton avant, la deuxième ligne de code est exécutée. Il crée les produits Apple à mettre en vente avec trois éléments, iCloud, iOS et Air Mac avec l'index 012 exécutant la troisième ligne, produits Apple un est étendu avec les produits Apple pour lister les composants. Donc, si j'imprime la liste un, la sortie sera ces six composants. Assez droit, non ? Fermez le site Web. D'accord ? Supposons maintenant que vous vouliez vérifier si un élément est sur un type de liste. Faux, bien sûr, le bureau n'est pas sur la liste. Certes, iOS est n, la liste. Pour ajouter un élément à une position particulière, nous allons utiliser la fonction d'insertion. Prenons un exemple, en ajoutant le bureau à l'intérieur de la liste des produits Apple. Deux est le numéro d'index, entrez et imprimez à nouveau la liste. Très gentil. Supprimer la fonction, supprime un élément de la liste, nécessite la valeur d'un élément comme paramètre. Faisons un exemple. Tapez et entrez, imprimer un Air Mac ont été supprimés de la liste. Enfin, si vous souhaitez trier une liste par ordre alphabétique ou numérique, vous utiliserez le type de fonction de tri. Et nous avons une liste triée. Bien sûr, ce n'est pas la meilleure liste pour comprendre si elle est triée ou non. S' il vous plaît exercer ces fonctions et si vous avez des questions, s'il vous plaît laissez-moi savoir. Merci de regarder et je vous verrai dans la prochaine leçon sur la façon de faire des listes numériques. 72. Faire des listes numériques: Bienvenue à cette leçon et merci de l'avoir fait jusqu'à présent. Passons maintenant à la façon de faire des listes numériques. Les listes sont idéales pour trier des ensembles de nombres dans Python fournit plusieurs outils pour vous aider à travailler efficacement avec des listes de nombres. Une fois que vous aurez compris comment utiliser ces outils efficacement, votre code fonctionnera bien. N' oubliez pas que pour stocker un ensemble de nombres, nous avons beaucoup d'applications allant de suivre scores élevés d'un joueur à stocker les températures, les populations, etc. fonction de plage de Python est bénéfique et facilite la génération d'une série de nombres. La fonction range génère une liste de nombres et a la plage de syntaxe start et cou-de-pied. Si vous voulez faire une liste de nombres, vous pouvez convertir les résultats de la plage directement en une liste à l'aide de la fonction de liste. Lorsque vous enroulez une liste autour d'un appel à la fonction de plage, la sortie sera une liste de nombres. Faisons un exemple. Ouvrez l'éditeur et tapez. Exécutez le programme. La nouvelle liste de 1 à 9 apparaît à l'écran. Notez que si l'étape n'est pas donnée, une liste de nombres consécutifs sera générée comme la liste ci-dessus, la valeur finale doit être fournie. Cependant, une chose étrange à propos de la fonction de plage est que la valeur n donnée ne fait jamais partie de la liste générée. Pour imprimer les nombres un à dix, vous devez utiliser la plage 1 virgule 11. Nous allons apprendre à combiner les fonctions de boucle avec plage et à créer des listes plus compliquées lors de conférences ultérieures, comme une liste des dix premiers nombres carrés. Merci d'avoir regardé. 73. Imprimer des listes: Python fournit beaucoup de façons de produire des informations. Voyons seulement quelques-unes des méthodes les plus basiques pour sortir des listes. Prenez le code suivant dans l'éditeur. Ici, j'ai essayé de lister avec quatre compagnies automobiles à l'intérieur. Maintenant, nous allons imprimer la liste. Cet exemple utilise l'opérateur splat. C' est le symbole astéroïde, également appelé opérateur d'expansion positionnelle, et un assortiment d'autres termes intéressants pour décompresser la liste et envoyer chaque élément à la méthode d'impression un élément à la fois. L' argument sep nous indique comment séparer chacune des sorties imprimées, s'appuyant sur un nouveau caractère de ligne. Dans ce cas, exécutez le code et voyez le résultat. Python affiche la liste un élément à la fois. Maintenant, supprimez la ligne d'impression et ajoutez la ligne suivante dans le code. Cette ligne de code prend deux lignes de code et la place sur une seule ligne. Il montre également la jeunesse de la méthode r just, ce qui justifie la chaîne. Les boucles for sont un élément important du langage Python. Et j'ai toute une section dédiée aux boucles, exécutez le code. Regarde ça. Il a aligné le contenu avec la marge de droite. Ok, maintenant remplacé la dernière ligne de code par la suivante. Dans ce cas, la sortie est formatée avec les méthodes de format point avec texte d'accompagnement et le résultat n'inclut pas tous les membres des voitures. L' entrée 01 représente les espaces réservés pour la valeur fournie par les wagons. Exécutez le code pour voir qu'il apparaît avec l'entrée 0, qui est Toyota, et l'entrée qui est BMW. Merci d'avoir regardé. 74. Tuples: tuples sont identiques aux listes à tous égards, à l'exception de quelques notes suivantes. tuples sont définis en plaçant les éléments entre parenthèses au lieu de listes similaires en utilisant des crochets. On dirait quelque chose comme ça. L' autre chose importante est que les tuples sont immuables. Alors pourquoi utiliseriez-vous un tuple au lieu d'une liste ? Lorsque vous exécutez des programmes avec des tuples par rapport aux listes, l'exécution sera plus rapide lorsque vous manipulez le tuple. Cela ne sera probablement pas perceptible lorsque vous avez une petite liste ou un petit tuple. Mais si ce sont les grands tableaux d'informations, vous commencerez à voir une différence de performance. Il y a des moments où vous ne voulez pas que vos données soient modifiées. Si vous avez des valeurs dans le cadre de la collection et leur mentor est resté constant pendant toute la durée du programme, l'utilisation d'un tuple va se protéger contre toute modification accidentelle. Et je sais que les dictionnaires Python ne sont pas au centre de cette leçon. Vous apprendrez que les clés pour créer un dictionnaire Python nécessitent qu'il existe un type immuable. Donc, dans ce cas, vous devriez utiliser quelque chose d'immuable comme un tuple au lieu de liste. Si vous cherchez à utiliser une séquence pour la clé pour définir un tuple. Au lieu d'utiliser des crochets pour une liste, vos objets seront contenus entre parenthèses. Voilà t, qui est un tuple. Et en accédant à t, mon indexation fonctionne de la même façon en introduisant le découpage. Et vous pouvez voir ici qu'il retourne un tuple, même faire des progrès. Et l'un de vous utilise la foulée négative préférée. Et vous pouvez le voir ici revenir entre parenthèses, ces tuples et juste noter, oui, vous utilisez toujours le même style d'indexation des crochets. Qu' est-ce qui est si différent ? Eh bien, vous ne pouvez pas le modifier. Donc, si vous allez essayer de prendre l'index deux et l'affecter à quelque chose, vous allez soulever cette exception d'une erreur de type. L' objet Tuple ne prend pas en charge l'attribution d'élément. Si vous deviez créer plusieurs objets ici, et ils peuvent être de nouveau de types différents, et vous alliez simplement les énumérer et mettre une virgule entre chacun. Vous verrez que cela se présente comme un tuple. Et en fait, si vous alliez commencer une parenthèse de fin avec rien dedans et vérifier le type dessus. Ce que vous auriez là comme un tuple vide. Maintenant que se passe-t-il, si vous essayez de créer un tuple singleton ? Vous dites que T est égal au numéro deux entre vos parenthèses. Eh bien, vous pouvez voir ici que T n'a pas les parenthèses autour. Et si vous regardez son type, c'est juste un entier. Puisque les parenthèses sont également utilisées pour définir la priorité de l'opérateur pour les expressions, python évaluera l'expression de seulement deux entre parenthèses comme simplement l'entier deux et créera un INT. Si vous voulez vraiment dire que c'est un singleton, Vous devrez faire une étape supplémentaire, qui consiste à inclure une virgule de fin qui serait alors considéré comme un tuple. Il est probablement rare que vous ayez besoin de définir un tuple singleton. Mais si vous le voyez dans un exemple, maintenant vous êtes prêt. Ensuite, nous allons plonger un peu plus profondément dans la tâche de tuple avec emballage et déballage. 75. Affectation, emballer et dégrouper: Dans cette vidéo, je vais vous montrer la tâche de tuple à travers l'emballage et le déballage. Un tuple littéral contenant plusieurs éléments peut être affecté à un seul objet, comme l'objet exemple ici, T. Affecter cet objet compressé à un nouveau tuple, décompresse les éléments individuels dans les objets que le nouveau tuple, avec déballage le nombre de variables à gauche doit correspondre au nombre de valeurs à l'intérieur du tuple. Laissez-moi vous faire explorer ça avec du code. Comme vous l'avez vu dans la vidéo précédente, vous pouvez créer un tuple juste en tapant les objets dans un ensemble de parenthèses, puis cela va les emballer tous là dans cet objet unique. Encore une fois, vous pouvez y accéder via l'index. Voici une idée intéressante. Vous pouvez créer un autre tuple d'objets, dans ce cas S1, S2, S3, S4, et pourrait l'affecter au tuple que vous avez créé. Un moment pour aller, t. Maintenant S1, S2, S3 et S4 auront décompresser ce tuple pendant cette affectation et les placer dans les objets appropriés. Maintenant, il est important qu'ils aient le même numéro des deux côtés de cette affectation. Si vous essayez de l'assigner à S1, S2, S3 égal à t, vous allez déclencher une exception ici comme une erreur de valeur, il y a trop de valeurs à décompresser. Il s'attendait à trois de ce côté-ci et t, comme vous le savez , a encore une fois, voici t. Et si vous alliez avec trop ? Eh bien, dans ce cas, il s'attendait à obtenir cinq, mais T seulement prévu pour l'emballage et déballage pourrait être fait dans une seule déclaration si vous le voulez. Et ils sont là. On fait des devoirs comme ça. Il y a une poignée de situations où Python vous permettra d'ignorer les parenthèses. Et la même chose avec le déballage. Vous pouvez même faire quelque chose comme ça où les deux côtés n'ont pas de parenthèses. Même créer ce Singleton. Cela fonctionne de la même manière que les parenthèses soient incluses ou non. Donc, si vous avez des doutes quant à savoir s'ils sont assignés, allez-y et incluez-les. attribution de tuple permet un peu de Python idiomatique. Souvent, lors de la programmation, vous avez deux variables dont les valeurs doivent être échangées. Il est nécessaire de stocker l'une des valeurs dans une variable temporaire. Dans la plupart des langages de programmation pendant que le swap se produit, cela ressemblerait à ceci. Donc, vous créez une variable temp, assignez a dedans, assigné B dans a. Et puis dites B est égal à temp. Et là, vous avez échangé les deux. Donc encore une fois, vous faites une variable temporaire qui contient a, prenant b, l' assignant dans a, puis retirez cette temp en la réaffectant à nouveau. C' est le marais. Mais en Python, le swap peut être fait avec une seule affectation de tuple. Ici, vous allez dire une virgule b égale à b virgule a. Et vous pouvez voir que le swap a eu lieu. C' est tout pour aujourd'hui. J' espère que vous avez apprécié la leçon. Si vous avez des questions, faites-le moi savoir. Merci d'avoir regardé. 76. Travailler avec des dictionnaires: Bonjour les étudiants, voici Andreas, et dans ce tutoriel vidéo, vous apprendrez sur les dictionnaires, ce qui est un excellent moyen d'accéder à une donnée organisée. Si vous avez réussi à combiner des dictionnaires et des listes, vous allez créer une structure de données en Python. Alors commençons. Un dictionnaire est un ensemble de paires de données associées. Les clés de dictionnaire doivent être uniques dans un dictionnaire, vous ne pouvez pas utiliser le même nom deux fois dans notre exemple. En outre, nous utilisons des crochets bouclés lors de la déclaration d'un dictionnaire. dictionnaires sont dynamiques et peuvent être imbriqués. Un dictionnaire peut contenir d'autres dictionnaires ou listes. Un dictionnaire contient ses paires de valeurs de clé entre crochets bouclés. Allez-y et ouvrez votre shell Python, et travaillons sur quelques exemples. Alors allons de l'avant et définissons un dictionnaire et mettons quelques noms ici avec le poids de chacun d'eux. Ouvrez les crochets bouclés et commencez à taper les paires de valeurs clés, nommez et attendez. Le deux-points sépare chaque clé de sa valeur associée. Et rappelez-vous que nous séparons les valeurs des paires de clés par une virgule. Fermez notre dictionnaire avec des crochets bouclés et appuyez sur Entrée. Vous pouvez simplement appeler votre dictionnaire en tapant le nom du dictionnaire et en entrant. Une note rapide ici, comme une version 3.9 de Python, dictionnaires s'afficheront dans un ordre dans lequel ils sont définis. Ce comportement n'existe pas dans les versions antérieures de Python, il peut donc revenir à un ordre aléatoire. Vous pouvez récupérer une valeur d'un dictionnaire en spécifiant sa clé entre crochets comme celui-ci. Et si vous spécifiez une clé qui n'est pas un dictionnaire, vous obtenez une expression. Donc, ajouter un Andrew à votre dictionnaire n'est qu'une question d'assigner une nouvelle clé et une valeur. Donc, si nous ajoutons Allen comme clé et les kilogrammes, vous pouvez voir qu'Alan a été ajouté. Si vous souhaitez mettre à jour une entrée, vous suffit d'attribuer la nouvelle valeur à la clé. Pour supprimer une entrée, il vous suffit de taper la suppression de l'instruction diable et de spécifier la clé. Et John sera parti. Ici, j'ai fait une erreur intentionnelle. Pouvez-vous le trouver ? J' ai donc essayé de supprimer John avec la lettre J et le majuscule, mais à l'intérieur du dictionnaire nous le définissons avec un petit J, comme vous pouvez le voir. Attention, paires clé-valeur sont sensibles à la casse. Quelque chose d'autre à savoir quand vous travaillez avec les dictionnaires. Et cela peut être déroutant quand vous commencez. Si vous travaillez avec la liste et que vous savez que vous pouvez accéder aux listes d'éléments avec un numéro d'index. Vous ne pouvez pas traiter les dictionnaires de listes. Vous ne serez pas en mesure d'accéder aux valeurs à partir d'un numéro d'index comme celui-ci. Vous obtenez une exception. C' est parce que Python attend une clé liée à ce point. Vous pouvez utiliser des énergisateurs comme clés. Donc, si je commence un nouveau dictionnaire ici, et dans ce cas, nous serons en mesure d'accéder aux valeurs dans un dictionnaire avec une touche 0 ou une, pas un index. Définition d'un dictionnaire à l'aide de crochets bouclés et d'une liste de paires de valeurs clés. C' est bien si vous connaissez toutes les clés et les valeurs à l'avance. Mais que faire si vous voulez construire un dictionnaire à la volée ? Vous pouvez commencer par créer un dictionnaire vide qui est spécifié par des crochets bouclés vides. Ensuite, vous pouvez ajouter de nouvelles clés et valeurs une à la fois. Une fois que le dictionnaire est créé de cette façon, ses valeurs sont accessibles de la même manière que n'importe quel autre dictionnaire. La récupération des valeurs dans la sous-liste ou sous-dictionnaire nécessite un index ou une clé supplémentaire. Vous pouvez utiliser des dictionnaires à un large éventail de fins, car il y a si peu de limitations sur les clés et les valeurs qui sont autorisées. Merci d'avoir regardé. 77. Séquences: Bienvenue à tout le monde. Dans cette leçon, nous allons en apprendre davantage sur les ensembles. Ils sont une structure de données utile qui vous permet d'effectuer des opérations complexes plus efficacement. Donc, ce qui est un centime en mathématiques est défini est une collection bien définie d'objets distincts. L' ensemble des nombres même positifs inférieurs à dix serait 2468. L' ensemble des carrés parfaits de moins de dix serait 149. L' intersection de ces deux ensembles serait le nombre de. L' un est un ensemble en Python. type d'ensemble intégré de Python a les caractéristiques suivantes. Ils ne sont pas ordonnés, les éléments sont uniques et les éléments en double ne sont pas autorisés. Et un ensemble lui-même peut être modifié, mais les éléments contenus dans un ensemble doivent être hachables. Donc, un objet mutable est un type d'objet qui peut être modifié après sa création. objets hachables, d'autre part, sont un type d'objet sur lequel vous pouvez appeler hachage. Tous les objets immuables sont hachables, mais tous les objets hachables ne sont pas immuables. Python ne peut inclure que des objets hachables. Donc, certains exemples que vous avez probablement vu des objets immuables sont des tuples, des chaînes, des entiers et des booléens. Cela est dû au fait que ces objets peuvent être modifiés après leur création. Et puis les objets hachables englobent en quelque sorte tous les objets immuables. Les listes et les dictionnaires sont sur hashable. Voyons quelques exemples. Alors regardons les cordes. Nous pouvons créer une chaîne comme celle-ci. Et nous pouvons voir que les cordes sont en effet immuables. Essayons de couper le son. Donc, si j'ai essayé d'ajouter un caractère ou de changer la première lettre en un autre caractère, les deux sont une erreur de type. La même chose vaut pour les entiers. Nous pouvons vérifier que les chaînes et les entiers sont tous les deux hachables en appelant la méthode de hachage sur eux. Donc, le hachage sur S n'erreur pas, mais il nous donnera un nombre. Et ce nombre représente juste le hachage de s. Les listes et les dictionnaires sont sur hashable, ce qui signifie qu'il appelle un hachage sur eux nous donne une erreur. Il y a deux façons de définir un ensemble en Python, vous pouvez utiliser la fonction set. Par exemple, nous pouvons passer la liste pomme et banane, qui convertira cette liste qui ne définit avec deux éléments. Notez que l'ordre n'est pas exactement le même que la liste nous avons transmise car les ensembles ne sont pas ordonnés. Voyons ce qui se passe quand on passe dans un dictionnaire. Il va transformer les clés des dictionnaires en un ensemble. Nous pouvons également passer une chaîne qui est, diviser la chaîne en caractères. Et s'il y a des caractères en double, il n'inclura pas ceux-ci car les ensembles ne peuvent pas contenir de doublons. Par exemple, nous pouvons utiliser la fonction de liste avec la même chaîne, en gardant le même ordre de lettres et les doublons. La deuxième façon de définir un ensemble est d'utiliser des crochets bouclés. Si nous voulons un ensemble vide, nous pourrions utiliser un ensemble comme celui-ci. Les ensembles sont vraiment cool car ils peuvent contenir n'importe quelle valeur hachable et le même ensemble n'a pas besoin d'inclure le même type de valeur. Donc, je peux avoir une chaîne de booléen, puis un tuple. Et ça marchera. Oups, c'est vrai avec le capital T. Great. Essayons de passer une valeur non hashable et de voir ce qui se passe. Donc, les listes ne sont pas hachables et c'est une erreur. Donc y cents, quand parfois vous vous souciez seulement des valeurs uniques et vous n'avez pas besoin de vos données pour être commandées. C' est la différence apparente entre les ensembles et les tuples ou les listes. Vous pouvez également faire quelques opérations fraîches très rapidement. Mais la principale raison pour laquelle nous utilisons des listes est qu'elles sont très, très rapides. Ce que je veux dire par là, c'est que vous pouvez vérifier l'adhésion presque instantanément. Merci beaucoup d'avoir regardé. Et si vous avez des questions ou des commentaires, veuillez les laisser dans le formulaire Q. et a. Udemy. 78. Si les déclarations: Salut tout le monde. Dans ce tutoriel vidéo, vous allez apprendre à écrire des tests conditionnels, ce qui vous permet de vérifier n'importe quelle condition d'intérêt. Vous apprendrez à écrire simplement si des déclarations. Et vous apprendrez à créer une série plus complexe d' instructions if pour identifier quand les conditions exactes que vous voulez sont présentes. Le bloc suivant l'instruction if s'exécutera. Si la condition instruction est true, les clauses ignorées si la condition est false, une instruction if peut être lue comme si cette condition est vraie. Exécutez le code. L' instruction if se compose du mot-clé, la condition un deux-points, et à partir de la ligne suivante, d'un bloc de code. La structure d'une instruction if est la suivante. Et voici le diagramme de flux. Faisons quelques exemples, ouvrez l'éditeur et écrivez le code suivant. Python nécessite le formatage des blocs avec indentation. C' est très difficile à propos des espaces et de l'indentation. Enregistrez d'abord le programme, exécutez le code et voyez le résultat à l'écran. Python invite les utilisateurs à entrer un nombre compris entre 12. Pour ce faire, nous utilisons la fonction d'entrée. Gardez à l'esprit que le résultat est stocké sous forme de chaîne. Maintenant, si vous tapez un, le programme exécutera la première instruction d'impression. Peut-être taper deux, le programme exécutera la deuxième instruction d'impression. Pour toutes les autres valeurs, le programme imprimera que vous n'avez pas entré un nombre valide. Super. Maintenant, parlons d'une inclinaison si une inclinaison si la déclaration est une forme plus simple d'une déclaration if et son idéal si vous avez seulement besoin d'effectuer une tâche simple. La syntaxe est la suivante. Par exemple, allez dans le programme précédent et supprimez toutes les lignes de code sauf la première. Tapez ensuite la fonction d'impression suivante. Si nous exécutons le programme, nous obtiendrons le même résultat que le précédent, mais avec une ligne de code moindre. Dans la ligne suivante, je vais vous montrer de nombreux exemples différents de l'instruction if dans une application. Merci d'avoir regardé. 79. EXEMPLES d'utiliser l'utilisation si dans une application EXEMPLE d'utiliser la déclaration dans une application: Vous pouvez utiliser les instructions if de plusieurs façons. En Python, un opérateur relationnel détermine comment une valeur du côté gauche d'une expression se compare à la valeur du côté droit des expressions. Fait jamais la détermination et génère une valeur vraie ou fausse qui reflète les expressions valeur vraie. Par exemple, six égal à six est vrai tandis que cinq égal à six est faux. Les étapes suivantes montrent comment créer et utiliser une instruction if. Tout d'abord, définissons une variable appelée mon type de valeur. Ce timbre attribue une valeur de cinq à ma valeur. Notez qu'il utilise l'opérateur d'affectation et non le type d'opérateur d'égalité. Cette étape crée une instruction if qui teste la valeur de ma valeur en utilisant l'opérateur d'égalité. Le mot if est mis en surbrillance dans une couleur différente du reste de l'instruction. Type. Et entrez deux fois. Si vous appuyez deux fois d'affilée sur Entrée sans entrer de texte, le bloc de code est terminé et la sortie est cette phrase. Si je change la valeur de la variable à dix et relance le même code, aucune exécution ne sera effectuée. Aussi si je change la valeur de la variable et après si à 15 et exécute le code, aucune exécution ne sera faite. Parfois, vous voulez effectuer plus d'une tâche après avoir pris une décision, tant que la ligne suivante est indentée, elle fait partie de l'instruction if. Lorsque la ligne suivante est défoncée, elle devient la première ligne d'un code en dehors du bloc if. Un bloc de code se compose d'une instruction et des tâches associées à cette instruction. Je vais mettre deux déclarations imprimées pour comprendre comment ça fonctionne. Entrez deux fois. Chaque ligne que vous tapez fait partie du bloc de code IFStatement actuel. Et si vous appuyez deux fois de suite sur Entrée sans entrer de texte, Python exécute le bloc de code entier pour effectuer plusieurs comparaisons. Si vous créez diverses conditions en utilisant opérateurs relationnels et les combinez pour l'utiliser et les opérateurs logiques. Par exemple, prenez le code suivant dans l'éditeur Python. Exécutez le code et tapez trois est une valeur. L' instruction if contient deux conditions. Le verset indique que la valeur doit être supérieure à 0. Vous pouvez également présenter cette condition comme une valeur supérieure ou égale à un. La deuxième condition stipule que la valeur doit être inférieure ou égale à cinq. Ce n'est que lorsque la valeur signifie ces deux conditions que les instructions if réussiront et imprimeront la valeur saisie par l'utilisateur ? Si je prends dix, l'application ne sort rien parce que le nombre est dans la mauvaise plage. Changeons le code pour fournir une action alternative lorsque la condition d'une instruction if est fausse. Notez que la cause else se termine par un deux-points, tout comme l'instruction if le fait. Si vous recevez une erreur de codage pour une simple application, assurez-vous de vérifier la priorité des colonnes si nécessaire. Exécutez le code et tapez dix. Cette fois, l'application affiche le message d'erreur. Maintenant, essayons de créer une sélection de menu d'un restaurant. Le restaurant propose une salade de pizza pasteur et une panna cotta pour sucré. Après avoir choisi l'un des éléments, le serveur vous l'apporte. La création d'une sélection de menu nécessite quelque chose comme une instruction if else. Toutefois, si l'on utilise la cause du FRV, la cause du FRV est une combinaison de la clause else et d'une déclaration IF distincte. Les étapes suivantes décrivent comment utiliser l'instruction if, e l i f pour créer un menu. Dans chaque cas, les choix comparés à une valeur particulière pour créer une condition pour cette valeur, si aucune des options n'est correcte, la clause else est exécutée par défaut pour indiquer à l'utilisateur que le choix d'entrée n'est pas valide. Maintenant, je vais exécuter le code. Python attend que j'insère un nombre, imprimant le message, sélectionnez votre menu favori. Je vais mettre le numéro trois et le message apparaît, vous avez choisi la salade, évidemment parce que trois est le menu de la salade. Le processus décisionnel se déroule souvent à des niveaux. Par exemple, lorsque vous allez au restaurant et choisissez des pâtes, vous avez pris une décision de premier niveau. Maintenant, le serveur demande quel type de passé vous voulez. Par exemple, un taureau et oui sont un carbonara. Cette sélection devient une prise de décision de deuxième niveau dans les niveaux chaque niveau se fondant sur la décision prise à un niveau précédent est appelé imbrication. Les développeurs utilisent souvent des techniques d'imbrication pour créer des applications qui peuvent prendre des décisions complexes en fonction de diverses entrées. Les techniques de sélection multiples les plus couramment utilisées sont une combinaison d'instructions if et if else. Cette forme de sélection est souvent appelée arbre de sélection. Le code suivant montre comment créer une arborescence de sélection. Supprimez le code précédent et commencez à taper. Tapez un nombre compris entre 15. Tapons trois. Tapez un deuxième nombre. Maintenant, mettons-en cinq. Le résultat est 15, parce que trois fois cinq nous donne 15. Je vais lancer le code à nouveau et mettre cinq comme premier numéro, et dix est le deuxième numéro. Et il imprime le message deuxième valeur incorrecte. Donc, ça marche très bien. Si vous tentez de fournir une valeur en dehors de la plage demandée, un message d'erreur s'affiche. Le message d'erreur est adapté pour la première ou la deuxième valeur d'entrée afin de savoir quelle valeur était incorrecte. Dans le cadre d'un exercice de devoirs, essayez de créer un menu de restaurant à l'aide de déclarations de décision imbriquées. Merci beaucoup d'avoir regardé. Et si vous avez des questions ou des commentaires, veuillez les laisser dans le forum Q et Udemy. 80. Pour les boules: Bonjour les étudiants. Jusqu' à présent, nous avons appris que l'instruction if, mais que faire si vous voulez exécuter un bloc de code uniquement en utilisant un certain nombre de fois, vous pouvez le faire avec une instruction for loop et aider la fonction de plage. Et vous apprendrez une nouvelle fonction appelée énumérer. Ainsi, la boucle for exécute le bloc de code à plusieurs reprises jusqu'à ce que la condition dans l'instruction for ne soit plus valide. En Python, tout peut être bouclé, comme une chaîne, une liste ou un tuple. C' est aussi appelé un terrible. La syntaxe est la suivante. Et voici le diagramme de flux. Faisons un exemple, lancez shell et commencez à taper. Dans ce programme, nous avons une liste de saisons avec quatre articles. L' énoncé des années dans les saisons passe par la liste des saisons et affecte chaque membre à la saison annuelle variable. Lorsque nous exécutons le programme en hiver First Signs à la saison de l'année variable, puis imprime la valeur de l'hiver. Après cela, le programme continue à parcourir la liste jusqu'à ce que la fin de sa liste soit atteinte. Si vous souhaitez afficher l'index des membres dans une liste, vous pouvez utiliser la fonction énumération. Allons avec la deuxième ligne et relancez le programme. Vous pouvez voir l'index à côté de lui. Chaque article est sur la liste. Si vous avez des questions, veuillez les poster sur le forum de discussion. Pour boucle est un concept fondamental et je veux que vous le compreniez pleinement. Merci d'avoir regardé. 81. EXEMPLES de l'utilisation de la l'utilisation pour la déclaration: La meilleure façon de voir comment fonctionne une boucle for est d'en créer une. Nous allons faire un exemple qui utilise une chaîne pour la séquence. La boucle for traite chacun des caractères de la chaîne et tourne jusqu'à ce qu'il manque de caractères. Prenez le code suivant dans l'éditeur. L' exemple commence par créer une lettre numb variable pour suivre le nombre de lettres qui ont été traitées. Chaque fois que la boucle se termine, lettre num est mise à jour par un. La déclaration for fonctionne à travers la séquence de lettres dans la chaîne et Dreze, et il place chaque lettre à tour de rôle dans la lettre. Exécutons le code, sauvez-le d'abord, la lettre un est un nième, lettre, deux est n, et ainsi de suite. Le programme s'arrête quand il imprime la dernière lettre du nom, et c'est la lettre S. La clause de frein rend la respiration hors boucle possible. Cependant, vous ne placez pas simplement la clause de rupture dans votre code. Vous l'entourez d'une instruction if qui définit les conditions d'émission d'une pause. Dans l'exemple suivant, nous allons laisser l'utilisateur fournir une chaîne de longueur variable. Lorsque la chaîne est supérieure à huit caractères, l'application cesse de la traiter. Supprimons le code précédent et travaillons sur quelques exemples. Exécutez le code et tapez John. Le nom comporte moins de huit caractères et l'imprime. Mais si je tape Alexander, l'application cesse de le traiter. Et voici le message. La chaîne est trop longue. Parfois, vous voulez vérifier chaque élément d'une séquence, mais vous ne voulez pas traiter certains éléments. Les lois de rupture entrent simplement dans la boucle afin que vous ne l'utilisiez pas dans cette situation. L' alternative des lois de rupture que de nombreux développeurs utilisent est la clause continue. Comme pour la clause de freinage, cette clause continue apparaît comme faisant partie d'une déclaration if. Cependant, le traitement continue avec l'élément suivant de la séquence plutôt que de se terminer complètement. Dans l'exemple suivant, Le code refuse de traiter la lettre D, mais traitera toutes les autres lettres dans Andreas est le nom. Appuyez sur F5 pour exécuter le code et voir le résultat. n'y a pas de lettre D dans le mot. Le langage Python inclut le deuxième type de la clause continue. La clause passée fonctionne presque de la même manière que la clause continue, sauf qu' elle permet l'achèvement du code dans le bloc d'instruction if dans lequel elle apparaît. Modifiez le code et utilisez les griffes passées au lieu de continuer et de réexécuter le code. L' utilisation de la clause past permet le post-traitement d'une entrée indésirable. Si je change la position de la déclaration d'impression, j'obtiens des résultats différents. Python a une autre clause de boucle que vous ne trouverez pas avec d'autres langues. La clause else rend l'exécution de code possible si vous n'avez pas d'éléments du processus dans une séquence. Par exemple, tapez le code suivant. Exécutons le code, en mettant un mot, je vais taper mon nom Andreas, et la sortie est les lettres une par une. Maintenant, je vais exécuter le code sans taper quelque chose et la clause else est exécutée en tapant le message, la chaîne est vide. 82. Bien que les boules: Hé tout le monde. Dans la conférence précédente, nous avons appris la boucle quatre, qui exécute le bloc de code seulement pour un certain nombre de fois. En revanche, la boucle sauvage fonctionne aussi longtemps que ou pendant qu'une certaine condition est vraie. Par exemple, vous pouvez utiliser une boucle while pour compter à travers une série de nombres. Voyons ça en action. Jetons d'abord un coup d'oeil au diagramme de flux. Maintenant, ouvrons l'éditeur inactif et exécutons le code suivant. Exécutez le programme et il affiche les nombres de 0 à trois. Dans la première ligne, nous commençons à compter à partir de 0 en définissant la variable de nombre à 0. La boucle while exécute le programme aussi longtemps que les nombres inférieurs à quatre et imprime chaque nombre avec le num plus une instruction, nous ajoutons un dans chaque boucle. La dernière instruction imprime le message pour nous montrer que le programme est terminé. Donc Python répète la boucle quatre fois et total, parfois une boucle peut être infinie. La boucle devient une boucle infinie si la condition ne devient jamais fausse, vous devez faire preuve de prudence lors de l'utilisation de boucles while en raison de la possibilité que cette condition ne résout jamais à une fausse valeur. Cela se traduit par une boucle qui ne se termine jamais. Une telle boucle est appelée une boucle infinie. Dans l'exemple ci-dessus, si nous supprimons l'instruction num plus une, le test conditionnel, néanmoins que quatre s'exécutera toujours à true et la boucle while s'exécutera pour toujours, imprimant une série de zéros comme ceci. Si votre programme est bloqué dans une boucle infinie, appuyez sur contrôle plus c ou fermez simplement la fenêtre du terminal affichant la sortie de votre programme. Pour éviter d'écrire des boucles infinies, testez chaque boucle sauvage et assurez-vous que la boucle s'arrête quand vous vous y attendez. Il est bénéfique d'exécuter un code de programme aussi longtemps que l'utilisateur le souhaite en plaçant la plupart du programme dans une boucle while, nous allons définir une valeur de sortie et ensuite nous allons garder le programme exécution tant que l'utilisateur n'a pas entré la valeur rapide. Écrivons le code suivant. Et exécutons le code Python. J' ai oublié le côlon ici. Dans un premier temps, Python affiche l'invite et attend que l'utilisateur saisisse son entrée. Tout ce qu'ils entrent est stocké dans la variable myText et imprimé à l'écran. Après cela, Python réévalue la condition dans une instruction while. Tant que l'utilisateur n'est pas entré le mot quit, l'invite s'affiche à nouveau et Python attend la saisie. Lorsque l'utilisateur tape quitter, Python arrête d'exécuter la boucle while et le programme se termine. Merci d'avoir regardé. 83. Pause et poursuivre: Bienvenue à cette leçon et merci de l'avoir fait jusqu'ici. Dans cette conférence, vous apprendrez à des instructions qui peuvent être utilisées à l'intérieur des boucles. Là, les mots clés pause et continuer. Parfois, vous pouvez vouloir quitter la boucle entière avec une condition spécifique est remplie. Pour ce faire, nous utilisons le mot-clé break, l'instruction break en Python termine la boucle actuelle et reprend l'exécution à l'instruction tout comme la panne régulière et voir, l'utilisation la plus courante pour la pause est quand certains condition externe est déclenchée nécessitant une sortie hâtive de la boucle. L' instruction break peut être utilisée dans les boucles while et for. Tapons et exécutons le programme suivant pour voir comment cela fonctionne. Sans le mot-clé break, le programme devrait imprimer les nombres de cinq à un avec le mot-clé break, le programme se termine prématurément au numéro deux. En effet, lorsque le nombre atteint la valeur de un, le mot-clé break provoque la fin de la boucle. Notez que nous avons utilisé une instruction if dans une boucle while. Il s'agit d'une pratique répandue dans la programmation et d'une fonctionnalité robuste au fur et à mesure que nous poursuivons le cours. Ceci est également connu sous le nom d'instruction de contrôle imbriquée. Un autre mot-clé pour les boucles est le mot-clé continue. L' instruction continue en Python renvoie un contrôle au début de la boucle while. L' instruction continue rejette toutes les instructions restantes dans l'itération actuelle de la boucle et déplace le contrôle vers le haut de la boucle. Il peut être utilisé à la fois dans while et pour les boucles comme break. Pour mieux le comprendre, nous remplacerons la commande break par la commande continue. Exécutez le programme. Contrairement à l'exemple précédent, continue rejette l'instruction if et déplace le contrôle vers le haut de la boucle. Aussi le reste de la boucle après le mot-clé est ignoré si nous avions du code, bien sûr. Enfin, il y avait une déclaration passée qui n'est pas une opération. Le passé Dave et aide à créer un bloc de code, mais n'est plus nécessaire. Ce n'est pas si utile et vous devez savoir simplement ce qu'il fait. Rien de plus. Si vous ne comprenez pas complètement, ne vous inquiétez pas, nous allons créer un projet qui inclut les deux instructions. Merci d'avoir regardé. 84. PROJET : Jeu Guessing: Nous allons créer un jeu où l'ordinateur choisit un numéro et le joueur le devine. Dans le jeu de devinettes, Python pense à un nombre aléatoire. Le joueur assume le nombre. La première étape consiste à obtenir un texte d'un utilisateur à l'aide de l'instruction input. Commençons à taper dans l'éditeur. L' invite de variable pointe vers un littéral. Le nom littéral est entre les parenthèses. Je capture ce que l'utilisateur tape avec une variable nommée joueurs devinez entrée renvoie une chaîne, quel que soit le type de joueur, même si c'est juste un nombre, vous allez obtenir une chaîne de l'entrée. Pour comparer les suppositions, vous devez convertir le gaz des joueurs en un nombre. Votre jeu doit vérifier si la supposition est la même que le numéro de l'ordinateur. Dites que l'ordinateur en a trouvé dix. Pour comparer la variable, joueurs devinent le nombre dont vous avez besoin pour stocker la valeur dans une variable appelée numéro de soulignement des ordinateurs. Prenons la variable au début de notre programme. Lorsque vous pouvez comparer la supposition avec la réponse, vous pouvez imprimer une réponse du joueur. Le I N T intégré prend une chaîne qui a un nombre entier et le change en quelque chose que Python reconnaît comme un nombre. Rappelez-vous que chaque fois que vous codez, le deux-points signifie qu'un nouveau bloc de code est sur le point de suivre sur la ligne après le deux-points et toutes les autres lignes du bloc, vous devez commencer par quatre espaces. Que se passe-t-il si le joueur devine la mauvaise réponse ? Le mot-clé else modifie le fonctionnement du mot-clé if. Il est toujours exécuté en procédant. Si le bloc de code n'est pas exécuté, tapez, exécutez le code et tapez. Le bloc de code fonctionne bien. Maintenant, nous devons montrer aux joueurs si leur supposition est trop élevée ou trop basse. En utilisant le nous mettrons dans le bloc FRV entre le programme et l'énoncé if. Donc, tout le mensonge le message mal. Devinez encore, et je vais le remplacer par les deux hautes. Exécutez le code et tapez 20. Le message à haut apparaît à l'écran. Vous devez toujours configurer quelque chose que l'ordinateur continue de demander si le joueur ne devine pas le numéro. Vous devez le faire en mettant le code qui demande aux joueurs de deviner et de tester sa valeur tandis que la boucle. Ensuite, en utilisant l'instruction break, lorsque la bonne réponse est donnée ceci, sortons de la boucle. Éditons le code. Ici. Nous allons briser la boucle. L' instruction loop vous permet de quitter toute boucle dans laquelle Python se trouve déjà. Indépendamment de la condition des boucles d'enceinte. Si vous avez une boucle à l'intérieur d'une boucle, le frein appliqué à travers le niveau de la boucle dans laquelle le frein apparaît, dans notre exemple, il casse la boucle intérieure, la boucle if. Pour casser la boucle externe, vous devez être dans le bloc de code de la boucle externe. Maintenant, comment obtenir Python pour penser à un nombre, la fonctionnalité entière aléatoire, ces droitiers du module Random, il vous donne un nombre aléatoire entre deux chiffres que vous mettez dans la parenthèse qui suit Randint. Le nombre inclura le nombre le plus bas ou le plus élevé. Si vous voulez un nombre compris entre 110, utilisez random.random un à dix. Le module aléatoire est livré avec Python, mais contrairement aux intégrés qui ne sont pas chargés automatiquement, le module aléatoire fait partie de la bibliothèque standard python. Si vous en avez besoin, vous devez l'importer. Pourquoi Python ne peut-il pas simplement charger automatiquement tout ? Parce que cela rendrait la programmation ennuyeuse. Chaque fois que vous exécutez un programme, vous devez peser le mur qu'il trouve dans chargé tous les modules de la bibliothèque standard. En plus de vous donner accès à la bibliothèque standard, l'instruction importante vous permet également d'utiliser le module que quelqu'un d'autre a écrit appelé modules tiers. Pour les utiliser, vous devez les télécharger et les installer sur votre ordinateur. J' ai une section entière avec des modules plus tard dans le cours. Ajoutez donc ces deux lignes de code dès le début. J' ai édité la ligne de code avec la variable numérique de l'ordinateur et mis un nombre de un à 50. Nous avons terminé notre jeu de devinettes et sommes prêts à le tester, exécuter le programme. Ça fonctionne très bien. Félicitations, vous venez de créer votre premier jeu en utilisant la programmation Python. Gardez à l'esprit que vous pouvez écrire des commandes dans votre code comme une brève explication de ce que le code est censé faire. 85. Utiliser si vous utilisez des if avec des listes: Hé les gars, qu'est-ce qui se passe ? Dans cette vidéo, vous apprendrez à utiliser les instructions if avec des listes. Vous pouvez facilement combiner une liste et une instruction if. La meilleure façon de comprendre la combinaison est à travers un exemple. L' exemple suivant, pour trouver la liste des achats dans un supermarché. Ouvrez l'éditeur de texte et commencez à taper. Au début, nous définissons la liste avec notre liste d'achats lorsque le programme attend que l'utilisateur saisisse le produit qu'il veut. Si l'élément demandé figure dans la liste avec les éléments disponibles, Python imprime un message indiquant que le produit est disponible. Le bloc else imprime un message indiquant l'utilisateur que ce type de produit n'est pas disponible. Donc, à partir de l'exemple ci-dessus, nous avons réussi à résoudre un problème combinant les instructions if et les listes. Merci d'avoir regardé. 86. Utiliser pour les boules avec des listes: Hey tout le monde, dans la conférence précédente, nous avons appris sur la boucle for. Nous utilisons pour les boucles pour exécuter un bloc de code un certain nombre de fois. Je veux vous montrer maintenant la combinaison de boucles pour avec des listes. Ouvrons l'éditeur Python et commençons à taper le programme suivant contenant une liste de médecins à l'hôpital. Techniquement, un for-loop répète le bloc de code une fois pour chaque valeur d'une liste. Par exemple, si nous l'exécutons, ce programme imprime le type de médecin disponible un par un. Regardez le résultat. Dans la première ligne, nous avons une liste des médecins disponibles à l'hôpital. Ensuite, avec l'aide de la boucle for, nous imprimons le message dans cet hôpital, il y a cette spécialité médecin. Ceci est un exemple simple de la façon dont nous pouvons combiner une liste avec une boucle for-. Merci d'avoir regardé. 87. Utiliser une sloop avec des listes et des dictionnaires: Bonjour aux étudiants et bienvenue au cours que nous continuerons à apprendre à combiner une boucle while avec des listes et des dictionnaires. L' utilisation de la boucle while avec des listes et des dictionnaires vous permet de collecter, stocker et organiser de nombreuses entrées à examiner et à générer des rapports. Plus tard. Dans ce rapport, nous demandons d'abord à l'utilisateur d'entrer un mot de passe. Si le mot de passe est correct, l'application s'ouvrira, mais si le mot de passe est incorrect, un message s'affichera demandant de saisir à nouveau le mot de passe. Exécutons le programme et mettons un mot de passe. Par exemple, 1234. Python nous fait savoir que le mot de passe est incorrect et nous demande d'essayer à nouveau. Maintenant, je vais taper quatre as, qui est le bon mot de passe. Copiez le programme et collez-le dans le site Web de Python Tutor afin que nous puissions le visualiser. Sélectionnez Python trois et collez-le là. Appuyez sur le bouton, visualisez l'exécution. La première ligne est un message simple demandant à l'utilisateur d'entrer un mot de passe. Ensuite, dans la deuxième ligne, Python attend que l'utilisateur tape un code. Le code est stocké dans ma variable de code. Dans la troisième ligne, nous avons un dictionnaire avec le bon mot de passe à l'intérieur de quatre aces. Ensuite, la boucle commence alors que la variable mon code n'est pas égale au bon mot de passe, imprimez un message que le code est incorrect, et demandez à nouveau avec le code, si l'utilisateur tape le code correctement, un message d'impression apparaît avec les textes corrects, et le programme est terminé. Donc, nous pouvons voir que la combinaison de la boucle sauvage avec des listes ou dictionnaires peut créer des programmes puissants. N' oubliez pas d'utiliser ce site Web. C' est une excellente pratique, surtout pour les débutants absolus. Merci d'avoir regardé. 88. Créer des piliers à l'aide de l'utilisation de l'des listes: Une pile est un tableau ou une structure de liste d'appels de fonction et paramètres utilisés dans la programmation informatique moderne et l'architecture CPU. Comme une pile d'assiettes dans un buffet, un restaurant ou une cafétéria, les éléments d'une pile sont ajoutés ou retirés du haut d'une pile est un dernier entré, premier sorti, ou un ordre FIFO. Le processus d'ajout de données à une pile est appelé push lors de la réception de données à partir d'une pile est appelé pop. Cela se produit en haut de la pile. Le pointeur de pile indique l' ajustement de l'étendue des piles au fur et à mesure que les éléments sont poussés ou pompés dans une pile. Lorsqu' une fonction est appelée, l'adresse de l'instruction suivante est poussée dans la pile. Lorsque la fonction existe, l'adresse est supprimée de la pile et l'exécution continue à cette adresse. Malheureusement, Python ne fournit pas de pile en tant que collection. Cependant, il fournit des listes et vous pouvez utiliser une liste comme une pile parfaitement acceptable. Les étapes suivantes vous aident à créer un exemple d'utilisation d'une liste comme pile. Dans cet exemple, l'application crée une liste et une variable pour déterminer la taille maximale de la pile. Les piles ont généralement une plage de tailles spécifique. C' est certes une pile minuscule, mais elle sert bien pour les exemples de besoins. Les timbres ont fonctionné en poussant une valeur sur le haut de la pile et les valeurs de saut de la pile supérieure, une fonction en Python et définie par une instruction def. Dans ce programme, j'ai défini trois fonctions. La pile d'affichage, push et pop. Nous allons apprendre tout sur la fonction n'est pas dans une section ultérieure. Sois patient pour l'instant. Les fonctions de la pompe de poussée ont effectué ces deux tâches. Le code ajoute la pile d'affichage pour le rendre plus facile de voir le contenu de la pile est nécessaire. Len est une fonction intégrée en Python, vous pouvez utiliser le len pour obtenir la longueur d'une chaîne donnée, tableau, liste, tuple, dictionnaire, etc. Les exercices de code restants dans la pile montrent sa fonctionnalité en poussant des valeurs dessus, puis en les supprimant. Pour les principales sections d'exercice, les tests, la fonctionnalité de pile, exécutez le code et regardez comment Python remplit le sac avec des informations, puis affiche un affichage à l'écran. La pile contient actuellement trois valeurs, 123, appuyez sur Entrée. L' application tente de pousser une autre valeur sur la pile. Cependant, la pile est pleine, de sorte que la tâche échoue. Appuyez à nouveau sur Entrée. Les pompes d'application de valeur à partir du haut de la pile. Rappelez-vous que trois est le haut de la pile. C' est donc la valeur qui manque. Entrez à nouveau, et l'application tente d' afficher plus de valeurs de la pile qu'elle contient, entraînant une erreur et une pile est vide. C' est un bon exercice pour visualiser l'exécution de Python Tutor.com étape par étape. Merci d'avoir regardé. 89. Recherche et tri des listes: La possibilité de rechercher une liste est essentielle si vous voulez rendre les tâches de maintenance plus faciles à gérer. Le code suivant vous aide à créer une application qui démontre la possibilité de rechercher des valeurs spécifiques dans une liste. Prenez le code suivant dans l'éditeur. L' exemple commence par créer une liste nommée produits Apple qui contient les noms de produits Apple. Il crée également une variable nommée produits Apple select pour contenir le nom des produits Apple que l'utilisateur souhaite trouver. L' amplification entre dans une boucle où l'utilisateur est invité à indiquer un nom de produit Apple placé dans les produits Apple. Tant que cette variable ne contient pas le mot quit, elle continue une boucle qui demande l'entrée. Chaque fois que l'utilisateur saisit un nom de produit Apple, l'application demande à la liste de compter le nombre de produits Apple hors devises. Lorsque la valeur est égale ou supérieure à un, la liste contient le produit Apple et un message inapproprié apparaît à l'écran. D' autre part, lorsque la liste n'inclut pas couleur demandée dans le message alternatif apparaît à l'écran. Sauvegardons et exécutons le code. Python vous demande de taper le nom du produit Apple, taper iPad Entrée et un message vous indiquant que l'iPad existe dans la liste s'affiche. Maintenant, tapez iMac et vous voyez un message vous indiquant que l'iOS n'existe pas. Tapez quit et l'application se termine. L' ordinateur peut localiser les informations dans une liste, quel que soit l'ordre dans lequel elles apparaissent. Les listes plus longues sont plus faciles à rechercher lorsque vous les mettez dans un ordre trié. Cependant, la principale raison de mettre une liste dans l'ordre trié est de rendre plus facile pour l'utilisateur humain de voir la liste d'informations contient. Nous allons faire un exemple qui commence par une liste non triée. Il trie ensuite la liste et la renvoie à l'affichage. Le code suivant montre comment effectuer cette tâche. L' exemple commence par créer une gamme de produits Apple. Les produits Apple sont actuellement dans un ordre non trié. L' exemple imprime ensuite les produits et l'ordre dans lequel ils apparaissent. Notez que l'utilisation d'un argument pour la fonction d'impression permet de s'assurer que tous les produits et les arbres restent sur une seule ligne, ce qui facilite la comparaison. Tri la liste est aussi facile que d'appeler la fonction de tri après l'exemple appelle la fonction de tri qui imprime à nouveau la liste afin que vous puissiez voir le résultat. Exécutez le code. Il s'agit d'une erreur de nom car cet élément est différent de cet élément, mettez majuscule la première lettre. Alors changeons cela aussi. Je vais laisser un espace à l'intérieur de guillemets doubles. Exécutez à nouveau, et Python affiche à la fois les listes non triées et triées. Vous devrez peut-être trier les éléments dans l'ordre inverse à certains moments pour accomplir cette tâche, vous utilisez la fonction inverse. La fonction doit apparaître sur une ligne distincte. Donc, ajoutez la ligne de code suivante ici. Exécutez à nouveau le code et voyez les produits dans l'ordre inverse. Merci d'avoir regardé. 90. Boucle par l'intermédiaire d'un dictionnaire: Hé les gars, qu'est-ce qui se passe ? Dans cette vidéo, vous allez apprendre à faire une boucle à travers un dictionnaire. Ok, allons nous mettre à l'action. Comme vous le savez déjà, un dictionnaire peut contenir des paires de valeurs clés. dictionnaire peut avoir quelques entrées, mais parfois ils contiennent de grandes quantités de données, peut-être des millions de paires. C' est pourquoi il est bénéfique de faire une boucle à travers un dictionnaire. L' exemple suivant que je vais écrire a un dictionnaire avec des noms d'utilisateur et des mots de passe de trois utilisateurs. Je veux imprimer toutes les informations stockées dans le dictionnaire ci-dessus en utilisant un type de boucle pour le code suivant. Examinons le code de la deuxième ligne. La boucle for a besoin de variables qui contiendront le nom d'utilisateur et le mot de passe dans chaque paire. Vous pouvez choisir le nom que vous voulez pour ces deux variables. Après ces deux variables, nous utilisons les éléments de méthode qui renvoie une liste de paires de valeurs clés. La boucle for-stocke chacune de ces paires dans les deux variables fournies. Dans la ligne suivante, nous mettons le nom d'utilisateur et le mot de passe, la barre oblique inverse n. La première instruction d'impression assure qu' une ligne vide est insérée avant chaque paire de valeur de clé dans la sortie. Maintenant, voyez le résultat dans le shell Python. Nous pourrions copier le programme et le coller dans Python Tutor.com si nous voulions le voir en action étape par étape. Super. Merci de regarder et je vous verrai dans le prochain tutoriel vidéo, apprentissage heureux. 91. Remplacer la déclaration de commutateur par un dictionnaire: La plupart des langages de programmation fournissent une sorte d'instruction switch. Une déclaration de commutation fournit des types de menus élégants, des élections. L' utilisateur est plusieurs options, mais est autorisé à choisir seulement l'une d'entre elles. Le programme prend un certain plan d'action basé sur la sélection de l'utilisateur. Voici un exemple d'un autre langage de programmation. Malheureusement, Python ne vient pas avec une instruction switch. Cependant, à l'aide d'un dictionnaire, vous pouvez simuler l'utilisation d'une instruction switch. Prenons le code suivant pour démontrer la technique requise. Chacune de ces fonctions définit une tâche associée à la sélection d'une option de couleur à l'écran. Un seul d'entre eux est appelé à un moment donné. Continuons à taper le code du dictionnaire. Ce code est le dictionnaire. Chaque clé est comme la partie casse d'une instruction switch, la valeur spécifie ce qu'il faut faire. Enfin, nous allons taper l'interface utilisateur fait partie de l'exemple de code. Commence par la création d'une sélection de variable d'entrée. Ensuite, il va dans une boucle jusqu'à ce que l'utilisateur entre une valeur de trois. Au cours de chaque boucle, l'application affiche une liste d'options, puis attend l'entrée de l'utilisateur. Lorsque l'utilisateur fournit une entrée, l'application effectue une vérification de plage sur elle. Exécutons le code. Python affiche le menu qui vous attend pour sélectionner une option de type 0 et entrez l'application qui vous indique que vous avez choisi le rouge, puis affiche à nouveau le menu. Tapez maintenant trois et appuyez sur Entrée. L' application se termine. Comme toujours, vous pouvez visualiser votre code étape par étape en utilisant Python Tutor.com. Merci d'avoir regardé. 92. Travailler avec l'objet de contre-: Parfois, vous avez une source de données et vous avez simplement besoin de savoir à quelle fréquence les choses se produisent, comme l'apparition d'un élément spécifique dans la liste. Lorsque vous avez une liste restreinte, vous pouvez simplement compter les éléments. Cependant, lorsque vous avez une longue liste, obtenir un comptage précis est presque impossible. Les objets de compteur, comptez les éléments rapidement. Faisons un exemple qui crée une liste avec des éléments répétitifs, puis compte combien de temps ces éléments apparaissent. Tapez le code suivant. Pour utiliser l'objet compteur, vous devez l'importer à partir de collections. L' exemple commence par créer une liste. Avec des éléments numériques répétitifs. Vous pouvez facilement voir que certains éléments apparaissent plus d'une fois, comme le numéro un, l'exemple placé dans la liste dans un nouvel objet compteur, compteur de liste. L' application imprime un compteur de liste de différentes manières. La première sortie est le compteur tel qu'il apparaît sans aucune manipulation. La deuxième sortie imprime les éléments uniques individuels dans ma liste et le nombre de fois que chaque élément apparaît. Pour obtenir à la fois l'élément et le nombre de fois qu'il apparaît, vous devez utiliser la fonction de l'élément comme indiqué. Enfin, l'exemple montre comment obtenir un nombre individuel à partir de la liste en utilisant la fonction get. Exécutez le code et Python affiche les résultats de l'utilisation de l'objet compteur. Merci d'avoir regardé. 93. Quelles sont les fonctions: Les fonctions sont un moyen simple de regrouper les actions avec elles. Vous pouvez effectuer plusieurs groupes d'actions à plusieurs reprises sans avoir à retaper toutes les fonctions de code. Laissez-vous expliquer ce que y et la fonction vous permettent de réutiliser votre code. Pour utiliser une fonction. Vous devez un pour trouver la fonction elle-même et pour appeler ou appeler la fonction. Voici un exemple simple qui récompense votre programme Hello World en utilisant une fenêtre de shell Python ouverte. Appuyez deux fois sur Entrée pour revenir à l'invite de commandes. Ça ne fait rien. Maintenant, vous devez appeler la fonction pour la faire fonctionner. Python appellera la fonction si vous écrivez le nom de la fonction suivi de parenthèses, bloc de code d' une fonction est la ligne suivant l'instruction def jusqu'à mais sans inclure la ligne suivante qui est indentée de la même manière que l'instruction def. Lorsque le Python atteint la fin de la fonction, il saute à l'endroit où la colonne s'est produite, là-bas avec les parenthèses. Les règles pour nommer une fonction ou beaucoup comme les règles pour nommer une variable. Ils doivent commencer par une lettre ou un trait de soulignement. Ils devraient être en minuscules. Ils ne peuvent pas avoir de chiffres. Ils peuvent être n'importe quelle longueur, mais gardez-les courts. Ils ne peuvent pas être les mêmes qu'un mot-clé Python. Les fonctions ont un type spécial de commentaire appelé une chaîne doc. Le but principal d'une docstring est d'expliquer ce que la fonction est censée faire. Cela signifie que quelqu'un regardant à travers votre code comprendra ce que la fonction fait sans comprendre le code lui-même. Pour créer une docstring, ajoutez un littéral de chaîne entre guillemets triples comme première ligne du bloc de code de la fonction. Comme notre exemple, les fonctions sont des outils extrêmement utiles et puissants dans la boîte à outils de programmation car elles vous permettent séparer votre programme en blocs significatifs. Dans la prochaine conférence, nous allons expliquer certaines fonctions Python intégrées. Merci d'avoir regardé. 94. Construit dans des fonctions: Bonjour les étudiants et félicitations, vous avez fait jusqu'ici. Maintenant, vous êtes familier avec les boucles et probablement commencé à créer vos propres petits projets. Dans ce tutoriel vidéo, nous allons apprendre quelques-unes des fonctions intégrées les plus utiles en Python. Commençons avec la fonction len. La fonction len compte la longueur d'un mot. Ainsi, vous pouvez passer la fonction len d'une valeur de chaîne ou d'une variable contenant une chaîne. Et la fonction évalue la valeur entière du nombre de caractères dans cette chaîne. Faisons quelques exemples dans le shell. Type. Le résultat est cinq parce qu'il y a cinq caractères dans le mot bonjour. Un autre exemple. abord, le programme demande à l'utilisateur d'entrer son nom, taper votre nom et d'appuyer sur Entrée. Ensuite, Python compte le caractère du nom et affiche le résultat. Super. Si vous voulez créer une liste de nombres, vous pouvez convertir le résultat d'une plage directement en liste à l'aide de la fonction de liste. La fonction de plage facilite la génération d'une série de nombres. Ensuite, vous pouvez utiliser la fonction de liste pour convertir ce même ensemble de nombres en liste. Ok, voyons ça dans le type d'action. On a fait une liste de numéros de 1 à 9. Enfin, certaines fonctions intégrées qui nous aident à calculer des statistiques simples comme minimum, maximum et d'autres, j'ai déjà fait une liste appelée num. Dactylographions. Le résultat en est un. Bien sûr. Le résultat est neuf. Le résultat est 45. Il y a des dizaines de fonctions intégrées en Python, mais ne vous inquiétez pas, vous n'apprendrez que les fonctions utiles. Merci d'avoir regardé. 95. Définir votre fonction: Bienvenue à tout le monde. Une fonctionnalité pratique de Python est de définir vos fonctions et de les utiliser dans tout le programme. Créez votre fonction. Oui, c'est exact. Voici la syntaxe pour définir une fonction. Maintenant, expliquons la syntaxe en détail. L' instruction def indique au programme que le code de la ligne suivante fait partie de la fonction. Return est utilisé pour renvoyer une réponse de la fonction. Une fois que la fonction exécute l'instruction return, la fonction se ferme. Si votre fonction n'a pas besoin de retourner une valeur, cette instruction return est inutile ou vous pouvez écrire return none. Maintenant, définissons notre première fonction, ouvrez inactif et tapez. Dans la première ligne, nous tapons le titre contient sourd et le nom d'une fonction, parenthèses et enfin un deux-points. La ligne suivante forme le corps de la fonction. Maintenant, exécutez le programme. Toute la définition définit la signification du nom my_function, mais elle ne fait rien d'autre. La définition elle-même ne fait pas encore imprimer quoi que ce soit. C' est pourquoi vous ne pouvez rien voir et visiblement dans shell après que Idol ait terminé l'exécution d'un programme, cependant, sa version du shell se souvient des définitions de fonctions du programme. Maintenant, dans le shell Enter. Python revient en arrière et regarde la définition, puis exécute le code dans la définition de la fonction, et bien sûr imprime le message. Essayons quelque chose de différent maintenant. Type. Rien ne se passe sans parenthèses. Il identifie le code de fonction est la valeur et donne l'emplacement en mémoire du code. Bon, maintenant une fonction utilisant l'instruction return. Dans ce programme, nous définissons une fonction avec deux nombres et retournons la somme de ces nombres. Tapez l'interpréteur de commandes. Entrez. Pouvez-vous deviner pourquoi nous avons eu cette erreur de syntaxe ? La réponse est simple. Nous n'avons pas appuyé deux fois sur Entrée après cette ligne, donc nous n'avons pas réellement défini la somme de la fonction deux nombres. Réexécutons la fonction. Ok, tapez maintenant. Bien sûr, le résultat est 11. J' espère que nous avons un aperçu de la façon de définir nos fonctions. Merci d'avoir regardé. 96. Plus intégré dans des fonctions: Bienvenue à tout le monde. Dans cette leçon, nous allons examiner cinq fonctions intégrées qui sont couramment utilisées par les programmeurs Python. Je vais décrire ce qu'ils font et comment les utiliser, puis vous montrer des exemples de la façon dont ils peuvent vous aider dans vos programmes. La fonction ABS renvoie la valeur absolue d'un nombre, qui est la valeur d'un nombre sans son signe. Par exemple, la valeur absolue de dix est dix et la valeur absolue de dix négatif est dix. Pour utiliser la fonction ABS, il suffit de l'appeler avec les nombres ou la variable comme paramètre comme celui-ci. Vous pouvez utiliser la fonction ABS pour faire quelque chose comme calculer une quantité absolue de mouvements d'un personnage dans un jeu, quelle que soit la direction dans laquelle le personnage de voyager. Par exemple, disons que le personnage prend trois pas à sa droite, trois positifs, puis dix pas à sa gauche, dix ou moins dix. Si nous ne nous soucions pas de la direction positive ou négative, la valeur absolue de ces nombres serait 310. Vous pouvez l'utiliser dans un jeu de société où vous lancez deux dés, puis déplacez votre personnage ou nombre maximum de timbres dans n'importe quelle direction en fonction du total des dés. Maintenant, si nous stockons le nombre d'étapes dans une variable, nous pouvons déterminer si le caractère se déplace avec le code ci-dessous. Il se peut que nous souhaitions afficher certaines informations lorsque le personnage est conçu pour se déplacer. Dans ce cas, nous allons juste afficher le caractère est en mouvement. Si nous n'avons pas utilisé l'instruction if pourrait ressembler à ceci. Comme vous pouvez le voir, l'utilisation de l'ABS rend la déclaration juste un peu plus courte et plus facile à comprendre. Le nom Bool est abrégé pour Boolean. Le mot programmeurs utilise pour décrire un type de données qui peut avoir une ou deux valeurs possibles, généralement vraies ou fausses. La fonction bool fait un seul paramètre et renvoie true ou false en fonction de sa valeur. Lorsque vous utilisez bool pour les nombres, 0 renvoie false tandis que tout autre nombre renvoie true. Voici comment vous pouvez utiliser bool avec différents nombres. Lorsque vous utilisez bool pour d'autres valeurs comme des chaînes, il renvoie false s'il n'y a pas de valeur pour la chaîne, en d'autres termes, le mot-clé none ou une chaîne vide. Sinon, il retournera true comme indiqué ici. La fonction bool retournera également false pour les listes, les tuples et les cartes qui ne contiennent aucune valeur sont vraies quand elles le font. Vous pouvez utiliser bool lorsque vous décidez si une valeur a été centrée sur. Par exemple, si nous demandons aux utilisateurs de notre programme de saisir l'année de leur naissance, notre déclaration if pourrait utiliser bool pour tester la valeur qu'ils entrent. La première ligne de cet exemple utilise l'entrée pour stocker quand quelqu'un d'autre entre sur le clavier est l'année variable. Appuyez sur Entrée sur la ligne suivante sans taper autre chose, stocke la valeur de la touche Entrée et de la variable. Sur la ligne suivante, l'instruction if vérifie la valeur booléenne de la variable après avoir utilisé la fonction rstrip, qui supprime tous les espaces dans les caractères Andrew de la fin de la chaîne. Parce que l'utilisateur n'a rien saisi. Dans cet exemple, la fonction bool renvoie false car cette instruction if utilise le mot-clé not. C' est une façon de dire, faites-le si la fonction ne retourne pas true. Et donc le code imprime, vous devez entrer une valeur pour l'année de votre naissance. Sur la ligne suivante. La fonction eval, abrégée pour evaluer, prend une chaîne comme paramètre et l'exécute comme s'il s'agissait d'une expression Python. Par exemple, Eval Print, Wow, exécutera réellement l'impression de la déclaration. Eh bien, la fonction eval ne fonctionne qu'avec des expressions simples telles que ce qui suit. Et la fonction eval est souvent utilisée pour transformer l'entrée utilisateur en expressions Python. Par exemple, vous pouvez écrire un programme de calculatrice simple qui lit les équations entrées dans Python, puis calculer une barre oblique évalue les réponses. Comme une entrée utilisateur est lue comme une chaîne, Python doit la convertir en nombres et en opérateurs avant de faire des calculs. La fonction eval rend cette conversion facilitant. Dans cet exemple, nous utilisons l'entrée pour lire ce que l'utilisateur entre dans votre variable, votre calcul de soulignement. Sur la ligne suivante, nous entrons l'expression cinq fois 20, peut-être votre âge multiplié par le nombre de semaines dans une année. Nous utilisons l'e-mail pour effectuer ce calcul et le résultat est imprimé sur la ligne finale. La fonction exacte est comme le mal, sauf que vous pouvez l'utiliser pour exécuter des programmes plus compliqués. La différence entre les deux est que l'e-mail renvoie une valeur, quelque chose que vous pouvez enregistrer en tant que variable aussi exacte que non. Voici un exemple. Dans les deux premières lignes, nous créons une variable avec une chaîne multiligne contenant deux instructions d'impression, puis utilisons l'exécuteur sur la chaîne. Vous pouvez utiliser exactement, exécuter de nombreux programmes à votre programme Python lit à partir de fichiers, vraiment des programmes à l'intérieur des programmes. Cela peut être très utile lors de l'écriture de longues applications compliquées. Par exemple, vous pouvez créer un jeu de robot. Nous sommes deux robots se déplacent autour d'un écran et essayent de s'attaquer l'un l'autre. Les joueurs du jeu fourniraient les instructions pour leurs robots. Comme de nombreux programmes Python que les robots gagneraient liraient dans ces scripts et utiliseraient l'exécution exacte. La fonction de plage, comme nous l'avons vu précédemment, est principalement utilisée dans les boucles, pour faire une boucle à travers une section de code un nombre spécifique de fois les deux premiers paramètres donnés pour organiser ou appelé le début et l'arrêt. Vous avez vu la plage de ces deux paramètres dans l'exemple précédent en utilisant la fonction len pour travailler avec une boucle. Les nombres générés par la plage commencent par le nombre donné en tant que paramètre de bourse et N avec un nombre qui est inférieur de un au second paramètre. Par exemple, ce qui suit montre ce qui se passe lorsque nous imprimons les nombres que la plage crée entre 05. La fonction range renvoie en fait un objet spécial appelé un itérateur qui répète une action d'un certain nombre de fois. Dans ce cas, il renvoie le nombre le plus élevé suivant chaque fois qu'il est appelé. Vous pouvez convertir l'itérateur en liste à l'aide de la liste des fonctions. Si vous imprimez ensuite la valeur de retour lors de l'appel de la plage, vous verrez également les numéros qu'elle contient. Vous pouvez également ajouter un troisième paramètre à la plage appelée étape. Si la valeur de l'étape n'est pas incluse, le numéro un est utilisé comme étape par défaut. Mais que se passe-t-il quand nous passons le numéro deux comme étape ? Voici le résultat. 97. Scopes mondiales et locales: La portée est quelque chose qui est initialement difficile à comprendre lors du démarrage de la programmation et globals, les locaux et les vars vous permettent de comprendre la portée un peu mieux. Cela est mieux démontré dans le contexte d'un programme. Donc, ici, vous pouvez voir un programme avec un être égal à un étant égal à la chaîne globale et c est égal à la chaîne un autre global. Mais comme vous le savez peut-être dans une fonction, les mêmes noms de variables peuvent être redéfinis avec valeurs différentes et ils ne feront pas référence à la même variable réelle. Donc, ici, définissant une fonction où a est défini sur deux, b est en cours de définition sur ces chaînes locales. Et puis ces deux valeurs seront imprimées. Pendant ce temps, dans la portée de notre Main, nous allons imprimer les valeurs de a et B. Ensuite, appelons la fonction, qui imprimera ces valeurs, en ayant à trouver des valeurs locales d'entre elles. Et puis nous allons imprimer à nouveau a et B pour voir si oui ou non ils ont été modifiés en permanence pendant leur fonctionnement. Voyons ce programme en cours d'exécution. Vous pouvez voir ici qui étaient dans la portée globale. Donc c'est cette ligne ici. Et là, nous avons les versions locales de a et b en cours d'impression. Ensuite, une fois que nous sommes de retour dans la portée globale, a et B sont de retour avec des valeurs auxquelles nous nous attendrions là-bas. Maintenant, il est parfois difficile de savoir quelles variables ont été définies ou disponibles pour vous dans une portée donnée. Cet exemple est un programme assez simple, mais comprendre ce qui se passe est un programme plus compliqué et cela peut être plus difficile. Une fonction qui est particulièrement utile est vars. Si nous imprimons vars, Il montrera quelles variables sont disponibles dans cette portée, et il les imprimera sous la forme d'un dictionnaire. Exécution du programme. Vous pouvez voir que nous avons imprimé vars, les variables disponibles dans cette portée locale, R, a est égal à deux et b est égal à Local, qui est ce qui a été imprimé. Cependant, si nous prenons ce code de cette ligne, donc exactement la même chose. Imprimer des vars. Si nous mettons cela ici après que nous sommes de retour dans la portée globale, vous verrez qu'il y a plus de valeurs disponibles. Donc, ici, nous avons ce dictionnaire beaucoup plus grandes valeurs. Mais la chose la plus importante est pour nous à ce stade, c'est que a est égal à un, B égal à global, et C a une valeur d'un autre global. Donc différentes valeurs sont disponibles en fonction de la portée dans laquelle nous sommes. Comme vous l'avez vu, ce sont les vars qui sont disponibles dans la portée globale. Et au lieu d'imprimer, vars, peut imprimer en utilisant les globaux de fonction, ce qui nous donne les variables de portée globale à tout moment. Donc, ici, vous pouvez voir qu'il donne la même sortie parce que les vars sont les vars globaux lorsqu'ils sont imprimés dans la portée globale. Cependant, je pense que cela pourrait bouger légèrement l'eau parce que c'est une fonction différente. Il n'illustre pas la différence entre les variables disponibles dans la fonction. Et la portée globale sont les mêmes parce que vous pouvez imprimer des globaux à l'intérieur de la fonction. Donc, si cela est imprimé à l'intérieur de la fonction. Donc, si nous déplacons globaux pour être imprimés à l'intérieur de la fonction, vous pouvez voir que ce sont les variables locales et ce sont les variables globales. Si cela est imprimé, vous pouvez le voir exactement en même temps. La valeur globale de a est un et b est globale, tandis que a est 2x et B est locale. Donc, ça peut devenir un peu déroutant. Mais il est certainement vraiment utile de pouvoir imprimer des vars parce que vous pouvez comprendre quelles variables sont disponibles pour vous au moment dans cette portée. Et si vous n'êtes pas sûr de quelle portée de la fonction fonctionne, vous pouvez utiliser vars pour comprendre ce qui se passe. Mais il y a quelque chose d'autre qui boue aussi légèrement l'eau, ce qui est si nous soulignons Voir, ce n'est pas défini dans cette fonction. Donc, si nous ne pouvons pas le trouver dans la portée locale, il verra alors la valeur de celui-ci à partir de la portée globale. Donc, si nous exécutons cela, vous pouvez voir que malgré le fait qu'il n'est pas défini dans la portée locale, voit accessible à partir de la portée globale de la ligne trois, car il n'est pas défini dans cette fonction. C' est quelque chose dont vous avez besoin pour passer un peu de temps à vous débrouiller la tête. Mais une fois que vous l'aurez compris, cela vous aidera à comprendre ce qui se passe en général. Mais il est facile de se dire en noeuds, principalement si vous utilisez les mêmes noms de variables dans une fonction qu'en dehors d'une fonction. Donc, le a local est différent de l'assurance-emploi mondial , c'est pourquoi peut devenir déroutant. Et c'est une bonne idée de ne pas nommer vos variables locales avec le même nom qu'une variable globale. 98. PROJET : Jeu de l'apparition améliorée (version 2) - PARTIE 1: Bon, parlons de la façon dont vous pouvez améliorer votre projet de jeu de devinettes. Nous avons appris sur les fonctions, donc nous sommes prêts à les appliquer dans ce projet, vous pouvez prendre ces connaissances et convertir votre projet et jeu de devinettes pour qu'il utilise des fonctions. La première étape consiste à ajouter un module ne rétrécit pas au début du fichier pour expliquer ce que fait le programme, nous pouvons utiliser des guillemets doubles triples au début et à la fin de la docstring. Maintenant, nous sommes prêts à le mettre à jour et à utiliser une fonction. Nommons la fonction comme devinez ronde. Nous allons créer un talon de fonction pour faire deviner rond. Maintenant, quelle est la fonction stub ? Si vous savez que vous allez avoir besoin d'une fonction, mais que vous n'êtes pas sûr des détails. Vous pouvez utiliser le mot clé de passe et laisser le bloc de code à remplir ultérieurement. Une fonction vide comme celle-ci, un stub vous permet de définir la fonction. Il échouera s'il n'y a pas de blog de code, mais nous allons travailler les détails plus tard. Il s'agit principalement d'un lieu pour vous aider à organiser vos pensées. Si vous incluez la docstring, vous n'avez besoin d'aucune instruction de chemin d'accès. Il a probablement été examiné, inclure la docstring, indenter le code pour le faire partie du bloc de code de fonction. Maintenant, vous pouvez ajouter une ligne à la toute fin du programme pour faire la fonction de tour de deviner. Exécutons le programme. Évidemment, il y a un problème. Le jeu ne redémarre pas. Pouvez-vous comprendre pourquoi ? Droit ? Nous devons ajouter une ligne qui appelle la fonction do devine round à l'intérieur de la boucle. Essayons encore. Maintenant, le programme redémarre. Regardez que chaque fois que le jeu redémarre, l'ordinateur répond exactement de la même manière. Et ce n'est pas comme ça que le jeu devrait fonctionner. L' ordinateur doit choisir un nombre différent pour chaque tour. Arrêtons le code avec le contrôle plus c. Parce que le nombre est le même à chaque fois. C' est probablement un problème avec la façon dont il est stocké ou choisi. Pensez à la façon dont le chemin de Python le suit lorsqu'il traverse ce code et où le choix du nombre se produit concernant ce flux. J' ai essayé de comprendre pourquoi. Maintenant, résolvons ce problème de logique. Le programme continue de deviner le même nombre en raison d'un problème avec l'emplacement aléatoire de la fonction INT Rand. Le programme passe par ces étapes lorsque vous exécutez le programme, l' un exécute l'importation, deux choisit un nombre aléatoire, trois attribue une valeur à une invite pour définir une fonction, mais ne l'exécute pas encore. Cinq commence une boucle. Six appelle à plusieurs reprises la fonction de l'intérieur de la boucle sans choisir un nombre aléatoire. Quand il appelle la fonction, le nombre aléatoire n'est pas choisi à nouveau, les mêmes nombres choisis à chaque fois. Vous pouvez le réparer en mettant le code, choisissant le numéro à l'intérieur de la fonction. Vous pouvez générer l'arrondi en ajoutant des instructions d' impression pour préciser quand un nouveau cycle a commencé. Vous le faites en plaçant le code des instructions d'impression dans une boucle while. En outre, supprimez la fonction ronde Dugas de l'intérieur de la boucle. L' ajout d'une nouvelle ligne, le choix d'un nombre aléatoire à l'intérieur de la fonction résout un problème de logique. Si c'est tout ce que vous allez faire, vous supprimerez la première référence au numéro de soulignement des ordinateurs. Vous ne le supprimez pas parce que je veux que vous remarquiez deux choses. abord, le programme semble fonctionner comme s'il y avait deux variables nommées numéro d'ordinateurs. Deuxièmement, même si les nouvelles valeurs continuent d'être assignées à une variable nommée numéro d'ordinateurs à l'intérieur de la fonction. Ces affectations ne modifient pas la valeur en dehors de la fonction. Exécutez le programme. Maintenant, pour voir que ça arrive. Ça marche bien. Arrêtez le code avec le contrôle plus C. Voici un excellent exemple d'une portée variable que nous avons discuté dans une leçon précédente dans le code précédent. Et le nom numéro d'ordinateurs est utilisé plus d'une fois. Il y en a un à l'intérieur de la fonction qui devine rond et un défini en main. Mais jamais les deux ne se rencontreront. C' est comme s'ils étaient dans des dimensions différentes. Ce qui arrive à l'une dans une dimension n'arrive pas à l'autre. En fait, chaque fois que la fonction ne devine round est appelée. La variable est une variable différente, mais elle a le même nom. Le programme ne se souvient pas de la valeur qu'il avait dernier stand, la fonction a été appelée variables qui définissent à l'intérieur d'une fonction sont appelées variables locales. Cela signifie que lorsque vous choisissez le nom d'une variable à l'intérieur de votre fonction, vous n'avez pas besoin de vous souvenir des noms de toutes les autres variables que vous avez déjà utilisées. partie 1 du jeu de devinettes est terminée. Étudiez à nouveau ce que vous avez fait jusqu'à maintenant, et si vous êtes prêt, passons à la deuxième partie. Merci d'avoir regardé. 99. PROJET : Jeu de Improved (version 2) - PARTIE 2: Maintenant, il est temps d'accélérer votre jeu un peu en ajoutant un score et un moyen plus facile de quitter, vous ne pouvez pas vous attendre à ce que votre utilisateur sache sur le contrôle plus C, le programme sera changé. Ainsi, ce genre de garde une trace du nombre de tours que l'utilisateur a joué et du nombre total de suppositions faites à partir desquelles le nombre moyen de suppositions peut être calculé. Pour le suivi des tours, la première étape consiste à ajouter une variable appelée « total rounds » au programme principal. Ensuite, vous devez incrémenter l'augmentation d'un total de tours dans les parties principales tout en boucle. Pour le suivi des suppositions, la première étape consiste à ajouter une variable appelée devinettes totales. Dans la fonction ronde Dugas. Le programme garde une trace du nombre de suppositions qui avaient été faites pendant la fonction. Nom partie du programme ne peut pas accéder aux variables dans la fonction. Ils sont locaux à cette fonction. Nous nommerons ce nombre variable de suppositions pour obtenir la valeur à la partie principale du programme. Ils sont retournés par le mot-clé return et stockés dans une variable appelée this round. Un total en cours de suppositions est limité en ajoutant cette valeur aux suppositions de soulignement totales variables. Ceci est ensuite utilisé pour calculer le nombre moyen de suppositions par tour étant le nombre total de suppositions divisé par le nombre total de tours. Le flux intégré est utilisé pour quatrième Python pour utiliser l'arithmétique décimale plutôt qu'entier. Certaines des instructions d'impression de la boucle while True ont été modifiées et d'autres ont été ajoutées pour donner à l'utilisateur plus d'informations sur le tour. Exécutez le programme pour voir que cela fonctionne. Cool. Maintenant, arrêtez le programme et revenez à l'éditeur. C' est la fin de la deuxième partie. vous plaît pratiquer ce que vous avez appris, puis continuer jusqu'à la dernière partie de notre jeu de devinettes Python. 100. PROJET : Jeu de Improved 3 (version 2) - PARTIE 3: Bienvenue à tout le monde. Dans la dernière partie du projet, nous allons penser à une solution quand un utilisateur peut quitter le programme en tapant la lettre Q. Alors plongons dans. Les utilisateurs ne veulent généralement pas quitter quelque chose en tapant accidentellement quelque chose. Donc, au lieu de quitter immédiatement, une routine demande à l'utilisateur de confirmer l'arrêt. La réponse par défaut sera oui. Nous allons d'abord créer la fonction pour confirmer la fermeture. Voyons les étapes un par 11 créer un message constant de confirmation équipé à utiliser comme une invite pour confirmer le Quit, pour créer une fonction appelée confirmer quit, puis confirmer la fonction quitter, demander à l'utilisateur de confirmer en tapant pourquoi utiliser l'entrée, les joueurs demandent des entrées et la réponse est stockée dans une variable appelée confirmation. Confirmer avec l'utilisateur tapé est n, puis la fonction confirm quit renvoie false. Cela signifie que le programme devrait abandonner la guerre trébuchée. Confirmer est autre chose, y compris l'utilisateur appuyant sur Entrée sans appuyer sur une autre touche ou même un N majuscule, alors la fonction retournera true, confirmant que l'utilisateur veut quitter. Par défaut, la fonction confirme la fermeture plutôt que de l'abandonner. Cela suppose que la plupart du temps votre utilisateur veut vraiment quitter le jeu. Maintenant, nous allons continuer à définir un texte de trait de soulignement constant pour contenir la lettre Q, ce qui est ce que l'utilisateur doit appuyer s'il veut quitter. Vous pouvez leur demander de faire un numéro de retour arrondi qui ne sera jamais un nombre valide de suppositions. Quelque chose comme minus1 est idéal puisque le nombre de suppositions ne peut jamais être négatif. Vous pouvez également choisir un nombre comme 100 mille en supposant que personne ne fera jamais autant de suppositions. Ma préférence est minuscule 1. Ensuite, définissez un programme de fermeture constante que vous êtes faire la fonction arrondie deviner retournera si l'utilisateur quitte, assigné la valeur de moins un à quitter. Azure nouvelles constantes après importation aléatoire dans la fonction do deviner round à une vérification pour voir si l'utilisateur a tapé q plutôt qu'un nombre. S' ils ont appelé la fonction Confirmer Quit pour confirmer. Si l'appel pour confirmer quit renvoie la valeur true, puis quittez. Rendre le programme de retour de bloc de code quittant. Cela laisse la fonction et retourne la valeur de moins un. Si ce n'est pas le cas, faites le bloc de code continuer, faites-le la seule ligne dans le bloc de code. Le mot-clé continue fait un redémarrage de boucle en haut du bloc de code de la boucle, en fonction du type de boucle, cela peut également signifier que le compteur de boucles est incrémenté. Votre nouveau code devrait aller après la ligne d'entrée. Chaque fois qu'un joueur devine, la supposition est comparée pour voir si elle est identique à celle qu'il quitte le texte de soulignement. C' est q. Si c'est le cas, alors le joueur est invité à confirmer en appelant la fonction de confirmation quittée. Si elle est confirmée, alors devinez round exit, retournant la valeur de moins un, qui est stockée dans la consonne du message de quittance. Ce n'est pas l'utilisateur tapé Q par erreur continue, saute le reste de l'itération actuelle de la boucle et redémarre une nouvelle itération. Puisque le joueur devine dans un nombre, c'est Q, vous obtiendrez une erreur. Pour cette raison, le reste de la boucle doit être ignoré. La dernière chose à faire est de retour en main, vérifiez si le programme de quittance de valeur est retourné à la variable ce tour. Si c'est dû à celui-ci, générez un message de position à imprimer car le code incrémente ce tour car il s'attend à ce que le joueur devine correctement. Il doit être décrémenté lorsque le code du programme quittant est renvoyé. Avant de calculer la position des joueurs, calculez le nombre moyen de suppositions par tour. Le total des suppositions divisé par le nombre total de tours. Pour sortir de la boucle while. À la fin du programme, imprimez le message d'état pour ajouter quelques instructions d'impression à la fin pour imprimer les statistiques. Globalement dans la partie principale du programme. Chaque fois que Python retourne la fonction ronde Dugas, il voit si la valeur du programme equip a été retournée. Si c'est le cas, le programme prépare des messages à imprimer sur la sortie et imprime hors de la boucle while principale. Une fois les messages imprimés, la fin du fichier est atteinte dans le programme se termine. Je vais jeter un coup d'oeil à ce programme maintenant. Il est donc temps d'exécuter le programme final. Jouons trois tours. J' ai oublié le tour total. Cliquons. Courez à nouveau. Et ça marche très bien. Maintenant, je veux vous donner deux défis et je veux que vous teniez de trouver les réponses. Mais d'abord, vous devez regarder les leçons et étudier la section traitant des erreurs. Exécutons à nouveau le programme et sans aucune supposition, appuyez sur le q pour quitter, confirmez avec oui. Et regardez les rondes. Le total des tours est égal à 0. Vous ne pouvez pas diviser avec 0, bien sûr. Le deuxième défi est le suivant. Exécutez le programme à nouveau et au lieu d'un nombre, appuyez sur une lettre est un nombre de devinettes sur une entrée, nous avons une erreur de valeur parce que le programme accepte uniquement des entiers. Vous trouverez les deux solutions aux défis si vous voulez les leçons de la section traitant des erreurs. Wow, tu as fait beaucoup. S' il vous plaît faites vos devoirs, essayez de résoudre le projet par vous-même. Ensuite, vous gagnerez des compétences et apprendrez de nouveaux domaines de Python que vous ne connaissiez pas auparavant. Et cela peut vous donner une grande confiance et être en mesure d' aborder des problèmes plus difficiles plus loin. Si vous avez des questions, je serais ravi de vous aider. Merci d'avoir regardé. 101. Traiter des erreurs: La plupart des codes d'application de toute complexité contiennent des erreurs. Les humains écrivent des applications chez les humains font des erreurs. Cependant, des erreurs peuvent survenir qui ne vous fournissent aucune sorte de notification. Cette section vous explique les différents types d' erreurs et ce qu'il faut faire lorsque votre application les rencontre. La plupart des développeurs appellent des exceptions d'erreur d'application, ce qui signifie qu'elles sont l'exception à la règle. Parce que les exceptions doubles applications actuelles, vous devez détecter et faire quelque chose à leur sujet chaque fois que possible. L' acte de voir et de traiter et d'exception est appelé gestion des erreurs ou gestion des exceptions. Pour détecter correctement les erreurs, vous devez savoir sur les sources d'erreur dans y erreurs avaient été en premier lieu. Lorsque vous remarquez l'erreur, vous devez la traiter en attrapant l'exception. Voir une exception signifie l'examiner et éventuellement faire quelque chose à ce sujet. Parfois, vous l'appelez, détecte une erreur dans l'application. Lorsque cela se produit, vous devez déclencher ou lancer une exception. Vous voyez que les deux termes ont été utilisés pour la même chose, ce qui signifie simplement que votre code a rencontré une erreur qu'il ne pouvait pas gérer. Donc, passer les informations d'erreur sur lui dans un autre morceau de code à gérer. Dans certains cas, vous pouvez utiliser des objets de message d'erreur personnalisés pour transmettre les informations. Même si Python a une mine de messages génériques sur les objets couvrant la plupart des situations, certaines situations ou spéciales. Vous devez savoir comment gérer les exceptions localement. Envoyez-les au code qui a appelé votre code. Quand créer une exception spéciale afin que chaque partie de l'application sait comment gérer l'exemption. Python fournit la clause finale qui s'exécute toujours même lorsqu'une exception se produit. Vous pouvez placer du code pour fermer des fichiers ou effectuer d'autres tâches centrales dans le bloc de code associé à cette clause. Lorsqu' une erreur se produit, les gens disent généralement qu'une application contient un bogue. Les bogues sont simplement des erreurs de codage que vous pouvez supprimer à l'aide d'un débogueur. Un débogueur est un type spécial d'outil qui vous permet d'arrêter ou de suspendre l'exécution de l'application, examiner le contenu des variables et généralement l'application pour voir ce qui le fait cocher. Les erreurs tombent dans des catégories bien définies qui vous aident à prédire dans une certaine mesure la fin où elles se produiront. Les deux types principaux sont des flèches qui se produisent à un moment donné et des erreurs qui sont un type spécifique. Les flèches se produisent à des moments spécifiques. Les deux périodes principales sont le temps de compilation et l'exécution. Une erreur de compilation se produit lorsque vous demandez à Python d'exécuter l'application. Avant que Python puisse exécuter l'application, il doit interpréter le code, mettre dans une forme que l'ordinateur peut comprendre. Si les instructions que vous écrivez manquent d'informations nécessaires. Python ne peut pas effectuer la conversion requise. Heureusement, les erreurs de compilation sont les plus faciles à repérer et à corriger. Temps d'exécution. Une erreur d'exécution se produit après que le python compile le code que vous écrivez et qu'un ordinateur commence à l'exécuter. Les erreurs d'exécution viennent dans plusieurs types différents et certaines sont plus difficiles à trouver que d'autres. Vous savez, vous avez une erreur d'exécution lorsque l'application cesse soudainement de s'exécuter et affiche une boîte de dialogue d'exception. Comprendre les types d'erreur vous aide à localiser les erreurs plus rapidement, plus tôt et de manière plus cohérente, ce qui entraîne moins d'erreurs de diagnostic. L' astuce est de savoir où regarder avec cela à l'esprit, Python dans la plupart des autres langages de programmation casse les erreurs dans les types suivants. Syntactique, sémantique et logique. erreurs syntaxiques, généralement les plus faciles, une erreur logique est généralement la plus difficile. Dans les conférences suivantes, nous examinerons chacun de ces types d'erreurs en détail. Merci d'avoir regardé. 102. Problèmes de syntaxe communs: Lorsque vous rencontrez une erreur de syntaxe pour la première fois, il est utile de savoir pourquoi il y avait un problème et ce que vous pourriez faire pour corriger le déséquilibre intact dans votre code Python. Dans cette leçon, vous verrez quelques-unes des raisons les plus courantes pour lesquelles des erreurs de syntaxe peuvent être déclenchées. Que cela soit dû à une faute de frappe ou à un malentendu de la syntaxe Python. Et le plus important, comment vous pouvez les réparer et les éviter entièrement à l'avenir. Il y a plusieurs cas en Python où vous n'êtes pas en mesure de faire des affectations à des objets. Certains exemples attribuent deux littéraux et des appels de fonction dans le code suivant, vous allez voir quelques exemples qui tentent de le faire et les erreurs de syntaxe résultantes suivent. Donc, ici, nous allons essayer d'assigner cinq à la longueur de bonjour. Maintenant, comme vous pouvez le voir, cela a généré une erreur de syntaxe disant qu'il ne peut pas affecter à une fonction gall. Voici un autre exemple. Impossible d'attribuer au littéral. L' exemple ici tous les deux essayant de faire la même chose, en affectant à une chaîne ou un entier à des littéraux. La même règle est vraie pour les autres valeurs littérales. Encore une fois, les messages de suivi ici indiquent que le problème se produit lorsque vous tentez d'attribuer une valeur à un littéral. Une chose à noter ici est que les exemples dans le shell manquent la ligne de code répétée et la carotte pointant vers le problème et la trace en arrière. Les exceptions et les pistes arrière que vous voyez dans le peu profond ou différent de lorsque vous exécutez le code à partir d'un fichier. Si c'était le code, vous êtes dans un fichier, vous obtenez la ligne de code répétée et vous vous souciez de pointer vers le problème comme vous l'avez vu précédemment. Donc, ce genre d'utilisation abusive de l'opérateur d'affectation est le genre de chose. Je peux dire que je fais plus que ce que je ne devrais pas admettre. Cela a souvent été fait parce que j'oublie le signe égal supplémentaire lorsque j'essaie d'effectuer une comparaison. Donc, voir ce premier exemple corrigé, fait ce que je voulais réellement, qui était de vérifier que la longueur de bonjour est égale à cinq. Et vous pouvez voir qu'il renvoie la valeur true. La plupart du Python sous vent vous indique que vous faites une affectation à quelque chose qui ne peut pas être affecté à. C' est la chose à vérifier d'abord qu'en fait, vous devriez faire une comparaison. Mots clés Python ou un ensemble de mots protégés ayant une signification particulière en Python. Ce sont les mots qui ne peuvent pas être utilisés comme identificateurs, variables ou noms de fonction dans votre code. Ils font partie de la langue et ne peuvent être utilisés que dans le contexte de Python permet, Il existe trois façons courantes que vous pouvez utiliser par erreur des mots-clés, mal orthographier un mot clé, manquant un mot clé, ou mal utiliser un mot clé. Si vous épelez un mot-clé dans votre code Python, vous obtiendrez probablement une erreur de syntaxe. Par exemple, voici ce qui se passe si vous renversez le mot-clé pour incorrectement. Le message lit une erreur de syntaxe, une syntaxe non valide, mais ce n'est pas très utile. Le traceback pointe vers le premier endroit où Python pouvait détecter quelque chose qui ne allait pas. Pour corriger ce type d'erreur, assurez-vous que tous vos mots-clés Python sont correctement orthographiés. Un autre problème commun avec les mots clés est quand vous les manquez tous ensemble. Encore une fois, le message d'exception n'est pas si utile, mais le traceback tente de vous pointer dans la bonne direction. Si vous reculez de la carotte que vous pouvez voir que dans le mot-clé est absent de la syntaxe de la boucle for. Vous pouvez également utiliser à mauvais escient un mot-clé Python protégé. Rappelez-vous que les mots-clés ne peuvent être utilisés que dans des situations spécifiques. Si vous les utilisez de manière incorrecte, vous aurez une syntaxe non valide dans votre code Python. Un exemple courant de ceci est l'utilisation de continuer ou de casser en dehors d'une boucle. Cela peut facilement se produire pendant le développement lorsque vous implémentez des choses et que vous déplacez la logique en dehors d'une boucle. Ici, Python fait un bon travail de vous dire exactement ce qui ne va pas dans cet exemple, la rupture de méthode en dehors de la boucle vous aide à comprendre exactement ce qu'il faut faire. Si ce code était dans un fichier en Python aurait également la carotte pointant directement vers le mot-clé mal utilisé. L' utilisation abusive de continue suit un modèle simple de génération d'une erreur de syntaxe avec un message différent. Un autre exemple est si vous tentez d'attribuer un mot-clé Python à une variable ou d'utiliser un mot-clé pour définir une fonction. Lorsque vous tentez d'affecter une valeur à une passe, ou lorsque vous tentez de définir une nouvelle fonction appelée pass, vous obtenez une erreur de syntaxe et voyez le message de syntaxe non valide. Encore une fois. Il peut être un peu plus difficile de résoudre ce type de syntaxe invalide dans le code Python, car le code semble bien de l'extérieur, si vous appelez, cela semble bon, mais vous obtenez toujours une erreur de syntaxe, alors vous pouvez envisager de vérifier la méthode ou le nom de la fonction que vous souhaitez utiliser par rapport à la liste de mots clés de la version de Python que vous utilisez, la liste des mots-clés protégés est modifiée avec chaque nouvelle version de Python. Par exemple, dans Python 3.6, vous pouvez utiliser une pondération comme nom de variable ou nom de fonction. Mais en tant que Python 3.7, ce mot a été ajouté à la liste des mots clés. Maintenant, si vous deviez utiliser un poids comme nom de variable ou de fonction, et cela provoquera une erreur de syntaxe si votre code s'exécute sur Python 3.7 ou version ultérieure. Un autre exemple est cette impression, qui diffère de Python deux par rapport à Python trois. Print est un mot-clé dans Python 2x, donc vous ne pouvez pas lui attribuer une valeur dans Python trois, cependant, c'est une fonction intégrée qui peut être affectée à des valeurs. Vous pouvez exécuter le code suivant pour afficher la liste des mots-clés dans n'importe quelle version de python que vous exécutez. Un mot-clé fournit également la fonction utile est mot-clé. Si vous avez besoin d'un moyen rapide de vérifier la variable de chemin, vous pouvez utiliser le code suivant. Ce code vous indiquera rapidement si l'identifiant que vous utilisez est un mot clé ou non. Souvent, l'utilisation d'une syntaxe non valide dans le code Python est un vêtement, parenthèses, crochets ou guillemets mal interprétés ou mal assortis . Ceux-ci peuvent être difficiles à repérer des lignes extrêmement longues de parenthèses imbriquées ou des blocs multilignes plus longs. Vous pouvez repérer une inadéquation ou une citation manquée à l'aide des tracebacks de Python. Voici les points de traçage vers le code non valide, où il y a un T et un devis unique après notre précédent devis de clôture. Pour résoudre ce problème, vous pouvez faire l'une des modifications du. Tout d'abord, vous pouvez échapper à la citation unique avec une barre oblique inverse est vu dans l'exemple ici. Nous pouvons déjà voir que le shell met en évidence ce code de manière appropriée. Donc, on dirait que ça va aller. Python est heureux avec elle aussi. La deuxième option consiste à entourer la chaîne entière entre guillemets à la place, comme le montre l'exemple ci-dessous, voyons cela en action. Une fois de plus, vous pouvez voir que le shell met en évidence cela de manière appropriée pour une chaîne. Il semble donc heureux de ce que nous avons fait. De même que Python. Une autre erreur courante est d'oublier de fermer une chaîne avec les deux guillemets doubles dans des chaînes simples. La situation et les tracebacks seront les mêmes. Cette fois, la carotte dans la trace pointe droit vers le code du problème. Ce message d'erreur de syntaxe EOL lors de l'analyse du littéral de chaîne est un peu plus spécifique et utile pour déterminer le problème. Cela signifie que l'interpréteur Python est arrivé à la fin de la ligne, l'EOL, avant la fermeture d'une chaîne ouverte. Pour résoudre ce problème, fermez la chaîne avec un guillemet qui correspond à celui que vous utilisez pour la démarrer. Dans ces cas, le premier serait avec une double citation, le second serait avec une citation unique. citation manquante dans les instructions dans une chaîne F peut également conduire à une syntaxe non valide en Python. Ici, la référence au dictionnaire des âges à l'intérieur de la chaîne F imprimée manque la citation unique de clôture de la référence clé. 103. Devenez un chasseur de bondes: bogues font partie intégrante de la programmation. Une fois que vous avez dépassé le programme le plus simple que vous créez, vous le rencontrerez sans aucun doute. Cela peut être une partie frustrante de l'expérience d'apprentissage, mais vous trouverez souvent que c'est l'expérience la plus enrichissante qui vous enseignera les leçons dont vous avez besoin pour connaître la vantation. Rappelez-vous, personne ne crée de code sans bugs. La clé pour trouver des bugs. Méthodologique. Ce n'est pas utile d'essayer de changer les choses au hasard. Il est préférable d'essayer d'avoir à l'esprit ce que l'ordinateur essaie de faire et de voir s'il fait vraiment ce que vous pensez faire. Beaucoup ont été à l'époque où il est semble qu'il fait ce que je pense qu'il est, mais en fait, j'ai regardé les détails de celui-ci et j'ai peut-être eu de la chance. Et en fait, c'est beaucoup moins que ce que j'avais prévu à l'origine. Nous allons examiner deux façons de résoudre les problèmes. Tout d'abord, la vieille école favorisée par Guido van Rossum, qui utilisait des déclarations imprimées. Alors maintenant que vous allez voir ça en action. Et vous pouvez aussi repérer le bug qui y est présent. Mais l'idée va vraiment créer un programme simple à comprendre plutôt que de créer un bug hystérique difficile à trouver. Ne vous inquiétez pas, vous aurez beaucoup de choses à traiter plus tard. Donc, vous allez voir un simple jeu de devinettes de nombre. L' ordinateur va penser à un nombre compris entre 110, puis l'utilisateur doit le deviner, puis l'ordinateur dira à l'utilisateur s'il l'a correctement ou non. Voici donc le code. Je vais importer la bibliothèque aléatoire pour nous permettre de générer un nombre aléatoire. Imprimer un message pour l'utilisateur, créer le nombre aléatoire. Et maintenant, nous allons laisser l'utilisateur entrer ses invités et l'assigner à la variable guest. Maintenant, nous allons vérifier que leur estimation est la même que le nombre. Et si c'est le cas, nous leur dirons qu'ils ont raison. Et si ce n'est pas le cas, nous leur dirons qu'ils se sont trompés. On y va. Le programme est terminé et maintenant vous allez le voir en action. Donc je vais juste le garder en marche jusqu'à ce que le bug se fasse connaître à nous. Et là après la première fois, parfois beaucoup plus de fois que vous ne l'attendiez. Mais c'est la nature du hasard. On voit notre insecte, il dit, désolé, le nombre était cinq, pas cinq. Donc jusqu'à présent, vous avez peut-être pensé que votre programme fonctionnait bien. Vous auriez pu le montrer à quelqu'un et en être heureux. Et puis quelqu'un va dire « Attendez une minute ». Il disait que le nombre était cinq, pas cinq. Quel est le problème là-bas ? Ce que nous devons faire, c'est utiliser une déclaration imprimée pour nous aider à découvrir le problème. Je vais en insérer un ici. Et maintenant, nous allons devoir relancer le programme. Dans ce cas, ce que nous venons d'imprimer ne nous aidera trop parce que ce n'est pas la représentation, c'est le problème. C' est l'information réelle. Alors regardons un peu plus profond. Ici. Nous allons regarder un peu plus loin et regarder quel est le type de nombre et deviner. Et là, nous voyons le problème. Le problème est que notre nombre n'est pas nier et t parce qu' il a été créé aléatoirement par un point rand INT. Mais notre supposition est un SDR ou une chaîne. Et quand nous imprimons des STRS ou des ions Ts, ils sont identiques à nous à l'écran. Vous avez peut-être remarqué que ce ne serait pas le cas si vous faites ce genre de travail dans le shell Python. Il est donc important de se rendre compte que l'impression peut ne pas toujours vous montrer toutes les informations dont vous avez besoin pour trouver des bugs subtils comme celui-ci. Mais cela peut être une méthode très utile et rapide pour savoir ce qui se passe quand un programme est en cours d'exécution. Donc, dans ce cas, pour corriger ce bug particulier, l'entrée doit maintenant être transformée en un INT. Maintenant, cela tomberait si l'utilisateur tape quelque chose qui pourrait être transformé en un INT. Mais dans ce cas, nous allons juste le laisser comme il est pour être gentil et clair. Donc maintenant, nous relançons le programme et nous pouvons voir qu'ils sont tous les deux INT. Et si je le fais assez de fois pour deviner correctement. Enfin, nous arrivons à un point où la supposition était cinq et le nombre était cinq. Et nous pouvons voir que le programme fonctionne comme prévu. Ayant vu l'action d'impression suivante PDB, le débogueur python. Donc, à l'écran, vous pouvez voir le programme de devinettes de nombre de bogues de la session précédente. Et nous allons maintenant importer PDB pour nous permettre de l'utiliser pour déboguer ce programme. J' ai donc importé PDB au début et au point où je veux que PDB prenne en charge l'exécution du programme, j'ai mis la ligne suivante. Je vais également supprimer les lignes de code que j'ai jointes. Donc, comme vous pouvez le voir, le programme fonctionnera normalement jusqu'à ce qu'il arrive à ce point. Et puis nous pourrons prendre en charge l'exécution étape par étape. Et cela nous permettra de regarder à l'intérieur du programme car il fonctionne toujours en mémoire. Donc, nous arrivons à entrer le nombre normalement, mais comme vous pouvez le voir, il semble tout à fait différent. La ligne APB à gauche nous montre que l'APB a repris l'exécution du programme. Maintenant, il est vraiment facile d'oublier où vous êtes dans le programme. Donc, l'une des instructions clés est d'utiliser i pour la liste. Nous pouvons voir que cela nous montre une section du programme dans ce cas disant que nous sommes à la ligne 7. Et l'instruction suivante va être de deviner si égal nombre. Mais ce qu'on peut faire en ce moment, c'est regarder ce qu'il y a dans la mémoire de l'ordinateur. Et c'est un peu comme un shell Python normal. Si je tape, nous pouvons voir la valeur d'un nombre. Si je tape, nous pouvons voir la valeur d'une supposition. Et tout de suite, cela fonctionne un peu mieux que l'impression parce que cela nous indique que ce n'est pas un INT, c'est une chaîne. Donc, avec cette commande, nous avons déjà trouvé quel est le problème. Alors qu'avec l'impression, nous devions approfondir et imprimer manuellement ce type de variables en question. Mais laissons ce programme aller de l'avant. Et nous pouvons faire avec C pour continuer. Comme vous pouvez le voir, il court jusqu'à la fin. Cela illustre que cela fonctionne normalement. Et parce que c'est un petit programme simple, c'est ce que nous devons faire. Maintenant, si on met des traces dans un autre endroit, on pourrait tricher. Jetons un coup d'oeil à ça. Donc maintenant je l'ai mis avant et je dois mettre mes devinettes pour que je puisse tricher. Je peux regarder dans l'esprit de l'ordinateur, voir ce qu'il a été choisi, puis mettre ce numéro, qui nous sera parfois utile pour vous permettre de ne pas avoir à exécuter le programme dix, 15-20 fois, et cetera. Voyons quel est le numéro. Alors maintenant, je peux continuer. Il demande des entrées. Maintenant encore une fois, c'est vraiment facile à corriger comme vous l'avez vu dans la vidéo précédente. Mais l'idée de cela était de vous donner une idée de la façon d'utiliser PDB. Mais aussi le PDB est une chose vraiment flexible parce que vous n'avez pas à taper un chargement d'instructions d'impression. Vous pouvez simplement interrompre affectivement le temps, regarder autour de la mémoire de l'ordinateur et déterminer ce qui se passe sans avoir à mettre 20 instructions d'impression dans. Vous pouvez parcourir le programme et les variables examinées chaque fois qu'il arrive. 104. Gérer les Exception de base: Hé tout le monde. Dans cette leçon, nous allons expliquer comment vous pouvez gérer les erreurs en utilisant try and except. Alors commençons. Python fournit une fonctionnalité vitale pour gérer toute erreur inattendue dans vos programmes Python. Votre application doit toujours attraper l'exception et la gérer avant que l'utilisateur ne la voit. Pour gérer les exceptions, vous devez indiquer à Python ce qu'il faut faire , puis fournir du code pour effectuer les tâches de gestion. Les instructions try and except sont excellentes pour gérer les erreurs. Il s'agit d'une instruction de contrôle comme il contrôle sur le programme se poursuit lorsqu'une erreur se produit. Voici la syntaxe. Tapez, le code suivant. Le programme tente d'exécuter l'instruction érythème dix divisé par 0, ce qui est impossible. Ainsi, le reste des blocs try est ignoré et l'instruction est dans le bloc except est exécutée au lieu du message d'erreur prédéfini pour chacun des différents types d'erreurs. Si vous souhaitez afficher le message, vous pouvez utiliser le mot clé en tant que après le type d'erreur. Par exemple, pour afficher le message d'erreur de valeur par défaut, vous écrivez. E est le nom de variable attribué à l'erreur. Ceci est un exemple d'utilisation des messages d'erreur prédéfinis et capture toute erreur inattendue. Pour une liste complète des types d'erreur en Python, vous pouvez vous référer à ce site Web. Si vous souhaitez afficher des messages d'erreur plus spécifiques à vos utilisateurs, en fonction de l'erreur, vous pouvez spécifier le type d'erreur après le mot-clé exempt. Maintenant, nous allons travailler sur d'autres exemples. Le code dans le bloc try a ses exceptions gérées. Dans ce cas, gérer l'exception signifie obtenir l'entrée de l'utilisateur en utilisant les appels d'entrée INT. Si une exception se produit en dehors du bloc, le code ne la gère pas. Le bloc except recherche une exception spécifique, dans ce cas, une erreur de valeur. Lorsque l'utilisateur crée une exception d'erreur de valeur en tapant jam au lieu d'une valeur numérique, ce bloc d'exception est exécuté. Le bloc else contient tout le code exécuté avec un code de bloc try réussit, ne génère pas d'application. Le reste du code se trouve dans ce blog car vous ne voulez pas l' exécuter à moins que l'utilisateur ne fournisse une entrée valide. Lorsque l'utilisateur fournit un nombre entier en entrée, le code peut alors le vérifier pour s'assurer qu'il est correct. Exécutez le code et tapez Jim au lieu d'un nombre compris entre 15. L' application affiche un message d'erreur. Maintenant réexécutez le code et tapez 20 au lieu d'un nombre compris entre 15. L' application sort et message d'erreur de plage inattendue. gestion des exceptions ne supprime pas les erreurs de plage. Vous pouvez créer un bloc de gestion des exceptions en Python qui est générique car il ne ressemble pas à une exception spécifique. Parfois, vous pouvez avoir besoin d'une exception générique. Faisons un exemple en utilisant une clause except sans une exemption spécifique qui lui est attachée. Le résultat est que cette clause except interceptera également toute autre exception qui se produit. Le code détecte d'abord des erreurs spécifiques, puis utilise moins de gestionnaires spécifiques uniquement lorsque cela est nécessaire. Exécutez le code et tapez Jim. 105. Gérer plusieurs exceptions: La plupart des applications peuvent générer plusieurs exceptions pour une seule ligne de code en utilisant une seule clause except pour gérer diverses exceptions ne fonctionne que lorsqu' une source d'action commune répond à tous les besoins d'exception. Sinon, vous devez gérer chaque exception individuellement. L' exemple suivant montre comment gérer plusieurs exceptions à l'aide d'une seule clause except. Tapez le code suivant dans l'éditeur. Notez que la clause except prend désormais en charge à la fois une erreur de valeur et une exception d'interruption du clavier. Ces exceptions apparaissent entre parenthèses et sont séparées par des virgules. Exécutez le code et tapez Alan. Entrez. L' application affiche un message d'erreur, relancez le code et appuyez sur le contrôle plus c, le même message d'erreur. Exécutez à nouveau et tapez 20 et appuyez sur Entrée. L' application affiche le deuxième message d'erreur. Lorsque vous travaillez avec plusieurs exceptions, il est généralement recommandé de placer chaque exception dans sa propre clause except. Cette approche vous permet de fournir la gestion des clients pour chaque exception et rend plus facile de savoir précisément ce que le loyer mal. Bien sûr, cette approche est aussi beaucoup plus de travail. Faisons un exemple de la façon d'effectuer la gestion des exceptions en utilisant plusieurs clauses except. Tapez le code suivant dans l'éditeur. Chaque clause d'examen traite les différentes exceptions. Vous pouvez utiliser une combinaison de techniques, sauf les clauses ne traitant qu'une seule exception et l'autre, sauf les clauses traitant plusieurs exceptions. Exécutez le code et appuyez sur Ctrl plus c. Regardez le message. Maintenant, exécutez à nouveau et prenez 20. La modification du message d'erreur de la valeur que vous tapez est incorrecte. Une stratégie de gestion des exceptions consiste à fournir les clauses d'exception exactes pour toutes les exceptions connues et les clauses d'exception génériques pour gérer les exceptions inconnues. Regardez l'exception, une hiérarchie que Python utilise à cette adresse Web. Dans l'exemple suivant, nous allons utiliser l'exception de base, qui est l'exception la plus élevée, puis l'exception d'interruption du clavier. Et puis nous allons utiliser l'exception ZeroDivisionError spécifique, prendre le code suivant dans l'éditeur. Le code commence par obtenir deux entrées, valeur1 et valeur2. Les deux premières clauses à l'exception gèrent les entrées inattendues. Le troisième, sauf les clauses soulevées lorsque le résultat d'une opération arithmétique est trop grand pour être représenté, ou un nombre divisé par 0. La quatrième clause except traitait des exceptions mathématiques spécifiques comme diviser par 0. Si quelque chose se passe bien dans l'application, la clause else s'exécute, ce qui imprime le résultat des opérations. Exécutez le code. Python vous demande de taper le premier nombre, tapez Udemy, et comme prévu, Python affiche un message d'exception d'erreur de valeur. Exécutez à nouveau le code et tapez cinq est la première valeur et 0 est la deuxième valeur. Maintenant, vous pouvez voir l'exception arithmétique et le message d'erreur. Ici. Je voulais dire que cette exception arithmétique n'est pas si utile, mais je l'ai tapée à des fins d'apprentissage. Supprimons ces lignes de code et exécutons le code entier. Maintenant, vous pouvez voir l'erreur de division 0 s'exécuter à nouveau et appuyez sur Ctrl plus C. Ceci est l'exception d'interruption du clavier. Donc, dans cette leçon, j'ai fourni des clauses exactes à l'exception de la plupart des cas. Si vous avez des questions, faites-le moi savoir. Merci d'avoir regardé. 106. Souler des exceptions: Dans certaines situations, votre application doit générer une exception. Cet acte est appelé lever ou parfois jeter l'exception. Voyez quelques scénarios courants dans lesquels vous pouvez déclencher des exceptions de manière spécifique. Voyons comment vous soulevez une exception simple qu'elle ne nécessite rien de spécial. Les étapes suivantes créent simplement l'exception, puis la manipulent immédiatement. Ce code vous montre comment lever une exception fonctionne à son niveau le plus basique, exécutez le code en Python affiche l'exception attendue txt. Python fournit une gestion flexible des erreurs en ce sens que vous pouvez transmettre des informations à l'appelant, le code qui appelle votre code, quelle que soit l'exception que vous utilisez, le code suivant montre que vous pouvez modifier la sortie afin qu'il contient des renseignements utiles. L' exemption d'erreur de valeur, il ne fournit généralement pas un nom d'attribut pour un nom commun pour une erreur de chaîne. Mais vous pouvez l'ajouter uniquement en lui affectant une valeur est affichée lorsque l'exemple déclenche l'exception et que la clause except la gère comme d'habitude, mais obtient l'accès aux attributs en utilisant e. Vous pouvez ensuite exécuter le carré e point. Rappelez-vous, pour obtenir les informations ajoutées, exécutez le code et les affichages Python et l'exception d'erreur de valeur étendue. Comme vous pouvez le voir. 107. Comment débug dans IDLE 2021: Un bogue est un problème inattendu dans votre programmation. Ils peuvent apparaître sous de nombreuses formes et certaines sont plus difficiles à réparer que d'autres. Certains bugs sont assez délicats pour que vous ne puissiez pas les attraper simplement en lisant votre programme. Heureusement, Python inactif fournit des outils essentiels qui vous aideront à déboguer vos programmes facilement. Si vous souhaitez exécuter votre code avec le débogueur intégré, vous devez activer cette fonctionnalité. Pour ce faire, sélectionnez le débogueur de débogage dans la barre de menus d'inactivité Python. Dans l'interpréteur, le débogage doit apparaître juste avant l'invite, ce qui signifie que l'interpréteur est prêt et en attente. Lorsque vous exécutez votre fichier Python, la fenêtre du débogueur apparaît. Dans cette fenêtre, vous pouvez inspecter les valeurs de vos variables locales et globales pendant l'exécution de votre code. Cela vous donne un aperçu de la façon dont vos données sont manipulées pendant l'exécution de votre code Vous pouvez également cliquer sur les boutons suivants pour parcourir votre code. Allez-y. Appuyez sur cette touche pour avancer l'exécution jusqu'au point d'arrêt suivant. Vous en apprendrez plus à ce sujet dans la section suivante. Étape, appuyez sur ce bouton pour exécuter la ligne actuelle et passer à la ligne suivante. Fini. Si la ligne de code actuelle contient un appel de fonction, appuyez dessus pour passer au-dessus de cette fonction. En d'autres termes, exécutez cette fonction pour passer à la ligne suivante. Mais ne faites pas de pause pendant l' exécution de la fonction sauf s'il y a un point d' arrêt. Si la ligne de code actuelle est une fonction, appuyez dessus pour sortir de la fonction. En d'autres termes, continuez l'exécution de cette fonction jusqu'à ce que vous reveniez de celle-ci. Attention, car il n' y a pas de bouton inverse. Vous ne pouvez avancer qu'à temps tout au long de l'exécution de votre programme. Vous verrez également quatre cases à cocher dans la fenêtre de débogage. Globals, les informations globales de vos programmes, les locaux, les informations locales de vos programmes pendant l'exécution. Stack, la fonction qui s'exécute pendant l'exécution, source, votre fichier dans l'éditeur inactif. Lorsque vous sélectionnez l'un de ces éléments, vous verrez les informations pertinentes dans votre fenêtre de débogage. Le point d'arrêt est une ligne de code que vous avez définie comme un endroit où l'interpréteur doit faire une pause pendant l' exécution du code. Ils ne fonctionneront que lorsque le mode de débogage est activé. Assurez-vous de l'avoir fait en premier. Pour définir un point d'arrêt, cliquez avec le bouton droit de la souris sur la ligne de code que vous souhaitez suspendre. Ceci mettra en surbrillance la ligne de code en jaune est une indication visuelle d'un point d'arrêt défini. Vous pouvez définir autant de points d'arrêt dans votre code que vous le souhaitez. Pour annuler un point d'arrêt, cliquez à nouveau avec le bouton droit sur la même ligne et sélectionnez Effacer le point d'arrêt. Une fois que vous avez défini vos points d'arrêt et activé le mode de débogage, vous pouvez exécuter votre code comme vous le feriez normalement. La fenêtre du débogueur s' affiche et vous pouvez commencer à parcourir votre code manuellement. Lorsque vous voyez une erreur signalée dans l' interpréteur python, je vous laisse sauter dans le fichier ou la ligne incriminée à partir de la barre de menus. Il suffit de mettre en surbrillance la ligne signalée ou le nombre de noms de fichiers avec votre curseur et de sélectionner déboguer. Accédez aux lignes obliques du fichier dans la barre de menus. Cela ouvrira le fichier incriminé et vous amènera à la ligne contenant l'erreur. Cette fonctionnalité fonctionne que le mode de débogage soit activé ou non. Python inactif fournit également un outil appelé visionneuse de pile. Vous pouvez y accéder sous l'option de débogage de la barre de menus. Cet outil affiche la barre de piste d'une erreur telle qu'elle apparaît dans la pile. Et la dernière ligne de l'exception rencontrée par Python inactif lors de l'exécution de votre code. Lorsqu'une flèche inattendue ou intéressante se produit, il peut être utile de jeter un coup d'œil à cette pile. Sinon, cet avenir peut être difficile à analyser et ne vous sera probablement pas utile à moins écrire du code très compliqué. 108. Rock, Paper, Scissors Aperçu: Bienvenue dans Rock-Paper-ciseaux, un jeu en ligne de commande. Dans les prochaines leçons, vous apprendrez comment écrire un jeu en ligne de commande en ligne de commande, gérer les entrées des utilisateurs, boucles pour plusieurs jeux consécutifs, créer des fonctions pour regrouper le code, utiliser dictionnaires pour stocker des règles et remplacer les constantes par des objets Ina. Une petite note sur les versions. Tout le code des leçons a été testé à l'aide de Python 3.9. Il n'y a pas grand-chose ici qui soit premier et spécifique. Tous les interprètes commençant par Python 3.4 fonctionneront très bien. Le chemin commun pour s'intéresser à programmation passe par l'amour des jeux vidéo. Cela fait de l'écriture de votre propre jeu ou lieu de départ logique lorsque vous apprenez à coder. Les jeux graphiques ont des choses supplémentaires à apprendre car vous avez affaire à vous retirer à l'écran. Les jeux basés sur la ligne de commande sont le moyen d'entrée idéal. Vous pouvez écrire un jeu de lecteur de code, mais ne pas être enterré sous un peu de maths rabaissantes ou vectorielles. Si vous n'avez jamais joué auparavant, les ciseaux en papier rock sont un jeu à deux personnes souvent utilisé pour décider rapidement qui passe en premier et un jeu de société, qui obtient la première tranche de tarte ? Ronnie, une décision simple. Chaque personne compte jusqu'à trois, secoue le poing , puis fait un symbole. C'est ce qu'on appelle le lancer. Les symboles font en sorte que les trois manières d' encercler chaque symbole en battant l'autre. Les choix sont et font un poing montrer du rock, rocher fracasser des ciseaux, faire une paume pour montrer du papier, couvrir du papier ou montrer deux doigts. Attention à l'endroit où vous pointez ceux en Grande-Bretagne pour fabriquer les ciseaux, les ciseaux découpés en papier. Pour créer une version textuelle du jeu, vous devez prendre la saisie de l'utilisateur, choisir aléatoirement le lancer d'un ordinateur et comparer qui. Ensuite, je vais vous montrer comment obtenir des commentaires des utilisateurs , puis faire une boucle pour créer une lecture répétée. Merci d'avoir regardé. 109. Rock, Paper, ciseaux avec les entrées et les boucles Python: Dans la leçon précédente, j'ai donné un aperçu du jeu. Dans cette leçon, je vais vous montrer comment obtenir des informations des utilisateurs , puis utiliser une boucle pour créer une lecture répétée. La forme la plus simple du service de jeu en prenant le choix de l'utilisateur, demandant à l'ordinateur de choisir une réponse aléatoire, puis d'afficher les résultats de l'utilisateur. Voyons un code pour ce faire. Connectez-vous à votre compte. Ici, vous commencerez par écrire le code. Le premier morceau de code que vous allez enregistrer est l'importation aléatoire. Cela charge le module Python nommé aléatoire. Ce module contient des fonctions qui permettent de sélectionner aléatoirement entre les choix et les nombres. Vous l'utiliserez pour choisir la réponse de l'ordinateur au lecteur. En parlant de choix, vous voudrez spécifier quels sont les choix. Dans la ligne suivante, vous déclarerez des choix, une liste contenant les cordes, pierre, le papier et les ciseaux. Ensuite, vous allez taper une ligne qui imprime un défi au joueur. Alors tapez une parenthèse d'impression, guillemets doubles, faites votre lancer. Fermez les guillemets doubles et les parenthèses. Ensuite, il faut penser à un moyen de demander la réponse d'un joueur. Cela se fait avec la fonction d'entrée. La fonction d'entrée intégrée prend une chaîne utilisée pour inviter l'utilisateur et renvoie tout ce que l'utilisateur a saisi. Le choix de l'utilisateur sera stocké dans la variable nommée User Choice. Vous ne devriez pas simplement accepter une chose aléatoire de la part de l'utilisateur. Vous voulez vous assurer qu' il s'agit d'un choix valable. Vous allez donc utiliser la fonction IF. Saisissez donc si l'utilisateur choisit dans les choix. Cette ligne vérifie que l'utilisateur a saisi l'un de ces éléments dans la liste de choix. Si c'est le cas, la ligne suivante sélectionne aléatoirement la réponse de l' ordinateur. La fonction de choix de modules aléatoires prend une liste et choisit aléatoirement l'un des éléments de la liste. La sélection est renvoyée et, dans ce cas, elle est stockée dans le choix de l'ordinateur. Ensuite, nous allons taper une ligne de commande contenant une instruction d'impression affichant les résultats à l'utilisateur. Tapez imprimer une parenthèse ouverte, puis appuyez sur Entrée. Si vous n'avez pas vu de chaîne f auparavant, c'est une façon de créer un modèle que Python va remplir. Une chaîne f est préfixée par la lettre F, d'où le nom. Ensuite, il cherche des supports d'accolade. Ce sont les bouclés à l'intérieur de la ficelle. Les valeurs entre parenthèses sont remplacées par leurs variables correspondantes. Dans ce cas, le choix de l' utilisateur et les valeurs de choix de l'ordinateur sont insérés dans l'étirement. Appuyez sur Entrée. Le tout est ensuite mis à l'écran par la fonction d'impression. Puisque la fonction IF vérifie les valeurs valides, vous devez indiquer à l'utilisateur s'il n'a pas choisi quelque chose de valide. Dans la ligne suivante de cette clause else, indiquez à l'utilisateur ce qu'il a tapé et dites-lui que ce n'était pas un bon choix. Voyons le jeu en action. Ici. Je vais lancer le script en rock, et ça me dit que j'ai choisi le rock et l'ordinateur à l'aide de ciseaux. Laissez-moi le faire une fois de plus. Cette fois, je vais entrer en sucette. Non, ce n'est pas un choix valable. Chaque fois que vous voulez jouer au jeu, réexécution de la commande représente beaucoup de travail. Pas tant que ça, mais tu peux quand même faciliter la tâche. Que diriez-vous de demander à nouveau à l'utilisateur de la gorge vers le bas ? Pour ce faire, vous devez enrouler toute la logique du jeu en boucle. Une fois le résultat affiché, demandez à l'utilisateur s'il souhaite jouer à nouveau. Modifions le code. La première étape consiste à ajouter une boucle infinie. Après les choix de liste avec une boucle while. L'instruction while boucle jusqu'à ce que la condition associée soit évaluée comme fausse, soit vraie, ne sera jamais évaluée à false. Cette boucle continue à jamais. La partie suivante est le code précédent, mais incorporé à l'intérieur de la boucle. Je vais donc appuyer sur un onglet avant chaque ligne de code dont nous avons parlé d'indentation en Python et pourquoi c' est si important. Pour ne pas oublier, l'indentation est l'espace blanc principal, les espaces et les onglets avant toute déclaration en Python. La raison pour laquelle l'indentation est importante en Python est que Python traite les instructions ayant le même niveau d'indentation, instructions qui ont un espace blanc égal ou nul auparavant. puis sous la forme d'un seul bloc de code. Une fois Around a été joué. Ce processus, l'utilisateur, s'il veut rejouer, appelons-le à nouveau variable. Vous allez ensuite ajouter une invite de saisie. Si l'utilisateur souhaite jouer à nouveau. Je vais ajouter une nouvelle ligne qui vérifie les réponses des utilisateurs et vérifie si elle correspond à M. Pour l'instant, la méthode dot lower est appelée sur la réponse avant qu'elle ne soit comparée. Cette méthode renvoie la version minuscule de la chaîne utilisée. De cette façon, si l'utilisateur saisit N majuscule, il sera transformé en n minuscule avant d'être comparé. Si l'utilisateur indique non , l' instruction break est appelée. L'instruction break vous permet de sortir de la boucle environnante. Dans ce cas, le code continuerait jusqu'à la ligne suivante. Si l'utilisateur tape quelque chose par n, il est supposé qu'il voulait dire oui. Dans ce cas, le code à l'intérieur de la boucle continue ici, vous allez ajouter une impression vide, qui affichera une ligne vide. Après cela, l'exécution continue en haut de la boucle while, demandant à l'utilisateur de faire son prochain frisson. Tout simplement parce qu'il s'agit d'un vol, le code dit adieu à l'utilisateur après avoir rompu de la boucle while. Voici le nouveau code modifié dans toute sa splendeur. Laissez-moi exécuter le code. Je vais faire un choix cette fois, bien que papier. Il me montre ce que l' ordinateur et moi avons choisi, puis les invite. Si je veux y retourner, je vais TBS et le jeu continue. Nous allons choisir le papier à nouveau. Maintenant, je pense que j'en ai fini. Vous voyez, n'est-ce pas sympa qu'il ait dit au revoir, juste apporter les choix n'est pas suffisant. Dans la prochaine leçon, je vais vous montrer comment dire qui a gagné. 110. Rock, Paper, Scissors avec Python Comment déterminer un vainqueur: Dans la leçon précédente, vous avez commencé par écrire le code initial des ciseaux en papier rock. Dans cette leçon, je vais vous montrer comment ajouter un code qui déclare le gagnant à chaque tour. Il suffit de vous montrer les choix que l'utilisateur a faits dans le droit au choix de l'ordinateur semble un peu léger. Ajoutons du code pour dire qui a gagné. Vous devrez encoder la logique pour chaque situation de x beats. Pourquoi ? Nous sommes des ciseaux de roche , des ciseaux, du papier couvre la roche et des ciseaux coupent du papier. En tant que logique pour déterminer qui une sorte de groupe va ensemble, il serait préférable de placer cela dans une fonction. Vous pourriez même le nommer quelque chose de significatif. Vous commencerez à modifier le code précédent avec la logique de détermination du gagnant à l'intérieur. Il est recommandé de regrouper les bits de code associés et les fonctions. Cela permet la réutilisation du code par plusieurs appels à la fonction et la clarté de la lecture de votre code. Après la liste des choix, vous allez ajouter une nouvelle ligne qui déclare la fonction show winter. Il faut deux arguments. Le premier est nommé choix de l'utilisateur et le second choix d'ordinateur. Dans la ligne suivante, vous allez vérifier si l'utilisateur et l'ordinateur ont choisi la même valeur. Si SIL, le choix de l'utilisateur est le même que celui de l' ordinateur. Ensuite, dans la ligne suivante, le programme imprime qu' il y avait une égalité et les deux utilisateurs ont choisi la sélection spécifique. La ligne suivante que vous ajouterez else-if, qui ne s'exécutera que si l'utilisateur et l'ordinateur choisissent des valeurs différentes. Cette ligne vérifie si l'utilisateur a choisi rock. S'ils l'ont fait, il y a deux sous-cas. L'ordinateur a choisi des ciseaux et donc celui de l'utilisateur. L'ordinateur a choisi le papier dans celui de l'ordinateur. N'oubliez pas que si l' ordinateur est choisi rock, vous n'arriveriez pas ici, c'est qu'un peu de logique est pris par cette ligne. L'étape suivante consiste à ajouter une ligne Lyft, similaire à cette ligne, mais pour le papier. Une logique similaire est contenue avec le bloc else-if traitant les conditions de gain et de perte pour le papier. Ensuite, vous le refaites contre IRS et ses conditions de victoire et de perte associées. Enfin, si quelque chose d' autre que de la roche, du papier ou des ciseaux a été tapé, il est pris par la clause else. En tapant cette ligne de code. Dans ce cas, on dit à l'utilisateur que sa gorge était mauvaise. Le code dans la boucle sauvage est assez proche d'avant, juste avec la nouvelle ligne qui appelle la fonction show winner. Supprimez ces lignes de code, nous n'en avons pas besoin. Saisissons le nouveau code ici. Vous êtes prêt à jouer maintenant, lançons le jeu. Tous types ROC. Rejouez. Rochez-vous encore une fois et vous comprenez l'idée. Un gros blog si alors, comme je viens de le démontrer, peut être un peu difficile à lire. Cela ne fait qu'empirer plus les conditions que vous devez comparer. Ce type de code est si courant que Python 3.1 L possède une nouvelle structure de mots-clés appelée correspondance de motifs. Il s'agit d'une syntaxe un peu nouvelle en Python qui affiche une série de choix basés sur un modèle. Cette structure vous permettra d'écrire en gros si alors des blocs avec moins de lignes de code. Si vous avez l'habitude de changer déclaration dans d'autres langues, c'est la garde de cela. Il y a eu un débat sur l'instruction de correspondance des motifs , mais cependant, vous pourriez le ressentir jusqu'à ce que Python 3.10 soit sorti, vous êtes coincé avec si oui ou si vous l'êtes. Permettez-moi de vous montrer une vague en utilisant des structures de données dans votre code qui simplifie la quantité de logique de codage et réduit la taille de l'if. Alors, sinon, bloquez. Nous allons ajouter deux nouveaux dictionnaires, beats et messages juste après la liste des choix. Prenons le premier changement dans le programme précédent, qui est l'introduction du dictionnaire beats. Ce dictionnaire stocke les perles, quelles conditions. Chaque clé du dictionnaire est, par rapport à la liste des choses qui battent. Vous comprendrez pourquoi utiliser la liste dans la prochaine leçon. Cette ligne code le fait que la roche bat les ciseaux, le papier bat la roche et que les ciseaux battent le papier. Vous pouvez simplifier le message adressé à l'utilisateur en changeant la langue pour dire x bat y. Au lieu d'avoir les spécificités des ciseaux rocheuses. Mais au lieu de cela, le verbe décrivant l'action gagnante dans un autre dictionnaire appelé messages. Chaque clé de ce dictionnaire est un tuple décrivant ce qui bat, quoi. Le premier dit que lorsque le rock bat les ciseaux utilisent le mot fracasser. Cela peut être simplifié en ayant simplement l'objet B gagnant, la clé de ce dictionnaire. Mais la leçon suivante ajoute une certaine complexité à laquelle cela se prépare. La ligne suivante code que le papier couvre la roche, et dans la ligne suivante, les ciseaux coupent le papier. Laissez-moi faire défiler un peu vers le bas. Lorsque les règles du jeu sont codées dans des dictionnaires, le code de show winter devient un peu plus simple. ligne 1819 est la même qu' avant de vérifier l'état thaïlandais. Mais maintenant, vous devrez changer le morceau de la fonction si auparavant, la vérification données incorrectes a été effectuée à la fin de la fonction. Je vais le déplacer ici. Supprimons les lignes de 20 à 36. La méthode des clés DOD du dictionnaire beats renvoie une liste de toutes les clés valides. Le choix de l'utilisateur n'est pas là. Cela signifie que ce n'était pas un choix valable. Le bloc autre qui commence à la ligne 22 contient maintenant tout ce qui sera, quelle logique ? Cette ligne, je vais faire une comparaison booléenne en vérifiant si les choix de l'ordinateur dans la liste des éléments qui sont BY, selon le choix de l'utilisateur. Si l'utilisateur a choisi rock, la roche clé est appliquée aux battements. Retourner la liste contenant uniquement des ciseaux. Si l'ordinateur a choisi des ciseaux, il y a une correspondance et la comparaison booléenne résultante est vraie. Ces valeurs stockées dans l'utilisateur gagnent. La ligne suivante évalue ensuite l'utilisateur appelé booléen gagne. L'utilisateur a gagné qu'il n'a regardé le verbe approprié dans le dictionnaire des messages en utilisant le tuple de choix de l'utilisateur et de l'ordinateur comme clé pour les choix de roche et de ciseaux, le résultat sera : fracasses. Avec le verbe, prêt à partir. Il ne reste plus qu'à l'utilisateur la bonne nouvelle. Cette chaîne de caractères affiche le choix de l'utilisateur, le choix de l'ordinateur et le verbe associé. Notez qu'à l'intérieur des supports pour le choix de l'utilisateur, il y a bien plus que la variable. Une chaîne f vous permet d'appeler des méthodes sur des objets chaîne qui ne mettent pas majuscule la méthode renvoie une nouvelle chaîne avec la première lettre en majuscule. Cela fera paraître le début de la phrase. Bien sûr, l'utilisateur ne gagne pas toujours. La clause else fait la logique miroir. Comme l'ordinateur est un, le verbe est recherché en utilisant l' inverse du tuple dans le bloc précédent. Ensuite, l'utilisateur est informé de la mauvaise nouvelle. Le code est un peu plus court que le grand bloc si alors sinon de la leçon précédente. Cela ne vaut peut-être même pas la peine dans ce cas, mais lorsque le jeu devient plus compliqué, vous aurez économisé beaucoup de travail. Pas grand-chose à voir ici que vous n'avez jamais vu auparavant. Le code a été refactorisé, mais le résultat final est censé être la même prise de décision tripartielle est tout simplement pas assez complexe. Félicitations, vous venez de finir de coder un jeu en Python. Vous savez maintenant comment créer des ciseaux en papier roche à partir de zéro. Et vous pouvez augmenter le nombre d' actions possibles dans votre jeu avec un minimum d'efforts. écriture de jeux est le moyen amusant de s'entraîner à écrire du code. Dans ce projet, vous avez implémenté une version textuelle de ciseaux en papier rock. Vous demandez à l'utilisateur de l' entrer et l'avez validé, boucle ou en code pour permettre aux jeux répétés ajoutés à la fonction show winter afin de déterminer qui a gagné et simplifié votre fonction show winter en remplaçant certains logique conditionnelle avec une représentation de données stockée dans le dictionnaire. J'espère que vous avez trouvé de la valeur dans ce projet. Merci de votre attention et je vous verrai dans la prochaine leçon. 111. Qu'est-ce qu'il s'agit de programmer la programmation axée sur les objets (OOP): Salut tout le monde. Je veux vous souhaiter la bienvenue à notre leçon sur la programmation orientée objet en Python trois, c'est l'un des sujets les plus importants et les plus importants dans toute la programmation. Et comme vous pouvez le voir, nous avons beaucoup à couvrir. Cette série vous fournira une compréhension conceptuelle de base de la programmation orientée objet afin que vous puissiez prendre vos compétences en programmation Python au niveau supérieur. Pour bien comprendre le sujet, nous devons d'abord comprendre pourquoi nous avions besoin de programmes ou de choses trop compliquées. Et il y a 100 façons différentes de définir ce qu'un programme est formel. Pourtant, fondamentalement tous les programmes ou ensemble d' instructions pour manipuler les données d'une manière significative. Quand j'enseigne Python aux enfants, je leur demande toujours d'écrire un programme qui calcule combien de jours ils ont. Et c'est un excellent exemple de programme qui suit ces trois étapes. Tout d'abord, le programme doit demander à l'utilisateur sa date de naissance. Ce sont les données qu'il va accepter. Ensuite, il manipule les données en soustrayant la date actuelle de la date de naissance de l'utilisateur. Enfin, le programme affiche le résultat de ce calcul à l'écran. C' est un excellent programme de démarrage, mais c'est très trivial. Comment pouvons-nous gérer de grands programmes avec beaucoup de données pour garder une trace comme un jeu vidéo ? Comme vous l'avez peut-être deviné, c'est là que la programmation orientée objet entre en jeu. programmation orientée objet, ou OOP en bref, est un paradigme de programmation assez commun. En formellement, cela signifie qu'il s'agit d'une façon spécifique de concevoir des programmes, comme un style largement utilisé dans les projets logiciels. Tous les programmes ne devraient pas être écrits avec cela. Oop, mais beaucoup le sont. Et beaucoup de langues supportées. Une grande partie du code Python avec lequel vous interagissez quotidiennement sera écrite en utilisant OOP. Comprendre cela est une partie fondamentale pour devenir un programmeur Python gripe. Il ouvre la porte à la création de logiciels vraiment cool. Au cœur de la POO se trouve l'idée qu'un programme est composé de beaucoup d'objets individuels. Vous pouvez penser à ces objets sont des entités ou des choses dans votre programme. Souvent, ils sont comme les noms de votre projet, tels que la personne, une maison, un e-mail ou toute autre entité comme ça. Ces objets sont comme de petits paquets de données qui sont transmis tout au long de la vie de votre programme. Par exemple, une personne peut avoir des propriétés telles que le nom, l'âge et une adresse de domicile. Il s'agit des données individuelles que l'objet stocke tout au long de sa vie dans le programme. Lorsque nous créons cet objet de personne, nous nous assurerons de lui donner un nom, un âge et une adresse. Les objets ont également des comportements. Ce sont les actions que l'objet peut prendre. Notre personne devrait pouvoir marcher, parler et respirer, par exemple. Souvent, ces comportements seront nécessaires pour être référencés dans les propriétés de l'objet. Par exemple, si nous faisons imprimer notre comportement de conversation le nom et l'âge de la personne, alors notre objet de personne aurait besoin de savoir quel est son âge et son nom. Ces propriétés que nous lui avons données plus tôt. Si tout cela semble un peu déroutant en ce moment, ne vous inquiétez pas, quand j'ai commencé à programmer, c'était le premier véritable obstacle que j'ai rencontré. Et il a fallu du dévouement et de la pratique jusqu'à ce que je le comprenne enfin. Nous ferons un usage intensif des objets tout au long de ces leçons. Et vous allez adorer le sentiment que vous obtenez quand il suffit de cliquer pour vous. Dans la vidéo suivante, nous allons apprendre à définir nos propres objets en utilisant des classes Python. Je te verrai là-bas. 112. Cours dans Python: Bienvenue dans notre série de vidéos sur la programmation orientée objet en Python. Dans la dernière vidéo, nous avons appris ce qu' est la programmation orientée objet et quel problème elle résout. Maintenant, regardons comment nous pouvons définir nos propres objets dans les programmes Python. Pour créer nos propres objets, nous utilisons des classes Python. Les classes sont utilisées pour créer des objets pratiquement autant d'objets uniques que nous le voulons. Ils définissent également un type. Par exemple, jetez un oeil à ce code. Mon nom de soulignement est égal à Austin. Ici, nous créons une nouvelle variable appelée mon nom avec une valeur d'Austin. Dans les coulisses de la variable est en fait référencer un objet. Le type d'objet est STR, court pour chaîne, qui est construit sur le type de données Python que vous avez probablement utilisé auparavant. Python définit une chaîne est une classe et afin de créer ce type d'objet de STR, nous avons instancié la classe STR pour instancier une classe ou pour créer une instance d'une classe, signifie simplement créer un objet à partir de cette classe. Vous avez ici le mot instanciation jeté beaucoup dans la programmation. Alors rappelez-vous juste, cela signifie prendre une classe et créer un objet à partir de cette classe. Pour rendre cela un peu plus clair, je vais utiliser une de mes analogies préférées. Disons que nous sommes en train d'écrire un programme qui crée des portes. Nous commencerons par créer une classe pour une seule porte. Cette classe ici est comme le plan pour lequel nous construisons tous nos objets de porte. La classe spécifiera certaines propriétés et comportements. Rappelez-vous, chacun de nos objets de porte aura ceux-ci et il y aura indépendant de chaque objet de porte. Une porte peut avoir des propriétés telles que la hauteur, couleur de la peinture, et si elle est actuellement verrouillée ou non. Il peut également avoir des comportements tels que l'ouverture, fermeture et le verrouillage à bascule. Nous avons défini une classe de porte, mais nous venons également de définir un nouveau type que nous pouvons utiliser dans notre programme. Créons un objet de porte d'une hauteur de 50 pouces, peint en orange. Et nous dirons juste que nous le construisons, il est déverrouillé. Ici. On vient d'instancier la classe des portes. Rappelez-vous, cela signifie que nous avons créé un type d'objet de porte à partir de notre classe de portes. Et nous ne nous limitons pas à en créer un. Comme dans le monde réel, nous pouvons construire beaucoup de portes à partir d'une seule porte. Nous pouvons initier de nombreux objets de porte de notre classe de porte unique. Ici, j'en ai instancié un de plus. Notez que chacun de ces objets de porte est unique. Ils ont des hauteurs et des couleurs différentes et chacun d'eux peut être verrouillé ou déverrouillé à tout moment. On peut changer la couleur de la peinture d'une seule porte et cela n'affecte pas le reste. Ces objets sont tous indépendants et ils ne s'appuyaient plus sur la classe. La classe dit juste à Python comment créer les objets. Voici une question. Pouvez-vous penser à des scénarios où des classes et des objets pourraient être utilisés dans un programme du monde réel. Dans la vidéo suivante, je vais vous donner quelques exemples, puis nous allons apprendre comment les classes sont réellement construites en Python. 113. Cours et instances: Bienvenue à notre programmation orientée objet en Python. Dans la dernière vidéo, j'ai posé la question, nous allons utiliser des classes et des objets dans des logiciels réels. J' ai trouvé deux exemples, des jeux vidéo dans les navigateurs Web. Pour un jeu vidéo, nous pourrions définir une classe ennemie dans les propriétés Holt comme le nom de l'ennemi, leur état de santé actuel et leur niveau de puissance. Pour les comportements, ils pourraient être en mesure d'attaquer, de subir des dégâts, et enfin, si leur santé est assez faible, déclaré défaite. Les jeux vidéo sont un excellent exemple de conception logicielle orientée objet complexe. Ils sont construits avec beaucoup et beaucoup de classes et ensuite ils comptent les uns sur les autres d'une manière ou d'une autre. Le navigateur Web que vous utilisez actuellement peut également être conçu avec OOP. Les barrages individuels peuvent chacun être leurs propres objets instanciés à partir de la classe de tabulation. Les propriétés peuvent être le texte du titre, que l'onglet soit actuellement affiché ou non , ainsi que la page Web affichée par l'onglet. Pour les comportements, nous pourrions avoir des vêtements et recharger. Maintenant, regardez chacune de ces propriétés attentivement. Je pense que le texte du titre est représenté sous forme d'une chaîne et que l'onglet est ouvert ou non. Eh bien, ça pourrait être un booléen, vrai ou faux. Mais à quelle heure devrait notre propriété de page Web B, il n'y a pas de type de données intégré dans Python qui peut stocker tout sur une page Web. Donc, ici, nous pouvons réellement créer une classe distincte appelée page avec ses propres propriétés et comportements. Comme vous pouvez le voir, les propriétés d'une classe Python ne sont pas limitées aux types de données intégrés en Python comme INT et SDR. Nos propres pages personnalisées comme la page peuvent également être utilisées comme propriétés d'autres classes. Lorsque nous instancions un TAM de classe ci-dessous, nous devons également lui fournir un objet de page à stocker, tout comme nous devons lui fournir un objet STR pour le nom. Le but de cet exercice était de vous montrer que logiciel est une collection d'objets qui interagissent les uns avec les autres. après mon expérience, la partie la plus difficile de l'apprentissage de la POO n'est pas réellement d'apprendre les concepts eux-mêmes, mais d'apprendre à concevoir un logiciel en termes de POO, la planification de votre projet logiciel prend souvent beaucoup plus de temps que le revêtement ça. C' est quelque chose qui peut défier à la fois les nouveaux développeurs et les développeurs de la saison. Comme vous le savez maintenant, une classe a défini à la fois les propriétés et les comportements de son objet. Alors maintenant, écrivons un. Pour définir une nouvelle classe, nous commençons par un mot-clé classes suivi du nom de la classe. Assez facile. Et bien, nous n'avons pas vraiment appris comment définir les propriétés sont des comportements en Python. Alors écrivons simplement des chemins. C' est un mot-clé spécial qui indique à Python qu'il s'agit d'une classe vide. Avant de pouvoir ajouter des propriétés à notre classe, nous devons en apprendre davantage sur leur fonctionnement en Python. Tout d'abord, les propriétés sont en fait appelées attributs en Python. Il s'agit de deux types d'attributs, les attributs d' instance et les attributs de classe. Les attributs d'instance sont ce que nous avons vu auparavant. Ce sont les attributs qui sont indépendants de chaque objet comme la couleur de la porte ou la hauteur. Dans l'exemple précédent. Dans cet exemple, notre chien classe à attributs instantanés, nom et âge. Ce déf soulignement, soulignement, init, soulignement, soulignement. C' est une fonction très spéciale qui appartient à notre classe. Ceci est appelé l'initialiseur, et il est en quelque sorte similaire à un constructeur. Si vous avez déjà vu ça dans une autre langue, nous n'appelons pas cette fonction nous-mêmes. Au lieu de cela, Python appellera automatiquement cette fonction lorsque nous instancions la classe. En d'autres termes, cette fonction est utilisée pour construire un nouvel objet à partir de la classe. L' objet de l'initialiseur est de fournir à notre objet des valeurs d'attribut initiales. Vous pouvez voir que cet initialiseur prend trois paramètres, nom de soi et âge. Lorsque nous instancions la classe de chien, vous devrez passer les valeurs pour le nom en âge, puis cette fonction attribuera aux nouveaux objets ces valeurs. Self est un mot-clé très spécial, et le fait que nous devons l'inclure dans nos paramètres est l'un de ces petits bouchons Python. Nous ne transmettons pas de valeur pour soi lorsque nous créons l'objet. Au lieu de cela, self est utilisé pour faire référence à l'objet en cours créé pendant l'instanciation. Donc, quand on dit que self.age est égal à l'âge, on dit de prendre la valeur de l'âge, on passe et on attribue ça aux nouveaux objets. Ne pas l'attribut âge, et la même chose vaut pour le nom. Rappelez-vous avant comment nous avons dit que chaque objet a ses propres valeurs indépendantes pour ses attributs comme comment une porte peut être orange et une autre gris. Eh bien, ce n'est pas forcément le cas. C' est là que les attributs de classe entrent en jeu. Contrairement aux attributs instantanés, qui sont indépendants pour chaque instance de la classe, classe, les attributs sont les mêmes pour chaque instance. Pensez-y comme ça avec des attributs instantanés, nous pourrions peindre une porte une nouvelle couleur et cela n'affecterait pas les couleurs des autres portes. Cependant, si nous faisons de la couleur un attribut de classe et que nous la définissons sur jaune, alors toutes les portes seraient jaunes par défaut lorsqu'elles sont instanciées. Ceci est juste une valeur par défaut pour la classe. Cela ne veut pas dire qu'on doit instancier toutes nos portes. Changer la couleur d'une porte changera tous. Si vous pensez statique en ce moment, c'est un peu différent. Dans l'exemple de la classe aube, espèce est définie à l'extérieur si la fonction d'initialiseur, ce qui signifie qu'il s'agit d'un attribut de classe. Cela signifie que chaque chien que nous instancions sera par défaut un mammifère. Et nous ne pouvons pas changer cela quand nous créons un nouvel objet Dog. Dans la vidéo suivante, nous commencerons à programmer notre classe de chien et nous verrons comment l'instanciation de classe fonctionne en Python. 114. Ajouter des attributs à un cours Python: Bienvenue dans notre série sur la programmation orientée objet en Python. Dans la dernière vidéo, nous avons appris comment les classes Python peuvent définir fois des attributs de classe et des attributs d'instance pour mieux comprendre comment les classes sont instanciées. Allons vers le shell Python. Bon, donc je suis ici dans le shell Python et je vais commencer par créer un nouveau chien de classe. Et je vais juste écrire passe, qui dira à Python que nous voulons un objet vide. Maintenant, je vais simplement appeler un chien comme ça. Python instanciera cela et il nous dira réellement l'adresse mémoire de notre nouvel objet Dog. C' est ce numéro fantaisiste juste ici. Maintenant, créons un autre objet chien. Pensez-vous que ce nouvel objet partagera la même adresse mémoire que le premier ? Ou est-ce que ça va être différent ? Si nous appuyons ici, vous verrez que ce nouvel objet a une adresse mémoire légèrement différente. C' est parce que chaque incident de notre classe de chien est unique. Bien sûr, les deux objets sont créés à partir de la même classe, mais ce sont toujours des objets différents en mémoire. Si nous remplissons réellement notre classe avec l'initialiseur, nous pourrions attribuer différents attributs à chaque objet. Et juste pour ramener ce point à la maison, je vais créer deux nouveaux chiens et je vais les stocker dans les variables a et b. Donc, à ce stade, a et B sont les deux variables qui pointent vers des objets en mémoire, des objets et des chiens de type. Nous pouvons facilement vérifier s'ils sont le même objet en utilisant l'opérateur double égal. Et si j'appuie sur Entrée, nous verrons qu'ils ne sont pas des objets de chien différents a et B pointés, même si les deux objets sont vides. Et pour prouver que ces deux variables sont de type chien, j'utiliserai la fonction intégrée de Python L, Donnez-lui un comme argument. Comme vous pouvez le voir que cette variable pointe vers un objet qui a été instancié à partir de la classe chien. Maintenant, nous allons enfin construire une vraie classe de chien et créer de vrais objets de chien. Je suis ici dans le Python inactif, et je vais commencer par définir une nouvelle classe appelée chien. Ensuite, je vais taper des espèces égales à des mammifères. Cela va créer un attribut de classe pour notre chien. Cela signifie que chaque nouveau chien que nous créons sera un mammifère par défaut. Mais maintenant, je veux écrire des attributs d'instance uniques. Donc, je vais ajouter un initialiseur à la classe en tapant ma fonction init. Et maintenant, nous aurons besoin de trois paramètres  : moi, nom et âge. Rappelez-vous, nous ne fournissons pas réellement de valeur pour soi, mais nous devons faire quelque chose avec ces noms et paramètres d'âge. Donc tous disent à Python que nous voulons les affecter à un nouvel objet en cours de création. Ici, des références auto à l'objet en cours de création. Donc self.name est égal au nom, signifie attribuer le paramètre name au nom de ce chien. Et c'est tout. Nous avons créé notre classe de chiens. Utilisons-le en fait. Nous allons créer une nouvelle variable appelée Tommy. Et ça va pointer vers un objet chien. Nous créons un nouvel objet en tapant le nom de la classe suivi par les parenthèses, presque comme s'il s'agissait d'une fonction. Lorsque nous faisons cela, Python va réellement appeler l'initialiseur dans les coulisses. De même, nous devrons fournir nos arguments de nom et d'âge. Alors, prenez le nom de Tommy et on lui donnera cinq ans. Ensuite, faisons un autre chien nommé Lily, et on lui donnera un âge de sept ans. Félicitations, si vous avez suivi, vous venez de créer un instancié de votre première classe. ce moment, nous avons deux chiens, un nommé Tommy avec cinq ans, et l'autre nommé Lily avec sept ans. Mais comment pouvons-nous réellement accéder aux données à l'intérieur de ces objets ? Pour ce faire, nous pouvons utiliser le modificateur d'accès, qui en python est le point. Donc, je vais taper une déclaration d'impression. Je dirai que le blanc est vide et le blanc est vide. Et puis j'appellerai la fonction de formation du DOD sur cette chaîne, qui nous permettra de remplir ces blancs. Parce que nous avons quatre blancs, devra passer dans la fonction de format Don pour les arguments. Donc je vais passer le nom de Tommy dot, Tommy dot, age, Lily, ne nomme pas Lilly Dawn age. Ceux-ci vont accéder à tous les attributs de nos deux objets. Regardez ensuite, voir si les deux chiens ont l'attribut mammifère. Je vais taper si Tommy dont espèce est égale à la corde mammifère, alors je veux imprimer vide est vide. Alors comme avant, je vais remplir ces blancs avec le nom de Tommy et espèces Tommy en utilisant la fonction de format de point. D' accord, exécutons le code. Et le côté ci-dessus ici, nous pouvons voir exactement ce que nous attendions. Tommy a cinq ans et Lily a sept ans, ce qui est de notre première impression. Et puis parce que Tom est un mammifère, nous avons aussi vu que Tommy est un mammifère imprimé à l'écran. Maintenant, changeons un peu les choses. Après avoir créé de nouveaux objets d'un chien, modifions leurs attributs. Donc je vais monter quelques lignes et je vais taper Lily point h égal à huit, et ensuite Tommy a fait des espèces égales à la souris. Maintenant, mettez cette vidéo en pause et jetez un oeil à ce code et pensez à ce qu'il va imprimer. Bon, jetons un coup d'oeil. On voit que le Tommy a 5 ans et Lily a 8 ans. C' est parce qu'un changement de l'âge de Lily après que nous avons créé l'objet. Et remarquez que Tom n'est plus un mammifère. C' est parce qu'on change Tommy pour être un mammifère à une souris. Et encore une fois, nous l'avons fait après avoir créé l'objet. Lorsque nous attribuons une valeur à ces attributs, l'initialiseur n'a pas été utilisé et cela n'est utilisé que lorsque nous créons de nouveaux objets, pas modifions leurs attributs. En outre, si vous remarquez ici, les deux objets Doug sont complètement indépendants l'un de l'autre. Même s'ils venaient de la même classe. Même si je change Tommy pour être un mammifère à une souris, Lily est toujours un mammifère. Et ce droit là est juste gratter la surface de la puissance de la programmation orientée objet. Dans la vidéo suivante, nous allons jeter un oeil aux méthodes d'instance, qui est la façon fantaisie Python de dire les comportements de classe. Je te verrai là-bas. 115. Ajouter des méthodes à un cours Python: Bienvenue dans notre série et notre programmation orientée objet en Python. Dans la dernière vidéo, nous avons créé ce cours Dawn ici, et nous avons imprimé quelques informations sur chacun de nos objets de chien sur l'écran. Si vous vous en souvenez, nous avons créé des objets de porte qui pourraient être ouverts, fermés et des journaux. J' appelle ces comportements juste pour démontrer les concepts. Mais en Python, ces méthodes sont en fait appelées méthodes d'instance. Une méthode est juste fondamentalement une fonction qui appartient à une classe. Il utilise exactement la même manière qu'une fonction, sauf comme l'initialiseur, nous devons inclure un paramètre auto. Créons effectivement des méthodes d'instance. abord, nous avons besoin d'un moyen pour le chien de signaler ses attributs et d'une bonne façon formatée. Nous allons créer la nouvelle méthode d'instance appelée description. Et rappelez-vous que nous devons inclure le paramètre auto ici. Et maintenant, nous allons taper return a blank a vid years, et nous allons utiliser la fonction de format pratique pour remplir ces blancs passant dans self.name, self.age comme arguments. Notez ici, comment nous ne sommes pas directement imprimer sur la console. Au lieu de cela, nous avons cette méthode pour retourner une belle chaîne formatée avec un attribut de danse cuit dedans. Nous devrons donc imprimer manuellement plus tard. Ensuite, nous devrions ajouter un moyen pour le chien de parler quelque chose. Donc, créons une nouvelle méthode d'instance et nous appellerons celle-ci parler. Cela prendra le paramètre de cellule comme avant, mais je veux que son travail puisse dire ce qu'on lui dise. Et ajoutons un autre paramètre appelé son. Cela devra être fourni lorsque nous appelons cette méthode plus tard. Enfin, nous retournerons une chaîne formatée où le nom du point de chien indique le son que nous passons comme avant. Maintenant, supprimons tout cet ancien code de la dernière fois et nous allons créer un nouvel objet Dog appelé Tommy avec le nom de Tommy et un âge de six ans. Tout comme avec les attributs, nous pouvons utiliser dot pour accéder aux méthodes instantanées à. Maintenant, vous pourriez être tenté d'écrire la description de Tommy dot ici. Et bien que techniquement ce n'est pas mal, cela ne produirait rien sur la console. C' est parce que nous avons la méthode de description DOD renvoyant une chaîne formatée plutôt que de l'imprimer directement. Et donc ce code ici obtiendra cette chaîne formatée, puis ne fera littéralement rien avec elle. Si nous voulons réellement le voir, devra passer le retour de cet appel de méthode dans la fonction d'impression. La prochaine fente pour utiliser notre méthode de parole écrira imprimer Tommy, ne parle pas, et ensuite nous passerons dans le graphique, le graphique. Et maintenant, si nous exécutons le code, nous verrons qu'à droite nous avons Tommy a six ans, suivi du graphique Tommy Says, graphique. Comme vous pouvez le voir, les méthodes d'instance fonctionnent et ils peuvent accéder à la fois aux attributs qui appartiennent à l'objet actuel ainsi qu' nouvelles données que nous transmettons sous la forme d'un paramètre de méthode. Créons une autre méthode d'instance qui sera appelée chaque fois que le chien célèbre son anniversaire. Nous reprendrons nos cours ici et nous appellerons cette nouvelle méthode d'anniversaire. Maintenant, dans le corps de la méthode, je vais taper l'âge auto plus un, ce qui augmentera l'attribut d'âge du chien d'un. En d'autres termes, chaque fois que cette méthode est appelée, l'attribut d'âge interne des chiens augmentera d'un. Donc maintenant tout en bas, je peux dire Tommy dot anniversaire et puis peut imprimer oh, Tommy DOD description à nouveau. Notez comment nous n'avons pas eu à mettre un appel de méthode d'anniversaire dans la fonction d'impression. C' est parce que la fonction d'anniversaire ne renvoie pas réellement de données que nous pouvons imprimer. Il change juste les attributs internes de l'âge de notre chien. Donc maintenant, si je lance le code, on peut voir que Tommy est six graphes et maintenant Tommy a sept ans. À ce stade, nous sommes presque à la fin de notre tutoriel POO, mais je dois vous avertir, la dernière partie peut être un peu difficile à saisir si vous n'avez pas déjà au moins une compréhension de base de tout ce que nous avons couvert jusqu'à présent. Je suggère fortement de pratiquer ces concepts en créant vos propres classes Python, puis en les instanciant. Rappelez-vous, une classe peut être pratiquement n'importe quel nom. Alors regardez autour de vous et voyez si vous pouvez modéliser quelque chose dans votre code et posez-vous quelques questions sur quand vous concevez votre classe, quels attributs que l'objet ont à tous les objets ont la même valeur pour cet attribut par défaut ? Ou sont-ils tous connus depuis le moment où ils sont créés ? Quels comportements l'objet présente-t-il réellement ? Et comment ces comportements pourraient-ils changer l'attribut de l'objet ? Si vous êtes vraiment prêt pour un défi, créez une classe où l'un de ses attributs est en fait un autre type personnalisé que vous définissez, tout comme nous l'avons fait avec la classe d'onglet stockant un objet de page. Si vous pouvez le faire, alors vous devriez certainement avoir une bonne compréhension de ce matériau et vous serez prêt à aller de l'avant. Et d'un autre côté, si vous êtes toujours aux prises avec ça, ne vous sentez pas mal du tout. Comme je l'ai mentionné au tout début, c'est un concept très difficile pour beaucoup de nouveaux programmeurs à saisir, y compris moi-même. Cela vous oblige à penser à votre logiciel d'une manière qui vous est probablement complètement étrangère. Et ce n'est pas quelque chose qui est facile à maîtriser. Si vous êtes confus à propos de quelque chose ou que vous l'avez oublié, c' est une bonne idée de regarder à nouveau les parties précédentes de la section. Donnez-vous beaucoup de temps pour pratiquer. Et une fois que vous avez compris le concept, revenez et apprenez le dernier concept appelé héritage. Merci d'avoir regardé. 116. Introduction à Inheritance Introduction à OOP: Bienvenue dans notre série sur la programmation orientée objet en Python. Dans la dernière vidéo, nous avons appris sur les méthodes d'instance qui sont utilisées pour représenter les comportements sont les objets ont toute l'idée de classes créer des objets, petits paquets de données associées et des actions est une chose vraiment puissante. Mais il est également sensible aux mauvaises pratiques de codage appelées sèches. Dry signifie ne pas vous répéter. Cela dit, lorsque nous écrivons du code, nous devrions éviter de copier et de coller les mêmes morceaux de code chaque fois que possible. Si vous exécutez une programmation Python non triviale et que vous vous retrouvez à copier et coller des attributs et des méthodes instantanées entre beaucoup de classes différentes. Cela signifie qu'il est probablement temps de repenser la façon dont vous concevez votre logiciel. Jetez un oeil à cet exemple. Disons que nous sommes en train d'écrire un programme qui est censé construire, maintenir beaucoup de personnes différentes. Comme vous pouvez probablement le deviner, chaque personne va être un objet. Mais voici la cabane. Nous pouvons avoir des objets de gens généraux, et ensuite nous pouvons avoir un type spécial de personnes appelées un bébé. Un bébé peut faire tout ce qu'une personne normale pourrait faire, sauf qu'il pourrait faire les choses un peu différemment comme parler. En outre, il peut également avoir des comportements uniques qui sont la personne générale n'a pas, tels que la capacité de faire une sieste quand il le veut. Être un bébé a l'air génial. Comme vous l'avez deviné, nous allons avoir besoin de deux cours différents ici, un pour la personne et l'autre pour le bébé. Vous remarquerez ici que ces deux classes sont exactement les mêmes, mais la classe bébé a maintenant un comportement de plus appelé sieste. Maintenant, nous pourrions concevoir notre logiciel de cette façon et cela fonctionnerait bien. Mais rappelez-vous, un bébé doit être capable de faire tout ce qu'une personne plus générale peut faire, quoique parfois un peu différemment. Cela signifie que notre classe de bébé va avoir exactement les mêmes méthodes d'instance qu' une classe de personne a dans la plupart de ces méthodes vont regarder exactement le même. Mais maintenant que se passe-t-il si nous voulons apporter un changement à la classe Person ? Si nous changeons l'action de quelque chose comme sauter à filer, alors nous devons également changer les méthodes d'action du bébé ainsi. Et si nous ajoutons une autre classe comme adulte ou adolescent, alors nous devrions aussi maintenir ces deux-là. copie de code peut rendre les choses plus faciles dans le moment, mais cela peut rendre notre logiciel vraiment difficile à maintenir plus tard, surtout à mesure qu'il grandit. Pour résoudre ce problème. Prenons un peu de recul et réfléchissons aux relations qui existent entre ces deux classes. Je pense que vous seriez d'accord pour dire qu'un bébé est une personne, non ? C' est pourquoi il partage les mêmes comportements que la classe Person. Alors que se passe-t-il s'il y avait un moyen que nous puissions faire en sorte que la classe de bébé hérite automatiquement de chaque attribut et méthode d'instance de la personne, mais ensuite les modifier un peu pour s'adapter aux besoins de la classe de bébé. Ensuite, nous pourrions même ajouter notre propre comportement comme sieste qui serait exclusif à la classe de bébé. C' est ici qu'on appelle l'héritage d'objet. Et s'il est utilisé correctement, cela rend la gestion de beaucoup de classes similaires beaucoup plus facile. héritage nous permet de faire une classe, la classe enfant, ou la classe dérivée, ou d'une autre classe appelée la classe parent ou la classe de base. En Python, la classe enfant hérite automatiquement chaque attribut et méthode d'instance de la classe parent. Mais nous pouvons également redéfinir certains attributs ou méthodes. Donc, si nous voulons que notre objet de bébé parle différemment d'un objet de personne. On peut faire ça ? Si nous voulons que notre objet bébé ait la capacité de faire la sieste, nous pouvons le faire aussi. Et si nous devons faire tourner notre personne au lieu de sauter, nous pouvons modifier la classe de personne et la classe de bébé qui va automatiquement reprendre avec ces changements. Il n'est pas nécessaire d'éditer le code à plus d'un endroit. Pour comprendre l'héritage, jetez un oeil à ce graphique à droite. Et tout en haut du graphique se trouve l'objet. Dans de nombreuses langues, l'objet inclus Python est la classe parent de toutes les classes de la langue. Cela inclut les classes de construction comme l'INT ou le STR, ainsi que toutes les classes personnalisées que nous créons. Dans ce diagramme, vous pouvez voir que bébé hérite de Personne, qui à son tour hérite de l'objet. Comme nous le verrons plus loin, Python voit n'importe quel objet bébé que nous créons comme une personne et un objet. 117. Exemple de Inheritance: Bienvenue dans notre série sur la programmation orientée objet en Python. Dans la dernière vidéo, nous avons appris l'idée de l'héritage, ce qui nous permet de définir une classe enfant qui hérite automatiquement des attributs et des méthodes de sa classe parent. Voyons maintenant comment l'héritage fonctionne en action. Donc, j'entends par l'éditeur Python et la première chose que nous allons faire est de définir une nouvelle classe appelée Person. Je vais voir la description égale personne générale, ce qui sera notre seul attribut de classe. Maintenant, nous allons créer notre méthode d'initialiseur et cela va lui donner des paramètres de nom et d'âge. Comme d'habitude, nous allons définir les attributs égaux à ces paramètres. Maintenant, je voulais trouver quelques comportements que chaque personne aura. Je vais créer une nouvelle méthode d'instance appelée Speak, et le seul paramètre étant self. Et je vais faire cette impression de mon nom est vide et j'ai des années vierges. Ensuite, pour combler ces lacunes, j'utiliserai la fonction de format et je la passerai dans le self.name. Self.age est des arguments. Ensuite, je veux que notre personne puisse manger tout ce que nous lui donnons. Donc je vais dire ici, def, manger de l'auto-nourriture, point-virgule, et ensuite j'imprimerai un blanc, chaque blanc. Et pour remplir ces blancs passera en nom de soi ainsi que notre paramètre d'auto-alimentation. Enfin, donnons à notre personne la capacité d'effectuer une action. Donc, je vais créer une dernière méthode d'instance appelée action. Et quand ça s'appelle, tous disent des sauts vierges et je passerai en auto-nommé pour remplir le vide. Bon, maintenant que nous avons notre classe de personne générale, créons une sous-classe appelée bébé. Pour ce faire, je vais taper bébé comme avant, mais ensuite je vais mettre entre parenthèses. À l'intérieur de ces parenthèses devra clarifier ce que sera la classe parent du bébé. Donc, nous allons taper en personne. Et maintenant techniquement si je devais écrire des chemins dans le corps de la classe, alors notre bébé sera utilisable, mais ils feront exactement la même chose que cette personne ferait. Donc, nous voulons changer cela. Tout d'abord, je vais redéfinir notre attribut de classe de description. Je vais le mettre comme égal à quelque chose pour aimer bébé, et ça devrait marcher. Cette redéfinition ici est appelée overriding car tout objet bébé que nous créons utilisera une description spécifique à la place avec une description héritée automatiquement de la classe person. Pour ce faire, je vais taper def parler avec soi comme paramètre. Et puis je dirai imprimer maman, ce qui est juste quelques petits donneurs que j'ai inventés. De cette façon, on appelle la méthode de parler sur un bébé. Il dira ce charabia au lieu de ce que la classe parente aurait dit. Enfin, je veux donner à ces bébés et une fonctionnalité exclusive. Donnons au bébé la possibilité de faire la sieste quand il le veut. Tous disent def, sieste avec un périmètre de soi. Et puis je vais écrire imprimer en blanc, faire une sieste. Et à la place du vide, je dirai le nom de soi. Maintenant, tout objet bébé spécifique que nous créons aura la capacité de faire la sieste, mais un objet personnel plus général ne le sera pas. Tout ce que nous avons à faire, c'est d'instancier ces classes et de les mettre au travail. Je vais créer un nouvel objet de personne appelé « personne », et il aura un nom de John à l'âge de 30 ans. Ensuite, je veux appeler toutes ces méthodes d'instance de la personne. Donc, je vais taper personne point parler en personne point manger. Et nous lui donnerons du poisson. Et enfin personne.Toute action pour le voir sauter. Maintenant, créons un objet bébé appelé Baby. Je dois donner un nom et un âge à l'initialiseur pour le bébé. Mais si vous regardez, bébé n'a pas vraiment d'initialiseur. C' est parce qu'il a automatiquement hérité de la classe person. Rappelez-vous, ce bébé est également considéré comme une personne et en tant que tel, il a besoin de remplir les attributs instantanés de la personne ainsi. Donc nous allons donner à ce bébé le nom de Van EIIL et un âge d'un an. Ensuite, nous allons appeler les mêmes méthodes d'instance de notre objet bébé. Je vais imprimer les deux descriptions de notre personne et la description du bébé. Exécutons le code. Tout cet exercice nous montre comment nous pouvons définir une classe enfant ou une classe dérivée qui hérite automatiquement de tout de la classe parent ou de la classe de base. Nous pouvons remplacer les attributs et les méthodes comme la description et la parole. Et nous pouvons même étendre notre classe enfant pour ajouter de nouvelles fonctionnalités comme nous l'avons fait avec la méthode NAT. Juste pour rendre cela encore plus clair, je vais passer à une nouvelle ligne et taper personne point. Si vous vous en souvenez, le Don est comme le modificateur d'accès qui nous permet d'accéder aux attributs et d'appeler les méthodes d'un objet. Puisque cet objet est une personne, remarquez comment intellisense ne voit pas la méthode NAT. C' est parce que c'est spécifique à la classe enfant et, en tant que tel, seuls les objets enfants l'ont. Cependant, si je supprime ceci et que je suis passé à bébé et que j'appuie sur point, vous pouvez voir que nous avons accès à tout ce qui est défini dans la classe Person ainsi qu'à la méthode Net spécifique. Mais maintenant et si on nous dit que nous devons apporter un changement à la méthode d'action, peut-être que maintenant nous voulons que les deux personnes tournent autour au lieu de sauter, plutôt que d'avoir à modifier le code dans plusieurs classes différentes. Tout ce que nous avons à faire maintenant est de changer le mot saute au mot spins dans notre classe de personne. Maintenant, si nous exécutons ce code, vous remarquerez que John et les groupes tournent au lieu de sauter. Et nous n'avons pas eu à apporter une seule modification à la classe des bébés. C' est l'une des raisons pour lesquelles l'héritage est si puissant. Rappelez-vous comment plus tôt j'ai dit que dans les coulisses, Python voit chaque objet comme l'objet type. Maintenant que nous avons nos cours codés, je peux vous montrer que c'est vrai. Pour prouver qu'un bébé est une personne, je vais imprimer le résultat de cette fonction spéciale appelée est instance. Cette fonction nous dira que l'objet spécifique est un type spécifique. Cette fonction prend deux arguments, donc je vais le passer dans l'objet bébé pour le premier et je veux vérifier si l'objet bébé est une instance de personne. Si je lance le code ici, vous verrez que sur le côté droit nous voyons vrai. Et c'est parce qu'un bébé est une personne, l'objet de bébé du type bébé, mais aussi le type de personne parce qu'il hérite de tout de la classe de personne. Voyons maintenant si notre objet bébé est de type objet. Je vais changer le mot personne ici en objet minuscule. Et si nous exécutons ce code, nous verrons que notre bébé est en fait un objet. Parce que bébé est une personne et la personne hérite de l'objet. Par conséquent, bébé hérite de l'objet à comme je l'ai mentionné précédemment, chaque classe en Python hérite de l'objet. Et en fait, nous n'avons pas besoin d'écrire ça dans la déclaration de classe. La raison pour laquelle la classe d'objet existe même dépasse le cadre de ce tutoriel. Mais pour l'instant, sachez que nos objets de bébé sont techniquement considérés comme un bébé, une personne et un objet. Et c'est une brève introduction à l'héritage. Nous n'avons pas tout couvert, mais cela vous donne une liste générale du fonctionnement de l'héritage. Comme vous pouvez le voir, l'héritage peut être extrêmement bénéfique, mais s'il n'est pas utilisé correctement, il peut être plus d'un mal de tête que tout autre. héritage est l'un des piliers fondamentaux de la programmation orientée objet, mais ce n'est pas le seul. Et il y a encore plus d'héritage que nous n'avons pas couvert ici. Mais ce tutoriel est plus axé sur les principes fondamentaux de POO plutôt que sur les caractéristiques spécifiques de l'héritage, le polymorphisme, l'encapsulation. O p est un sujet énorme et c'est difficile à maîtriser. Mais j'espère maintenant que vous avez au moins une appréciation de base de façon dont le grand logiciel est conçu avec des classes et des objets. À mon avis, la programmation devient beaucoup plus amusante avec la compréhension de la POO. Parce que vous pouvez aller au-delà de l'écriture de programmes triviaux comme un jeu de devinettes de nombre, et passer à l'écriture de logiciels réels en utilisant des frameworks et des bibliothèques comme Django et map plot lib, codage heureux. 118. Scripts, Modules, paquets et bibliothèques 2022: Python utilise beaucoup de terminologie sophistiquée que vous ne connaissez peut-être pas si vous débutez dans la programmation ou si vous venez d' un autre langage. Avant python, mon arrière-plan était principalement en livres c et dot NET Framework de Microsoft. Je me souviens avoir essayé d'apprendre Python, mais j'ai été un peu confus par tous ces mots à la mode. Mon objectif dans cette leçon est d'éclaircir certaines choses afin que ce ne soit pas aussi déroutant pour vous plus tard. Le script Python est mieux défini comme un fichier Python contenant des commandes et un ordre logique. Pour que cela soit considéré comme un script, le programme doit faire quelque chose, vraiment, n'importe quoi lorsqu'il est exécuté par l'interpréteur Python. Pour mieux comprendre cela, jetez un coup d'œil à ces deux programmes. Les deux programmes contiennent une fonction qui renvoie la somme de deux valeurs. Cependant, seul le programme ou le droit appellera cette fonction et imprimera son résultat. Le fichier de droite est destiné à être exécuté directement. Nous pouvons donc voir qu' il s'agit d'un script Python. autre côté, le programme de gauche ne semble pas vraiment être destiné à faire quoi que ce soit. exécution de ce fichier ne produira aucune sorte de sortie puisque la fonction n'a jamais été appelée, elle n'est pas destinée à être exécutée directement. Le fichier de gauche est mieux classé comme module. C'est parce que nous pouvons l'importer dans d'autres fichiers pour utiliser ses classes, fonctions, variables et autres membres. C'est défini. Je vais changer le programme à droite pour qu'au lieu de définir la fonction d'ajout de parenthèses, nous l'importons à partir du module de gauche. Cela a pour effet de rendre la fonction d'ajout à gauche accessible au script de droite. scripts courts sont donc Les scripts courts sont donc destinés à être exécutés directement, alors que les modules sont destinés à être importés. script contient souvent des instructions hors du champ d'application d' une classe ou d'une fonction. Considérant que les modules permettent de trouver des classes, des fonctions , des variables et d'autres membres à utiliser dans des scripts aussi importants. Les mots scripts et modules sont souvent utilisés de manière interchangeable. Sachez donc que vous pouvez voir d'autres personnes les utiliser d'une manière qui ne respecte pas strictement ces définitions. Les paquets sont un ensemble de modules associés. Un package peut être un module Python individuel, mais il s'agit le plus souvent d'un ensemble de plusieurs modules associés regroupés ensemble. Voici le package date util qui permet d'effectuer des opérations avancées liées aux données. Il est regroupé dans un dossier appelé date util. À l'intérieur, il y a un tas de modules individuels, ainsi que des dossiers contenant d'autres modules qui peuvent être importés dans vos scripts Python. Ce sont des modules car ils ne font rien d'intéressant par eux-mêmes. Lorsque vous en importez un dans votre propre script, rien ne se passe vraiment. Vous devez utiliser quelque chose défini dans les modules, comme une fonction de classe ou une variable. Ce fichier Intel spécial indique à Python qu'il s'agit d'un package contenant potentiellement plus de modules imbriqués dans des sous-dossiers. Nous ne pouvons pas parler de bibliothèques sans mentionner Python Standard Library. La bibliothèque standard Python est une vaste collection de modules et de packages inclus dans votre version de Python. Cela signifie que vous n'avez pas à les télécharger depuis n'importe où. Vous pouvez simplement les importer dans vos scripts et commencer à les utiliser immédiatement. Date util est un exemple de package de bibliothèque standard, mais il y en a aussi d'autres comme e-mail et JSON. Le principal point à retenir ici est que beaucoup de choses sont subjectives dans une certaine mesure . Les scripts sont des programmes Python exécutables qui font quelque chose lorsqu'ils sont exécutés. Les modules ou fichiers Python destinés à être importés dans des scripts et d'autres modules afin qu'ils soient des membres définis tels que les classes et les fonctions peuvent être utilisés. Les packages sont un ensemble de modules associés qui visent à atteindre un objectif commun. Enfin, la bibliothèque standard Python est un ensemble de packages et de modules pouvant être utilisés pour accéder aux fonctionnalités intégrées. Dans un monde idéal, vous importez sans problème tous les modules nécessaires dans des scripts Python. Malheureusement, ce n'est souvent pas le cas. Dans la vidéo suivante, vous recevrez une introduction aux modules et je vais vous montrer comment écrire un module. Merci d'avoir regardé. 119. Écriture d'un module: Dans cette vidéo, vous obtiendrez une introduction aux modules en écrivant un court module. Il existe trois types de modules différents en Python. Le module peut être écrit en python lui-même, mais les modules peuvent également être écrits en C, puis chargés dynamiquement au moment de l'exécution. Et puis il y a aussi des modules intégrés qui sont intrinsèquement contenus dans l'interpréteur lui-même. Et vous avez peut-être déjà importé quelques-uns d'entre eux dans le passé, comme les mathématiques ou l'importation d'une ligne de date aléatoire. Pour cette vidéo, je vais vous demander d'essayer la première option, écrivant un module simple en Python lui-même. Laisse-moi te faire essayer ça et un éditeur. Tout d'abord, faisons un nouveau fichier et nommez-le mod dot PY. Mod dot PY est un fichier Python standard. À l'intérieur de celui-ci, vous allez créer une chaîne d'objets avec une petite liste et définir une fonction. Appelons simplement print_i. Pretty prend un argument appelé ARG et imprime l'impression en utilisant une chaîne F. Il y avait une déclaration d'argument selon laquelle le F est égal à l'arc dans lequel vous entrez, appelant la variable dans le rétrécissement F. Alors fais un cours. Je vais vous demander d'appeler ça le capital chic. Voilà votre classe classe classe. Et pour l'instant, ce cours ne fait rien. Il passe juste, enregistrez le fichier et exécutez-le. Ce que vous pouvez faire alors à partir du shell Python est de taper dans l'importation. Puisque vous étiez dans le même répertoire où vous avez créé le fichier, vous pouvez dire mode d'importation. Ok, qu'est-ce que ça a fait ? En important mod ? Vous avez importé tous les objets qui faisaient partie de ce code. Tu pourrais dire, OK, et bien, qu'est-ce que c'est ? Mod dot a volonté mob don a. Est-ce que lyse créé plus tôt pour mod dot S. Eh bien, c'est une chaîne. Si vous vouliez utiliser l'impression, vous pourriez dire, accord, model.predict est maintenant disponible aussi. L' argument est What is up in print_i imprime que l'ARG est égal à deux ce qui est en place ? Et vous pouvez faire un nouvel objet appelé x en utilisant MOD dot classe. Qu' est-ce que x ? Eh bien, x est un objet classe du module mod. Cool. Donc maintenant, vous avez accès à tous ces différents objets en important ce module, ce qui permet beaucoup de réutilisabilité du code. Maintenant que vous avez importé quelque chose, dans la vidéo suivante, vous allez vous concentrer sur l'endroit où l'interprète recherche les fichiers que vous importez. 120. La voie de recherche du module: Dans cette vidéo, vous allez explorer le chemin de recherche du module. Donc, d'où vous pouvez importer un module à partir de. Lorsque l'interpréteur exécute l'instruction import, il recherche ce fichier. Dans votre exemple ici, c'était math.pi. Il va chercher cela et des répertoires holistiques, les possibilités ou le répertoire courant, ce qui signifie d'où le script d'importation a été exécuté. Et il recherche également dans la variable d'environnement de chemin Python, qui a une liste de répertoires. Lorsque vous installez Python, il y a un ensemble de répertoires qui sont configurés dans le cadre de l'installation de Python. En outre, lorsque vous importez à partir de modules de construction, c'est d'où provient le code. Et il y a un moyen de voir tous ceux, pour voir cette liste de répertoires. Laissez-moi vous montrer que dans le code à l'intérieur du répertoire Python 39, il y a un fichier math.pi. Si vous avez enregistré votre fichier math.pi dans ce répertoire, vous pouvez taper import dans mod. Le fichier math.pi est juste là. Super. Donc maintenant Ahmad don a est disponible, MA dot S est disponible. Ok. Si vous vouliez voir tous ces endroits qui peuvent être importés à partir de. Actuellement, il existe un outil appelé le module SYN qui fait partie de la bibliothèque que vous pouvez importer. Et cela peut vous montrer le chemin Python actuel et les répertoires qui ont été configurés dans Python qui a été installé, importez SY S, qui est un module qui inclut des paramètres et des fonctions spécifiques au système auxquels vous pouvez accéder. Et l'un d'entre eux est le chemin de point syst. Donc, le chemin de point syst vous montrera une liste. Oups, j'ai oublié le point. Espérons que vous pouvez voir qu'ici, avec les crochets, ce sont tous les objets votre interprète va rechercher lorsque vous tapez le mot import, puis recherchez un module particulier que vous importez. Il s'agit du répertoire par défaut dans lequel vous vous trouvez, répertoire courant. Donc, il chercherait juste là. Ensuite, à partir de là, il va dans une version de Python que vous avez installée. Je vais sortir d'ici. Donc, ce sont tous les emplacements que vous pouvez enregistrer un fichier, soit dans le répertoire courant ou dans l'un de ces autres répertoires que vous voyez après l'exécution du chemin de point syst, que se passe-t-il si vous voulez ajouter des emplacements pour qu'il puisse importer ? C' est une possibilité de, pour prouver ce point. Je vais faire en sorte que ce ne soit pas le répertoire courant. Maintenant, si vous deviez taper import puis mod, cela va dire que le planning n'est pas trouvé, c'est actuellement dans ce répertoire ou dans l'un des autres emplacements que si nous importons sys et utilisons this.tab, pas dans aucun de ces emplacements dans lesquels l'importation effectue une recherche. Donc, où devriez-vous mettre votre fichier de module pour vous assurer que votre script que vous utilisez la commande d'importation de l'a confiné. Vous avez quelques choix. Vous pouvez le mettre dans le même répertoire. Le script d'entrée est écrit dans, qui est considéré comme un répertoire généralement courant. Vous pouvez modifier la variable d'environnement de chemin Python, ou vous pouvez la placer dans l'un des répertoires déjà dans ce chemin Python. Vous pouvez également le placer dans l'un des répertoires configurés dans le cadre de votre versement Python. Maintenant, il y a une autre solution qui peut être faite à l'exécution. Dans ce cas, vous pouvez modifier la liste des chemins d'accès SIS. Pour ce faire, vous allez utiliser une instruction ajouter une, tout comme vous dépendriez de n'importe quelle autre liste. Donc, dans ce cas particulier, à partir du chemin défini, vous pouvez ajouter. Et en tant qu'argument, vous allez entrer dans une chaîne brute. Donc, vous commencez par r et la citation unique. Maintenant, vous avez besoin du chemin du répertoire que vous pouvez simplement taper. En fermant mes guillemets là, c'est une erreur de nom. Peux-tu deviner pourquoi ? C'est parce qu'ils n'ont pas défini le paquet sys. Donc, nous allons taper import dot dit réexécuter cette ligne de code. Alors qu'est-ce que ça a fait ? Eh bien, si vous regardez ce chemin de point syst maintenant à la toute fin de celui-ci, il a placé cet emplacement particulier, ce répertoire dans le chemin. Si vous deviez taper import mod, il peut maintenant l'importer dans. Super. Une chose dont vous devez vous souvenir cependant, si vous deviez ajouter ces emplacements, sont les répertoires dans lesquels vous pouvez les importer qui ne dure que pour cette session particulière. Donc, si vous deviez quitter et recommencer pour essayer d'importer mod, il n'est pas disponible car si vous importez sys et utilisez à nouveau son chemin, vous pouvez voir qu'il ne fait plus partie de cette liste. Donc, cela devrait faire partie de votre script d'entrée. Ensuite, vous ajouteriez le chemin d'accès SIS au répertoire. Dans la vidéo suivante, vous allez approfondir cette déclaration d'importation. 121. La déclaration d'importation: Dans cette vidéo, vous allez plonger en profondeur dans la déclaration d'importation. formes rapides. L'instruction d'importation peut-elle prendre sa forme la plus simple ? C' est comme ce que vous avez déjà utilisé dans la vidéo précédente, importer, puis le nom du module. Dans ce cas, le contenu du module ne sont pas directement accessibles à la couleur, vous devez donc utiliser la notation par points. Le module crée un espace de noms distinct. Laisse-moi te montrer à quoi ça ressemble. Maintenant, vous avez déjà pratiqué cela, mais vous pouvez taper import mod et ensuite importer votre module. Maintenant, l'astuce est que les objets que vous avez déjà importés ne sont pas dans le même espace de noms local, ils ne sont pas dans la table de symboles locale. Donc, si vous deviez taper la lettre a et que l'objet n'est pas disponible, S n'est pas disponible. print_i, l'un de ces objets ne sont pas disponibles. Vous devez d'abord utiliser une notation Don commençant par le nom du module après avoir ajouté le DOD. Maintenant, je peux accéder à un ou vous pouvez accéder à s ou même print_i. Comme note, vous pouvez importer plusieurs modules à la fois, incluant simplement une virgule entre les noms de chacun. Comme alternative, des objets individuels du module peuvent être importés comme ceci à partir de, puis le nom du module importer, puis les noms des objets importent. Et puis vous utiliseriez les noms d'objets où vous pouvez utiliser plusieurs avec des virgules entre eux. Les objets individuels sont directement accessibles à la couleur, puis ils sont importés directement dans la table des symboles de couleur, ce qui signifie que vous n'avez pas besoin de séparer l'espace de noms à ce stade. Laisse-moi te montrer à quoi ça ressemble. Ils ont donc été importés à partir de la table de symboles locale. S est réellement disponible et l'impression dans l'espace de noms local ne vous oblige pas à utiliser la notation de points. Il est nécessaire d'être prudent cependant, si vous deviez créer un objet a, et disons qu'un a quelques chaînes dans une liste. Il y a un. Mais si vous deviez importer un à partir de votre module de nœud, qu'arrive-t-il au local existant a ? Eh bien, il a été écrasé, et donc cela crée une collision, si vous voulez, écrasant l'objet existant. Il est donc nécessaire d'être prudent avec l'espace de noms ici dans des noms génériques simples. Maintenant, il est également possible d'importer tout à partir d'un module à la fois. Dans ce cas, il sera de puis l'importation du nom du module, puis un signe d'astérisque. Vous avez probablement vu cela auparavant dans un script ou deux, que cet endroit est tous les noms des objets dans la table de symboles locale. La seule chose qui ne sera pas importée comme tout ce qui commence par un trait de soulignement, en le gardant privé du module lui-même. Cela n'est pas nécessairement recommandé, sauf si vous connaissez tous les noms qui ne vont pas entrer en conflit ou remplacer les noms existants, vous pouvez rencontrer des problèmes. Cela prendra tous les objets nommés du module dans le SymbolTable local. Alors maintenant les cours là-bas. L' objet de chaîne S. Je vais quitter à nouveau. Vous pouvez également avoir des objets individuels, puis les avoir nommés dans autre nom qui ressemblerait à ceci à partir de l'importation du module, quel que soit le nom de l'objet. Et puis comme ce que vous voulez que l'objet soit renommé, comme vous pouvez le faire plusieurs fois, ce qui permet de placer les noms directement dans le SymbolTable local. Par conséquent, cela éviterait les conflits avec les noms existants. Vous devez toujours faire attention à ce que vous choisissez comme noms alternatifs. Dans cet exemple, vous avez toujours des variables locales qui sont appelées a et une autre nommée S, qui est une chaîne. Voici les deux objets a et as. Donc, si vous deviez importer un et S à partir de votre module, il écrirait sur ces deux. Et ce que vous pouvez faire est de dire à partir d'une importation de mod demandant lui donner un nouveau nom, peut-être le nommer comme juste une chaîne. Et a est une liste. Encore une fois, vous pouvez utiliser cette virgule pour effectuer plusieurs importations à la fois. Donc maintenant un est toujours là et S est toujours là. Mais la chaîne est l'endroit où vous l'importez. Et une liste est également ce que vous l'importez à partir du module. Une autre possibilité est d'importer le module entier sous un autre nom. Et dans ce cas, vous importez le module est ce que vous souhaitez que l'autre nom soit. Une chose courante serait d'importer des pandas en tant que pd, par conséquent, ne pas avoir à l'épeler tout le chemin. Si un module a un nom vraiment long, certaines personnes aiment le raccourcir. Vous diriez import mod a, mod S, puis vous lui donneriez un nom différent. Alors nommez-le, dites mon module. Alors maintenant mon module est là et il a un, un cul. Les modules peuvent également être importés à partir d'une fonction. Laisse-moi te montrer à quoi ça ressemble. Dans ce dernier exemple, créez une fonction et je vous demanderai de le nommer importateur. À l'intérieur de la fonction, vous pourriez dire de MOD print_i important et ensuite utiliser l'impression à l'intérieur de celui-ci. Donc pour l'instant, MOD n'est pas là et print_i n'est pas disponible. Mais si vous exécutez importateur et appelez cette fonction, il a importé l'impression à partir du module mod , puis l'appeler avec l'argument bonjour tout le monde. Ensuite, vous allez vérifier la fonction DIR. 122. La fonction dir(): Cette vidéo concerne la fonction DIR. Après avoir appris les différentes façons d'importer un module ou le contenu de votre module et comment cela affecte l'appel de ces objets. Vous pourriez être intéressé par la façon d'afficher les Define Names qui se trouvent à l'intérieur d'un espace de noms. Et c'est là que le DIR ou la fonction de répertoire entre en jeu. C' est une fonction intégrée et elle renvoie une liste de noms définis dans un espace de noms. Si vous ne lui donnez aucun argument, il produit une liste alphabétique de tous les noms qui se trouvent actuellement dans la table de symboles locale. Jetons un coup d'oeil à ça. Lorsque DIR est exécuté par lui-même, vous verrez ces objets. Si vous deviez créer un nouvel objet, créez une liste nommée gagne. Et si vous deviez exécuter le DIR, vous verrez maintenant quand il y a un objet qui est également disponible en tant que table de symboles locale. Si vous deviez créer une équipe de nom de classe, c'est une classe très simple qui passe juste. Et vous deviez créer l'objet, disons, X, qui fait partie de l'équipe de classe. Maintenant, si vous tapez DIR, vous pouvez voir ici équipe, puis vous pouvez voir les autres objets, vents et x. sont donc les objets qui sont maintenant dans la table de symboles locale. Leurs noms sont, importons le module MOD et tapez DIR. Les objets individuels font partie de ce module mod ne font pas partie de la table de symboles locaux. Ils devraient être accessibles en tapant mod Dante ou mon point S en utilisant la syntaxe de notation ou l'impression mod dot. Mais si vous deviez importer des équipes individuelles, appreneriez-vous à faire la dernière fois l'importation d'une équipe que vous ne pouvez pas importer, un message d'erreur apparaît. Maintenant, si vous tapez l'équipe DIR, cette classe est là et un, cet objet est là, vous pouvez créer un objet Y de la classe d'équipe. C' est disponible. Et puis d'autres moyens que vous pouvez importer est d'importer mais avec un nom différent. Vous pouvez donc importer S et lui donner la chaîne de nom. Donc maintenant DIR ferait apparaître la chaîne est maintenant dans cette table locale aussi, S ne l'est pas, ce n'est pas défini, mais la chaîne l'est. Donc, jusqu'à maintenant, vous avez utilisé la fonction intégrée DIR sans aucun argument. Et si vous lui donnez un argument ? Eh bien, l'une des façons que vous pouvez l'utiliser est lui donner le nom du module intérieur en tant qu'argument. Ensuite, dans ce cas, la fonction DIR répertorie tous les noms à l'intérieur de ce module. Si vous deviez importer mod seul, vous pouvez le voir ici, mais vous ne pouvez pas voir les noms des objets qui ont été importés lorsque vous avez importé mod. Ceux-ci sont dans sa propre table de symboles. Pour les voir, tapez DIR open and close parenthèses. Et puis comme argument, mettez-le en mod. Il a sa propre classe d'équipe et signer la fonction de chaîne, une fonction print_i, et la chaîne S avec son propre nom. Je vais vous montrer un peu plus sur le nom dans la prochaine vidéo. Et le dernier que nous avons discuté en ce qui concerne l'importation était d'utiliser un caractère générique pour l'importation mod astérix, Qu'est-ce que cela met dans le répertoire ? Eh bien, il met tous les objets et donc il y a Team mod. Le module est toujours là à partir de quand vous l'importez, avant. Mais print_i et S et a sont tous maintenant dans la table de symboles locaux. Dans la vidéo suivante, vous apprendrez à exécuter un module en tant que script. 123. Exécution d'un module: Dans cette vidéo, vous apprendrez à exécuter un module en tant que script. Un module est-il également un script Python ? Eh bien, ouais, tout fichier dot py qui contient un module est essentiellement aussi un script Python. Laisse-moi te demander de jeter un oeil à ça. Si nous devions ouvrir le code pour mod DOD PY, comme vous pouvez le voir, c'est très simple. Que faire si vous deviez exécuter pi modifié est un script. Est-il possible à coup sûr tant que vous êtes dans le même répertoire, mais c'est seulement pour trouver des objets et alors il ne fait rien avec eux. Maintenant, si vous pouviez le modifier, vous pouvez imprimer en tant qu'impression un print_i, même définir X comme un objet classe, puis imprimer x. ok ? Donc je reçois, ça devrait être un peu plus intéressant. Ok, lancez-le. Donc, il a imprimé la chaîne, imprimé la liste, a montré l'argument pour print_i. Et puis il montre que lorsque cela est en cours d'exécution, le nom du module est l'objet principal et classe. À quoi cela ressemble lorsque vous l'importez ? Maintenant, démarrez le shell Python. Si vous deviez lancer l'importation MOND, que va-t-il se passer ? Ça va exécuter tout ce code. Une note que vous pourriez remarquer ici, elle servait à enregistrer cette principale. Maintenant, il dit mod et il le sort. Maintenant, ce n'est probablement pas ce que vous voulez. Vous voulez probablement lorsque vous exécutez model et pi pour afficher la sortie. Mais lorsque vous importez mod, vous ne voudrez peut-être pas que cette sortie se produise. Vous voudrez peut-être être en mesure d'afficher la sortie à des fins de test, mais vous ne voudrez peut-être pas avoir un chaque fois que vous l'importez. Ce serait beaucoup mieux si la sortie était facultative. Donc il y a quelque chose à aider. Existe-t-il quelque chose que vous pouvez faire si vous ne voulez pas que ce module génère un LPA lorsque vous l'importez simplement. Il y avait un outil qui peut aider à cela. Il utilise ce qu'on appelle une variable. Faire sous les variables sont les variables qui doubleront les traits de soulignement avant leur nom. Dans ce cas, la variable genre est en fait un nom. Le nom sera automatiquement défini sur le nom du module lors de son importation. C' est différent de lorsqu'un script Python est exécuté en tant que script autonome. Dans ce cas, le nom est défini sur la chaîne de main. Alors, comment peux-tu utiliser ça ? Je vais sortir d'ici. Retourne à mon point pi. Et je vais changer ce code un peu avant que tout cela commence. Créez une instruction if. Dans l'instruction if, vous allez utiliser cette variable sous la variable de nom. Donc, si ce nom est égal au domaine, ce qui est arrivé lorsque vous exécutez le script par lui-même ne pas importer. Ensuite, allez-y et faites toute cette activité. Je vais vous demander d'examiner toutes ces informations. Donc seulement si le nom est principal. Donc, cette fois, si vous deviez exécuter math.pi et vous pouvez voir que l'exécuter par lui-même. Le nom est principal. Et si vous deviez importer mod, ce n'est pas le cas, ce qui est assez soigné. Encore une fois, nous retournons à DIR et voici le mod importé, non ? Mais quel est le nom actuel ? Qu' est-ce qui se passe ici en tant que séance principale ? Si vous deviez dire, quel est le nom du mod ? Eh bien, le nom du mod est MOD. Cependant, si un fichier s'exécute en tant que script autonome, le nom sera défini sur la chaîne comme Maine. Et c'est comme ça que vous pouvez utiliser ce test. Plutôt soigné. Une des raisons pour lesquelles vous pouvez vouloir exécuter le module est un script autonome est de tester le contenu de celui-ci. Donc, dans cet exemple suivant est tout au sujet de faire un nouveau fichier. Appelez ça Fact dot py. Et à l'intérieur du fait DOD pi, vous allez définir une fonction assez simple qui est un factoriel et juste l'appeler fait à nouveau. Vous pouvez configurer la même instruction conditionnelle. Si le nom actuel est égal à la chaîne principale, alors vous savez qu'il est exécuté en tant que script autonome. Vous importez un autre module, le module CIS ou système, et vous allez utiliser un outil appelé ARG v, puis vous permet d'utiliser des arguments de ligne de commande. Pour pouvoir faire quelques tests. Vous allez mettre en place une autre instruction if. Et voici qu'il cherche son argument facultatif que vous pouvez ajouter lorsque vous exécutez le code en tant que script. Ensuite, il va imprimer la sortie de cette fonction de fait après avoir converti cet argument en un entier à partir d'une chaîne. Enregistrez ce fichier et pour tester si vous pouvez importer des faits, allez-y et démarrez une nouvelle session shell. Donc, les facteurs disponibles et il faut un argument de fin. Disons quel est le factoriel de cinq ? Donc, cela montre que le fait fonctionne comme un module. Dans la vidéo suivante, vous explorerez le rechargement d'un module. 124. Relier un module: Dans cette vidéo, je vais vous montrer comment recharger un module jusqu'à maintenant, vous pouvez simplement importer un module une fois, même si vous deviez essayer, un module n'est chargé qu'une fois par session d'interprète. Et cela fonctionnera bien pour les fonctions dans définitions de classe et l'importation initiale de tous ces objets. Mais parfois les modules peuvent également contenir des instructions exécutables. Habituellement, les instructions exécutables sont uniquement pour l'initialisation, et il est logique que ces instructions ne seront exécutées que la première fois que le module est importé. D' habitude, laisse-moi te demander de jeter un oeil à ça. Allez-y et rouvrez math.pi. Et à l'intérieur, je vais vous demander d'aller de l'avant et d'éclaircir ça si le nom est égal à principal. Il suffit de garder une déclaration d'impression simple pour imprimer l'IA. En fait, modifier un peu et utiliser une chaîne F. Et cela peut montrer que chaque fois que ce module est importé, il l'imprimerait, n'est-ce pas ? Alors sauvegardez cette ligne supplémentaire. Ok, ici dans le terminal. Que s'est-il passé si j'importe mod ? Eh bien, vous pouvez le voir ici. Initialement comme il importait mod, il est allé de l'avant et a fait la déclaration d'impression à l'intérieur en utilisant la force F. Et à l'intérieur, un mod Dante est disponible. Et si vous deviez importer à nouveau mod dans la même session ? Rien ne se passe, le montane est encore là ? Oui, en fait, tous les objets sont disponibles. Alors pourquoi ne réexécuterait-il pas ce code ? Will, c'est le truc. Il ne va l'importer qu'une seule fois et il n'a pas besoin de le réimporter. Donc, c'est une sorte de chose d'efficacité. Et si tu avais besoin de recharger ça ? Est-il possible de recharger un module ? Si tu avais vraiment besoin de le faire ? Il y a deux choix ici. Pour commencer, vous pouvez redémarrer l'interpréteur et vous avez pratiqué cela plusieurs fois. Ou il y a un module que vous pouvez importer appelé lib, et qui inclut une fonction appelée reload. Laisse-moi te montrer à quoi ça ressemble. Donc, parfois, vous pouvez vouloir le recharger, surtout si vous avez peut-être changé le code et que vous ne voulez pas redémarrer l'interpréteur. Comme peut-être que vous avez changé cela un peu et vous enregistrez, et maintenant vous voulez importer mod. Ces objets sont toujours là et l'importation de mod n'a rien imprimé. Encore une fois, si vous apportez des modifications à votre module, vous devrez utiliser un autre outil. Et cet outil est quelque chose qui peut être importé à partir d'import lib. Et à l'intérieur des libs d'importation, une fonction appelée Reload. Maintenant que vous l'avez importé, rechargement va recharger le module, puis le retourner à nouveau. Donc, dans ce cas, le module est appelé mod deux lib dot important recharger Maud serait effectivement rechargé ici. Il a été rechargé à partir de la source ici. Donc maintenant, vous avez un outil pratique que vous apportez des modifications à votre module. Vous pouvez les recharger en utilisant import live et la charge fonctionnelle. Dans la vidéo suivante, nous commencerons à explorer les paquets Python. Merci d'avoir regardé. 125. Comment installer un paquet dans Python à l'aide de PIP: Hey tout le monde, de retour dans notre cours Python, Python a une bibliothèque standard de paquets, mais de nombreux développeurs ont écrit leurs paquets pour étendre les capacités de Python encore plus loin. Ce sont des paquets tiers. Vous pouvez les installer à l'aide de l'outil pipe de Python. Cet outil télécharge et installe en toute sécurité des packages Python sur votre ordinateur à partir du point-virgule HTTPS, barre oblique avant avant PY PI.org, le site Web de Python Software Foundation. Imaginez que l'index des paquets Python est une sorte d'application gratuite pour les modules Python. Allons allumer la page Web. Ce sont les dernières mises à jour des packages ou modules Python, si vous préférez. Cliquez sur Parcourir les projets à partir de ce lien et vous pouvez voir des milliers de paquets prêts à les installer. Revenons à l'outil PIP. Le fichier exécutable de l'outil PIP est appelé pip sous Windows et PIP3 sous OS X et Linux. Sous Windows, vous pouvez trouver Pip dans le répertoire suivant. Alors que Pip est automatiquement installé avec Python 3.9 et sur Windows ainsi que OSX, vous devez l'installer séparément en ligne x. maintenant, je vais vous montrer comment installer des paquets de Python en utilisant Pip. Je vais montrer comment désinstaller un paquet qui n'est plus nécessaire. Maintenant, si vous utilisez Windows, vous pourrez installer le package Python en ouvrant invite de commande Windows, puis en tapant cette commande. Voyons les étapes un par un. Entrez d'abord invite de commande dans la zone de recherche de la fenêtre. le bouton droit sur l'invite de commandes Windows, puis sélectionnez Exécuter en tant qu'administrateur. En exécutant l'invite de commande en tant qu'administrateur, vous éviterez tout problème d'autorisation dans la barre oblique inverse du CD de l'invite de commande, car cette commande garantira que votre point de départ n'a que le nom du lecteur. Appuyez sur Entrée. Maintenant, vous verrez votre nom de lecteur de c, localisez votre chemin Python. Le dossier de scripts se trouve dans le dossier d'application Python où vous avez installé Python à l'origine. Dans mon cas, si j'ouvre l'Explorateur Windows, le chemin Python est celui-ci. Donc, si je clique avec le bouton droit, je peux copier cette adresse sous forme de texte. Maintenant, dans le type d'invite de commande cd suivi de votre chemin Python, je peux coller l'adresse contrôlerait plus V, appuyez sur Entrée. Maintenant, tapez cette commande pip install pour installer votre paquet Python. Puisque dans notre cas, nous aimerions installer le paquet pandas. Tapez ensuite la commande suivante dans l'invite de commandes. Enfin, appuyez sur Entrée et vous remarquerez que le paquet ici, c'est Panda, sera installé. Vous pouvez rapidement vérifier que Pankaj a été installé avec succès en Python en ouvrant le Python inactif, puis en exécutant la commande import pandas. Si aucune erreur n'apparaît après avoir appuyé sur F5 pour exécuter la commande Importer , le package a été installé avec succès, mission accomplie pour désinstaller un package à l'aide de Pip, tapez simplement les commandes suivantes dans l'invite de commandes. N' oubliez pas de définir le chemin Python avant de taper cette commande. Enfin, tapez y, puis appuyez sur Entrée pour procéder à la suppression du paquet. Merci d'avoir regardé. 126. Forfaits Python: Jusqu' à présent, vous n'aviez qu'un seul module à importer. Mais ce qui se passe, c'est que vous commencez à construire une application beaucoup plus grande, c'est là que les paquets Python peuvent entrer lorsque vous essayez de garder une trace d'un nombre croissant de modules. La création d'un package est généralement la solution. Les paquets permettent une structure hiérarchique a de l'espace de noms Module, en utilisant encore une fois la notation par points. Voici donc un exemple de structure de paquet et vous aurez à jouer avec cela dans un instant. Au niveau supérieur, vous avez à nouveau un répertoire, Et disons que ce répertoire est nommé paquet pk GY. Et à l'intérieur de celui-ci, il comprend mod E1 dot pi, puis il a un deuxième module, mod deux points py. Donc maintenant, ces deux modèles sont à l'intérieur de la hiérarchie de répertoires du paquet. Eh bien, comment les importer et travailler avec ces modules ? Laissez-moi vous entraîner à l'intérieur du répertoire Python. J' ai déjà créé un nouveau répertoire, pk G. Donc voici le répertoire pk G et incentive dans j'ai créé deux modules, mode un et mode deux. Il ouvre ces deux fichiers. Donc, le mode un va avoir une fonction appelée load data. Les données de chargement lorsqu'elles sont appelées, vont imprimer une ligne de texte sur le module. Il a aussi une classe. Cette classe va être la classe de clients. Mod deux va avoir une fonction nommée Clean Data module, avoir une classe aussi. Cette classe sera la classe d'emplacement. Super. Donc, à partir des fenêtres montrées, Pourquoi est-ce que vous voulez importer des paquets ou des modules à partir de paquets ? Eh bien, vous pouvez utiliser la notation de points. En fait, vous pouvez importer les deux à la fois. Et vous pouvez créer un objet et x va être un emplacement marquant l'endroit, si vous voulez. Super. Donc x est l'objet de localisation du mod 2 du paquet PKA G. Nice. Donc, c'est une façon est juste de les importer. Une autre façon serait d'importer des articles individuels. Donc maintenant à l'intérieur d'ici, les données de chargement sont dans le SymbolTable local et sont disponibles et vous pouvez le voir en cours d'exécution. Donc, encore une fois, vous pouvez importer à partir du package des éléments individuels à partir des modules individuels en utilisant la notation par points. Ou vous pouvez utiliser la technique de nom alternative. Supposons que vous souhaitiez importer cette classification. Mais au lieu d'appeler un emplacement, vous voulez l'appeler primaire. Vous pouvez maintenant créer un nouvel objet en utilisant cette classe. Donc maintenant y est un objet local. Encore une fois, il utilise le nom que vous lui avez donné un primaire. Une autre façon que vous avez appris à importer auparavant consistait à utiliser l'instruction from. Vous ne pouvez pas importer directement le mode 1, comme vous pouvez le voir dans ce message d'erreur. Mais à partir de P KG, vous pouvez importer mod un. Donc, au lieu de la dénotation d'avoir le pic AGE d'abord, vous utiliseriez alors simplement mod un. Et de même, si vous le vouliez, vous pouvez charger à partir de l'obligation d'importation EKG T2 et alors il lui donnerait un nom différent. Disons foo. Foo a nettoyé les données et si vous le souhaitez, vous pouvez appeler cette fonction. Il est bon de pratiquer à nouveau toutes ces techniques. Merci d'avoir regardé. 127. Créer des graphiques et des formes à l'aide du module de la Turtle de Python: Comme nous l'avons déjà appris, un module en Python fournit du code utile à utiliser par un autre programme. Python a un module spécial appelé Tortue que nous pouvons utiliser pour apprendre comment les ordinateurs dessinent des images sur un écran. Le module tortue comme un moyen de programmation graphique vectorielle, dessin avec des lignes simples, des points et des courbes. abord, pour utiliser la tortue, nous allons importer le module de tortue, utilisé le code. Maintenant que nous avons importé le module tortue, nous devons créer une toile, un espace vide pour dessiner comme une toile d'artiste. Pour ce faire, nous appelons le stylo à partir du module tortue, qui crée automatiquement une toile. Entrez ceci dans le shell Python. Vous devriez voir une boîte blanche ou la toile avec une flèche au centre. La flèche au milieu de l'écran est la tortue. Bien sûr que ce n'est pas très Turtle Lake. Vous envoyez des instructions à la tortue en utilisant les fonctions disponibles sur la variable que nous venons de créer, similaire à l'utilisation de la fonction stylo dans le module Tortue. Par exemple, l'instruction avant indique à la tortue de se déplacer vers l'avant, dire à la tortue d'avancer 50 pixels, entrez la commande suivante. Maintenant, nous allons dire à la tortue de tourner à 90 degrés avec la commande suivante. La tortue gauche 90 pointe la flèche vers le haut. Maintenant, nous allons dessiner un carré et le code suivant pour les lignes que vous avez déjà entrées. Pour effacer la toile, toile et remettre la tortue à sa position de départ. Vous pouvez également utiliser clair, qui efface simplement l'écran et laisse la tortue là où elle est. Nous pouvons également tourner notre tortue à droite ou la déplacer vers l'arrière. On peut utiliser jusqu'à lever le stylo de la page. En d'autres termes, dire à la tortue de commencer à sécher et de commencer à dessiner. Ces fonctions sont écrites de la même manière que les autres que nous avons utilisées. Essayons un autre dessin en utilisant certaines de ces commandes. Cette fois, la tortue dessine deux lignes. Nous déplaçons d'abord la tortue vers l'arrière 100 pixels avec T vers l'arrière 100, puis utilisons t up pour ramasser le stylo et arrêter le dessin. Ensuite, avec la commande t droite 90, nous tournons la tortue à droite 90 degrés pour pointer vers le bas vers le bas de l'écran. Avec t avant 20, nous avançons 20 pixels. Rien n'est dessiné à cause de l'utilisation de la commande up sur la troisième ligne. Nous tournons la tortue à gauche 90 degrés à la phase droite avec T à gauche 90. Et puis avec la commande Down, nous demandons à la tortue de remettre le stylo vers le bas et de recommencer à essayer. Enfin, nous tracons une ligne vers l'avant parallèle à la première ligne que nous avons tracée avec t avant 100, et nous avons tracé les deux lignes parallèles. En outre, vous pouvez utiliser une boucle for pour faire un carré comme celui-ci. Maintenant, avec quelques changements simples à notre boucle, nous pouvons créer agréable en utilisant le code similaire, nous pouvons créer diverses formes d'un carré de base à une étoile en spirale. Comme vous pouvez le voir en utilisant pour les boucles, nous avons simplifié le dessin de ces formes. Maintenant, essayons de dessiner un carré rempli, mais d'abord, nettoyez la toile à sec rempli carré. abord, nous devons définir une fonction carrée qui dessine un carré. Commencez à remplir. Testez votre fonction en l'appelant avec la taille 50, puis n remplissage. J' espère que vous apprendrez à utiliser le module tortue pour dessiner quelques formes géométriques de base en utilisant des boucles pour contrôler ce que la tortue fait à l'écran. Si vous avez des questions, faites-le moi savoir. 128. L'ouverture, Python's et écrivez dans un fichier de Python: Salut et bienvenue à cette série de tutoriels vidéo sur le travail avec des fichiers et Python. Tout au long de cette section, vous allez apprendre à peu près tout ce que vous pourriez avoir envie de savoir sur une opération de fichier de base en Python. Et mes opérations de base de fichiers, je veux dire créer, supprimer des fichiers et des répertoires, les déplacer, les copier, les renommer, travailler avec des archives, travailler avec des fichiers temporaires, parcourir le répertoire et obtenir les propriétés de fichier. Cette liste continue et encore, mais à peu près tout ici je vais couvrir et même certaines choses qui ne sont pas tout à fait sur cette liste. Si vous cherchez à suivre dans votre propre terminal, je vous recommande de jeter un oeil aux fichiers de ressources que j'ai inclus car cela contiendra tous ces exemples de répertoires que je vais passer dans cette section organisé par moins de, il pourrait être vraiment pratique pour vous. Donc, généralement sur chaque leçon, je vais introduire la leçon, introduit certaines des fonctions que je vais utiliser. Et puis je vais vous montrer un exemple de répertoire et vous devriez le regarder à votre propre terminal afin que vous puissiez suivre. Bon, allons entrer. Dans cette leçon, je vais couvrir Python avec un modèle d'ouverture, autrement connu sous le nom de modèle de gestionnaire de contexte, qui je pense est le modèle de base le plus important pour travailler avec des fichiers et Python car il vous permet de créer et de lire à partir de fichiers existants dans votre système de fichiers. Afin de comprendre la largeur ouverte comme motif, vous devez d'abord comprendre la fonction ouverte, ce qui est vraiment assez simple. Il prend le nom de fichier et un mode, et il ouvre le nom de fichier donné à partir du répertoire courant, sauf indication contraire dans le mode que vous transmettez. Et puis une fois que ce fichier est ouvert, c'est quand vous pouvez faire des opérations dans ce fichier ou vous pouvez le passer pour lire à partir de celui-ci. Donc, les modes de fichier de base, et il y en a beaucoup plus. Mais ce sont les trois que je vais vous montrer pour commencer avec notre mode d'écriture w, qui efface le contenu du fichier existant créant un fichier qui n'existe pas et vous permet d'écrire le fichier. Il y a le mode rouge, mode r, qui vous donne un accès en lecture seule au contenu des fichiers. Et nous allons lancer une erreur si le fichier n'existe pas déjà. Et puis il y a le mode d'ajout a, qui écrit à la fin du fichier afin qu'il n'efface pas le contenu du fichier existant. Les zones sont donc les trois modes de fichiers de base explorés tout au long de cette leçon. Alors passons au shell Python. Donc, ce que je peux faire est de dire quelque chose comme test.txt comme un nom de fichier. Et puis je l'ouvrirai en mode écriture pour que je puisse l'écrire. Et alors il est créé parce que test.txt n'existe pas encore. Et puis je dois dire est si avec ouvert comme et puis je donne à cela un nom. Normalement, je trouve pratique de dire quelque chose comme écrire un fichier de soulignement afin que je me rappelle exactement ce que j'écris deux dans ce cas. Ensuite, je peux dire quelque chose comme le bon point de fichier droit. Ou je peux écrire n'importe quel texte que je veux écrire. Je peux dire quelque chose comme bonjour, c'est un dossier. Appuyez sur Entrée et la fonction d'écriture renvoie le nombre de caractères écrits ici. Regardons le répertoire principal des Pythons. Tu vois ce dossier ? C' est ici, test.txt. Vous pouvez vérifier ce fichier en disant avec test.txt ouvert en mode lecture comme fichier de lecture. Et puis je peux juste dire imprimer, ReadFile point read, et ne pas lire la fonction retourne juste tout le contenu de ce fichier. Donc, comme vous pouvez le voir, ce sont vraiment des fichiers existants et il a le contenu. Bonjour, je suis un dossier. Il y a un autre mode que je vous ai montré. Donc, je vais vous montrer maintenant test.txt et le mode d'ajout est bon fichier. Et puis je peux dire le bon dossier, ne raids pas. Et je vais mettre une nouvelle ligne ici pour qu'il y ait une nouvelle ligne dans le fichier. Et je dirai, voici un autre texte. Et encore une fois, je ferai exactement la même chose que je viens de faire ici. Et comme vous pouvez le voir, j'y ai annexé. Mais si je devais l'ouvrir à nouveau en mode écriture et ensuite y écrire, tous les textes ont été supprimés. Vérifions le fichier à partir du répertoire principal de Python. Et comme vous pouvez le voir que c'est en fait vrai parce qu'en mode écriture en fait juste droit sur tout ce qui existe déjà dans le fichier, alors que le mode plume ajoute simplement au texte existant. C' est ainsi que vous pouvez ouvrir, lire et écrire dans un fichier de deux façons différentes. Une dernière chose que je veux couvrir dans cette leçon est qu'il est préférable de toujours fermer le fichier après l'avoir ouvert, en tapant le point droit fermer. Sinon laissera ce FileResource ouvert avec votre système d'exploitation interprétera comme ayant besoin d'avoir ce fichier ouvert et il va quelque sorte accrocher les ressources de votre système d'exploitation. C' est ainsi que vous pouvez utiliser la largeur ouverte comme un motif pour créer, lire et écrire des fichiers. Dans la leçon suivante, je vais expliquer comment obtenir la liste des répertoires, comment regarder toutes les choses qui se trouvent dans votre répertoire qui ont été créées. 129. Obtenir une liste et des attributs de fichier: Dans cette leçon, je vais expliquer comment obtenir une liste de répertoires. Il vous suffit de mettre une liste de toutes les choses qui existent dans votre répertoire actuel ou n'importe quel répertoire que vous pouvez choisir. Et c'est vraiment important car à peu près n'importe quelle tâche que vous voulez faire en Python ou dans un autre langage de programmation où vous travaillez avec des fichiers, vous allez devoir faire quelque chose là où vous voulez regarder à travers tous les fichiers de votre répertoire actuel et faites quelque chose avec eux. Voici quelques fonctions d'annuaire de base tout au long de cette série, je vais souvent vous montrer quelques façons différentes de faire la tâche. Alors je vais te montrer comment faire. Donc, avec tout ce qui dit, la première fonction ici est la liste de points du système d'exploitation DIR, qui prend un nom de répertoire et retourne ensuite une liste de fichiers et de sous-répertoires dans ce répertoire sous forme de chaîne. L' alternative légèrement plus sophistiquée est OS Dot scan DIR, qui renvoie un itérateur au lieu d'une liste. Cet itérateur n'est pas de chaînes, mais plutôt d'objets de fichier qui ont des propriétés pour eux, ce qui les rend un peu plus faciles à lorsque vous voulez réellement les traiter comme des fichiers. Et puis le module path live a un paradigme très similaire pour scanner DIR, sauf qu'il fonctionne sur un objet chemin. Et je vais vous montrer comment initialiser un objet chemin et travailler avec lui dans le Python Challenge est le second. Mon répertoire Python contient quelques sous-répertoires et plusieurs fichiers. Et chaque sous-répertoire a quelques fichiers différents à. Ok, allons un peu dans le code ici. La première chose à faire est d'obtenir des importations en cours, importer OS. Et puis je vais aussi dire chemin d'importation lib, juste pour que j'aie toutes mes importations ici en un seul endroit. Donc, la première chose que vous pouvez faire si vous voulez obtenir une liste de répertoires est que vous pouvez simplement dire DIR liste de points OS. Et puis comme vous pouvez le voir à partir de mon shell pratique, il prend un paramètre de chemin facultatif. Si vous ne passez pas le chemin, il utilisera simplement le répertoire courant. Comme vous pouvez le voir si vous vous souvenez de mon répertoire Python, il a tous les fichiers et dossiers. Mais comme vous pouvez le voir ici, tous ce ne sont que des chaînes nues et aussi la liste des chaînes. Donc ce n'est pas super flexible. Si vous voulez réellement obtenir des informations à ce sujet, vous pouvez dire quelque chose comme peut-être le chemin du système d'exploitation est un fichier et ensuite vous pouvez appeler cela sur un fichier ou autre. Mais vous devez faire tout le cirriculum Kunshan pour trouver des informations sur ce dossier. Peux-tu deviner pourquoi c'est faux ? C' est parce qu'ils n'ont pas tapé l'extension dot py. Essayons encore ça. Ce n'est pas le cas avec quelque chose comme scan DIR. Vous pouvez dire quelque chose comme pour le nom et le système d'exploitation ne pas analyser DIR. Et cela prendra également un paramètre de chemin optionnel. Vous pouvez dire si le nom Don est Fichier. Et je ne suis pas sûr exactement pourquoi cela n'a pas de soulignement et cela a un soulignement. J' aimerais pouvoir vous en dire plus sur la raison, mais qui sait ? Ainsi, vous pouvez simplement être attribué directement à partir de l'objet. Parce que comme vous pouvez le voir. Les objets sont des entrées DIR plutôt que des chaînes simples. Donc, les entrées DLR ont des informations en eux, tandis que les chaînes, vous devez faire un peu plus de travail en tant que programmeur pour apprendre que les commandes nécessaires pour obtenir réellement cette information sur ces choses. Donc, c'est quelque chose à remarquer ici, c'est que le DIR de scan de points du système d'exploitation est un peu plus orienté objet, alors que le DIR de la liste de points du système d'exploitation fonctionne un peu plus comme un système de fichiers Linux traditionnel. Nous sommes à peu près tout est une chaîne et vous avez juste à faire le travail par vous-même pour comprendre l'information à ce sujet. Donc chemin vécu prend une psychologie similaire, sauf que vous devez créer le chemin comme un objet explicite. chemin DIR est donc égal au chemin. Et puis je vais juste passer dans la barre oblique des points du répertoire actuel. Et puis vous pouvez faire exactement la même chose que vous pouvez faire avec le système d'exploitation Dot scan DIR. C' est juste qu'il appellera ITER DIR directement sur le chemin. Alors c'est exactement la même chose ici. Comme vous pouvez le voir, ce nom a un peu d'une fonction d'impression différente. Mais ce nom est toujours un objet où il a un peu plus d'informations qu'une simple chaîne nue. Donc, c'est relativement utile. Et toutes ces choses que vous pouvez utiliser sur n'importe quel chemin que vous aimez. Ce n'est pas seulement dans le répertoire courant. C' est donc trois façons différentes d'obtenir un répertoire listant le module OS et le module de chemin lib. Ils ont tous leurs avantages et leurs inconvénients. Os liste de points DIR est vraiment simple et facile. Os dot scan DIR et chemin lib dot path a un peu plus de nuance et vous pouvez faire un peu plus de choses avec eux. Mais vous n'avez pas nécessairement le même genre de facilité que vous faites avec la liste de points OS DIR. Donc, toutes les choses à considérer maintenant que vous avez une liste avec les fichiers dans le répertoire courant. Mais que se passe-t-il lorsque vous voulez réellement obtenir les attributs de ces fichiers ? Comme la dernière fois qu'ils ont été modifiés ou quand ils ont été créés, ou leur taille ou leurs autorisations ou quelque chose comme ça. Il existe trois options différentes pour obtenir des informations sur les fichiers. Le premier est toujours points stat, qui prend un chemin sous la forme d'une chaîne, puis retourne un objet de résultat de route stat qui contient des données de fichier. Donc, cet objet de résultat de stat est quelque chose que vous pouvez accéder aux champs de cet objet et obtenir les données de fichier. Ensuite, le système d'exploitation Dot scan DIR et le chemin lib Dot path dot dot dot ITER DIR fournissent ces informations avec les objets qu'ils retournent dans leurs itérateurs. Alors jetons un coup d'oeil dans la coquille. Ok, les données des fichiers. Comment tu l'as ? Essayons ça. D' abord. Je veux juste obtenir le contenu de ce répertoire. Et comme vous pouvez le voir, il y a beaucoup de fichiers à choisir. Et la première méthode que je regarde dans les diapositives avec la fonction OS dot stat qui prend juste un chemin de fichier, un nom de fichier et vous donne un objet de résultat de stat point OS. Comme les résultats, vous aurez toutes sortes de choses différentes, nombre de liens vers la création et le temps de modification. Certains d'entre eux seront même différents selon le système sous Windows, Linux, Mac, et certains d'entre eux auront des valeurs différentes. Maintenant, je vais vous montrer les deux façons dont je veux vraiment obtenir ces données. Je pourrais enregistrer pour OBJ et OS Dot scan DIR sur le répertoire courant. Et puis faisons un peu plus d'une sortie informative. Disons que quelque chose comme le temps de Mod est égal à OBJ Darmstadt. Et c'est ainsi que vous obtenez les statistiques d'un objet DIR d'analyse. Et puis je peux dire point STM temps. Et maintenant, nous pouvons voir quelque chose de gentil comme f double guillemets le nom du point OBJ a été modifié pour la dernière fois à. Et puis je pourrais dire temps point c temps du temps mod. Et donc cela devrait donner à tout un bon format lisible. Il vous indique chaque nom de fichier et l'heure à laquelle ils ont été Dernière modification, puis le chemin vécu sur l'option Path. Ici fonctionne presque exactement de la même manière, sauf que vous devez d' abord créer l'objet chemin avant de pouvoir commencer à l'itérer. C' est donc trois façons différentes d'obtenir des statistiques à partir de fichiers en utilisant Python. Dans la leçon suivante, je vais couvrir quelque chose que je n'ai pas encore couvert, à savoir comment créer des répertoires. 130. Créer et supprimer des Directories: Dans cette leçon, je vais venir ou comment faire répertoires et même des arborescences entières. Comme d'habitude, il y a plusieurs façons de le faire avec le module OS. Si vous voulez créer un seul répertoire, vous pouvez utiliser OS dot MKDIR make directory avec le nom du répertoire, ce qui crée un seul sous-répertoire avec un nom donné. Important de noter que cela ne créera pas de répertoire et de sous-répertoires. Et si vous en avez besoin, vous devez utiliser OS dot, faire DEA, IRS. Et puis vous pouvez passer un nom de chemin complet avec plusieurs sous-répertoires et il va créer l'arborescence complète du répertoire si nécessaire. Avec le module path lib, vous pouvez utiliser path list.pop dot MKDIR, qui fonctionne essentiellement de la même manière que O S point MKDIR, en ce qu'il ne crée pas non plus d'arborescence de répertoires complets. Dans cette leçon, je vais utiliser vraiment n'importe quel répertoire d'exemple spécifique parce que je vais juste créer des répertoires comme j'en ai besoin. Passons à droite dans le shell Python. Ok, faisons des répertoires. Os fait. Mkdir est le premier et le plus basique moyen de le faire. Il prend un paramètre de chemin, puis il peut également prendre un paramètre de mode, puis le paramètre DIR FDI. Donc, si je veux créer un répertoire appelé test, c'est assez simple à faire. Et puis je peux utiliser la liste DIR pour voir qu'il est en cours de création. Maintenant, si je veux faire quelque chose d'un peu plus spécifique, et je voulais dire quelque chose comme OS dot MKDIR, test2 sous-tâches barre oblique. Ensuite, vous verrez que cela ne fonctionne pas parce que test2 n'existe pas encore. Donc, les sous-tests ne peuvent pas être créés par MKDIR. Si j'ai besoin de faire quelque chose comme ça, je peux utiliser OS dot, faire DEA , IRS, qui fera ce répertoire, et ensuite il fera tous ces. Il fera juste tout ce dont j'ai besoin pour accéder à ce répertoire final. Ainsi, comme vous pouvez le voir, la liste DIR et le test deux sont là-dedans. Ensuite, si j'appelle la liste DIR sur le test deux, alors vous pouvez voir qu'il a le dossier des sous-tests tout comme j'avais besoin. Donc c'est vraiment assez simple et génial. La raison pour laquelle MKDIR existe de cette façon et la raison pour laquelle il a le comportement est juste pour être vraiment une sorte de soupape de sécurité, un mécanisme de sécurité pour vous assurer que vous savez vraiment ce qui se passe avec votre système de fichiers à tout moment. Faire DEA IRS est génial. Mais cela peut également provoquer un comportement inattendu si vous êtes celui dans le répertoire et que vous créez toute une chaîne de sous-répertoires et que vous vous retrouvez dans un endroit totalement inattendu. Alors que MKDIR est construit pour une sorte d'erreur L avant que cela ne se produise. Pour que vous puissiez gérer cela. Quelque chose d'autre à noter ici est que ces deux vont lancer une exception si vous essayez de créer un répertoire qui existe. Si je dis OS dot test MKDIR ou un west ne fait pas le test DEA IRS, alors Python me lancera un fichier existe erreur car il essaie de créer quelque chose qui existe déjà. L' alternative chemin lib dot path, qui peut être accomplie de cette façon. Vous pouvez éviter ce problème si vous essayez de le faire. Donc tu peux dire quelque chose comme ça. Un nouveau chemin est égal au test de chemin. Et puis vous pouvez dire un nouveau point de chemin MKDIR. Et vous pouvez utiliser le paramètre okay existant et le définir sur true si vous ne voulez pas qu'il lance une erreur s'il existe déjà. Maintenant, le problème est avec ceci, bien sûr, est qu'il finit juste par ne rien faire parce qu'il ne fait pas de répertoire parce qu'il existe déjà. C' est certainement quelque chose d'important à noter, c'est que même si vous ne voulez pas que cette erreur se produise, vous devriez probablement toujours enrouler pour savoir que quelque chose se passe là parce que sinon, vous pourriez rencontrer où vous pensez que vous créez quelque chose de nouveau, mais vraiment vous créez quelque chose et il y a déjà un répertoire existant. Donc ce comportement, vous pouvez éliminer si vous en avez besoin, mais vous pourriez ne pas vouloir en tout temps. Donc, ce sont les différentes façons de créer des répertoires et Python. Et je pense que c'est très simple et direct. Utilisez path dot live MKDIR si vous voulez utiliser un framework plus orienté objet, ou si vous n'avez besoin de créer qu'un seul répertoire à la fois, utilisez OS dot MKDIR sinon. Et puis si vous avez besoin de créer une arborescence de répertoire complète, sous-répertoires utiliseraient OS dot oméga d IRS, où vous pouvez utiliser les paramètres du parent du chemin lib dot path, dot-dot-dot, option MKDIR. Regardons maintenant comment fonctionnent les répertoires. Les répertoires principaux. Pour supprimer des répertoires, vous pouvez utiliser OS point ARM DIR, supprimer le répertoire, où vous passez dans le chemin d'accès du répertoire, puis vous supprimez le répertoire unique, ou c'est ce que fait la fonction. Il est en train de supprimer ces répertoires uniques. Si le répertoire n'est pas vide, il déclenche une erreur du système d'exploitation car il ne veut pas que vous supprimiez accidentellement des répertoires complets. Il veut s'assurer que vous les avez effacés avant de les supprimer. Chemin vécu sur le chemin na.rm. Dir est identique sauf qu'il fonctionne sur un objet chemin comme d'habitude. Donc, créez d'abord le chemin, puis appelez sa méthode Don RM DIR. Si vous devez supprimer des répertoires non vides ou une arborescence complète de répertoires, vous pouvez toujours Shuttle. Vous devez importer la navette, ce qui est court pour shell vous till, et puis il a une fonction d'arborescence RM où vous pouvez appeler cela comme le chemin du répertoire et il supprimera toute l'arborescence du répertoire enracinée à ce chemin. Donc, si vous avez des sous-dossiers à l'intérieur de ce répertoire que vous appelez, ceux-ci seront tous supprimés deux, qu'ils soient pleins ou vides. Donc, c'est une sorte de l'option nucléaire de supprimer des répertoires et Python. Très bien, supprimons quelques répertoires. Donc d'abord, je vais vous montrer le système de fichiers ici. Donc, faisons un premier essai ici et voyons juste ce qui se passe si vous appelez OS na.rm DIR sur le dossier un. Et bien sûr, je dois mettre dans les chaînes car il doit être le chemin plutôt qu'il n'y a pas de variable appelée Folder one. Ainsi, comme vous pouvez le voir, une erreur du système d'exploitation car le répertoire n'est pas vide. Parce que bien sûr, si j'appelle OS Dot list DIR sur le dossier un, il a des fichiers Python dedans. Donc ça ne va pas marcher. Si je veux réellement supprimer quelque chose en utilisant OS dot RMD IR, je vais devoir aller très rapidement pour faire un nouveau répertoire qui tous appellent test. Et puis je vais devoir faire une liste DIR pour vous montrer qu'il est là dedans. Le test existe déjà, donc nous allons créer un répertoire avec le nom test1. Donc maintenant, il y a le répertoire barre oblique test1, et ce répertoire barre oblique test1 est en fait vide afin qu'il puisse être supprimé. Cela peut sembler une fonctionnalité non conventionnelle que vous ne pouvez supprimer qu'avec ces choses de base, des répertoires vides. Mais en fait, c'est juste une caractéristique de sécurité. Il ne veut pas que vous supprimiez des choses quand il peut y avoir des fichiers utiles dans ce répertoire. Il ne veut pas que vous les meniez sans au moins penser à ce qu'il y a dedans. Maintenant, cependant, je peux voir OS point RMD. Et maintenant, vous pouvez voir qu'il est de retour, il est parti à nouveau. Maintenant, je vais vous montrer comment vous pouvez réellement supprimer un de ces dossiers non vides. Pour eux, vous devrez importer shell util, navette, puis vous pouvez simplement dire essayé de supprimer sur le dossier vide. Bien sûr que je ne pouvais pas. Faisons un autre exemple avec un dossier de test. Encore une fois, la même chose. Maintenant, je vais supprimer un dossier non vide comme les modules et les paquets. Et maintenant, si je fais ma liste DIR ici, le dossier des modules et des paquets est totalement parti même s'il y avait du contenu, n'est-ce pas ? Et cela fonctionne même pour les sous-répertoires. C' est vraiment l'option de frappe lourde qui supprime tout sans porter ce qu'il y a dedans. Et cela peut être si utile si vous savez que tout ce qui se trouve dans votre dossier est une ordure que vous pouvez le supprimer. Mais si vous ne le savez pas, vous devriez vraiment faire attention à essayer utiliser certaines de ces autres fonctions qui vous avertiront en lançant une erreur si vous essayez de supprimer quelque chose qui contient des choses utiles. C' est ainsi que vous pouvez supprimer des répertoires en Python. 131. Supprimer et coper, déplacer et renommer des fichiers: Maintenant que vous savez comment créer et lister des fichiers avec leurs attributs, ce serait génial si vous pouviez les supprimer chaque fois que vous en avez fini avec eux. Et cela, bien sûr, sera le sujet de cette leçon. Suppression de fichiers. Pour supprimer des fichiers, vous avez quelques options comme d'habitude, avec le module OS, vous avez en fait deux fonctions presque identiques. Toujours ne pas supprimer et OS point sur le lien, qui a pris le chemin du fichier de chaîne et supprimer ce fichier unique, pas un répertoire, ils élèvent un fichier introuvable dans le fichier n'existe pas. Et la raison pour laquelle les deux fonctions identiques avec des noms différents est juste une question de compatibilité avec différents paradigmes de programmation. Certaines personnes dans des systèmes anciens ou des types de systèmes unix aiment utiliser unlink comme nomenclature préférée. Alors que certaines personnes dans différents systèmes utilisent remove. C' est juste pour s'assurer que tout le monde est satisfait du module path lib. Vous avez également une méthode point sur lien, mais c'est une méthode d'objet chemin. Donc, comme d'habitude, vous devez initier cet objet chemin avant de pouvoir appeler dot on link. Donc, le répertoire exemple alors je vais utiliser pour supprimer la chose, les fichiers avec la section du répertoire de début fille de cette leçon seront les mêmes. J' ai quelques sous-dossiers avec des fichiers à l'intérieur, et puis j'ai juste quelques fichiers avec le répertoire exemple de niveau supérieur. Ok, regardons comment ce dossier fonctionne en pratique. J' utiliserai la liste de points du système d'exploitation DIR pour vous montrer où je suis dans mon système de fichiers. J' ai quelques fichiers texte ici et j'ajoute quelques dossiers que je pourrais vous montrer aussi pour estimer totalement sûr que ces dossiers sont ce que nous attendons d'avoir en eux. Quelques fichiers Python et quelques autres dossiers ont des trucs dans eux. Essayons d'abord l'option de suppression du point du système d'exploitation ici. Je vais l'appeler. Et l'un de ces fichiers texte de haut niveau, juste pour le plaisir, OS point supprimer. Cela ne vous donne pas de sortie particulière, mais faites confiance que c'est du travail. Et vous pouvez vérifier cela en utilisant à nouveau la liste DIR et vous pouvez voir test1 point TXT a disparu. Donc c'est plutôt bon. Cela fonctionne comme prévu. Et puis O S point sur lien fonctionne exactement de la même manière. Je vais appeler cela sur le test 2.txt. Et comme vous pouvez le voir, la liste de points OS DIR, ces deux fichiers texte ont disparu. Il ne me reste que quelques dossiers. Maintenant, je vais vous dire un peu comment copier, déplacer et renommer des fichiers et des répertoires. Il existe plusieurs fonctions utiles pour copier et déplacer des fichiers à copier. Il y a deux options. Il y a en fait trois options avec le module utilitaires shell Shuttle, que je devrai importer. Il y a copie qui prend une source et un chemin de fichier de destination, et copie le fichier à partir des chemins source vers le chemin de destination. Ainsi, le fichier source existera toujours. Bien sûr, vous ne faites que copier, vous ne supprimez pas le premier fichier. La chose importante à propos de la copie, cependant, est qu'elle copie simplement le fichier, le contenu du fichier, mais pas ses métadonnées. Ainsi, par exemple, des choses comme c'est l'heure de la dernière modification et ainsi de suite ne seront pas conservées. Cela sera simplement réinitialisé aux valeurs de base. Si vous deviez effectuer les métadonnées, vous pouvez toujours utiliser le point tional. Copier vers la fonction, qui a une syntaxe identique. Il copie simplement les métadonnées aussi. Ce sont donc des cas d'utilisation distincts. Ensuite, vous avez shuttled.com P3, qui copie les arborescences de répertoires complets. C' est ce que vous devriez utiliser si vous voulez copier des répertoires à n'importe quelle capacité, mais essayez simplement de garder cela à l'esprit pendant que l'arborescence entière est enracinée dans SRC DIR. Et puis il le copiera dans le répertoire de destination pour déplacer le renommage. Ou parce que vraiment les deux sont essentiellement équivalents, vous avez deux options. Un avec le module Shuttle et un avec le système d'exploitation. point de navette se déplace. Il prend à nouveau une source et un paramètre de destination. Et il déplace le fichier ou le répertoire de SRC ou source vers dst, la destination. Puis toujours renommer fait vraiment la même chose parce que déplacer et renommer sont vraiment les deux côtés d'une même pièce, pour ainsi dire. Il renomme le fichier ou le répertoire avec l'ancien et le nouveau nom. Je vais écrire, J'ai importé OS et navette util déjà. La première chose à faire est de montrer la fonctionnalité de la copie de points de navette. Je vais juste copier le test 1.2x d dans un nouveau fichier et appeler les balises de sauvegarde. Et je vais l'appeler backup 1.2x t Juste pour être sûr que vous savez que c'est une sauvegarde de Test1 TXT. Comme vous pouvez le voir, la navette DOD copy renvoie le chemin d'accès du fichier de sauvegarde TXT nouvellement copié. Et si je dis ls liste de points DIR, vous pouvez voir qu'il y a maintenant un test 1.2x T et une sauvegarde 1.2x T. Donc ces fichiers originaux conservés et la nouvelle sauvegarde est également créé et ces fichiers seront exactement le même contenu. Maintenant, si vous avez besoin de copier une copie de point de la navette de répertoire ne fonctionnera pas. Si j'essaie de copier le dossier un dans Nouveau dossier un, cela ne fonctionnera pas car le dossier Un est un répertoire. Pour cela, vous devrez utiliser l'arbre shuttle.com, qui fera exactement la bonne chose. Il copiera le dossier un dans Nouveau dossier un. Je peux jeter un oeil à ça. Il est là, Dossier un, Nouveau Dossier, un copié par-dessus parfaitement. Je peux lister le contenu du dossier un dans la liste des contenus de la nouvelle version juste pour m'assurer que vous pouvez voir qu'ils sont en fait identiques. Donc même fichier, même tout, tous copiés très bien. Soyez prudent avec cela car il copie toute l'arborescence des répertoires là-bas et les sous-répertoires, ceux-ci seront également copiés. Parfois, ce n'est peut-être pas exactement ce que vous voulez. Peut-être que tu veux un peu plus de granularité. Et si c'est le cas, alors vous devrez faire un peu plus de travail et les itérer à travers les répertoires par vous-même. Parlons maintenant de déplacer et de renommer des fichiers parce que ce sont vraiment la même opération. Donc, vos opsins sont navrés point déplacer, et essayons de déplacer test.txt dans le dossier une barre oblique test.txt. Comme vous pouvez le voir, test.txt est parti du répertoire de niveau supérieur, mais il apparaît dans le dossier un. Donc c'est comme vous pourriez vous y attendre. Maintenant, OS point renommer fonctionne presque exactement de la même manière si vous essayez de déplacer la sauvegarde 2.txt, qui est un fichier qui n'existe pas dans le message d'erreur apparaîtra sur notre écran. Donc beaucoup de choses là-bas qui fonctionnent très bien. Et ces deux fonctions fonctionnent également sur les répertoires. Donc, c'est un vous pouvez copier, renommer et déplacer des fichiers et des répertoires en Python. 132. Projet de phase Créer un jeu de math interen: Bienvenue à tout le monde dans cette section Projet jalon du cours. Nous allons commencer cette section en passant par quelques exercices d'échauffement du projet. Nous avons maintenant couvert suffisamment de programmation fondamentale en Python, commencez à coder notre premier programme complet. Dans cette section, nous allons coder un programme qui teste notre compréhension de l'ordre des opérations mathématiques et des règles d'un calcul arithmétique, notre programme enverra au hasard une question arithmétique pour que nous puissions répondre. Si nous obtenons la réponse erronée, le programme affichera la bonne réponse et demandera si nous voulons une nouvelle question, si nous l'obtenons correctement, le programme demandera si nous voulons une nouvelle question. En outre, le programme gardera une trace de nos scores et enregistrera les scores dans un fichier texte externe. Après chaque question, nous pouvons mettre fin au programme. Nous allons écrire dans des fichiers pour notre programme. Nous les appellerons première et deuxième partie. Le premier fichier ou la première partie si vous préférez, est MathFunctions dot pi. Et le deuxième fichier, ou la deuxième partie est le jeu de maths dot py. J' ai décomposé le programme en petits exercices afin que vous puissiez essayer de coder le programme vous-même. Essayez les exercices avant de vous référer aux réponses. Les réponses sont fournies dans vos fichiers de ressources. Rappelez-vous, apprendre la syntaxe Python est facile mais ennuyeux. résolution de problèmes est où le plaisir réside si vous rencontrez des difficultés lors de ces exercices, essayez plus fort. C' est là que la récompense est la plus grande. Si vous êtes prêt à relier les points entre ce que vous avez déjà appris lors de la création d'un programme interactif. Allons plonger dedans. 133. Motifs importer et obtenir le Score de l'utilisateur: Pour commencer, créons les fonctions maths du fichier dot pi. Nous allons définir trois fonctions dans ce fichier. La première étape consiste à importer deux modules, le module aléatoire et le module OS. Je voudrais décrire l'utilisation du module aléatoire en Python, le module aléatoire fournit l'accès aux fonctions qui prennent en charge de nombreuses opérations. Peut-être la chose la plus intéressante est qu'elle vous permet de générer des nombres aléatoires, utilisera la fonction randint pour le module aléatoire. La fonction aléatoire génère un entier aléatoire dans la plage fournie par nous. Nous allons les utiliser pour générer des nombres pour nos questions plus tard rencontré accepte deux paramètres, un nombre le plus bas et le plus élevé. Le module OS en Python fournit des fonctions pour créer et supprimer un répertoire ou un dossier, récupérer son contenu, changer dans l'identification du répertoire courant, et cetera, à partir du module OS utilisera les fonctions de suppression et de renommage . Mettez la vidéo en pause et essayez d'importer ces deux modules. Les lignes de code correctes sont les suivantes. L' étape suivante consiste à obtenir le score de l'utilisateur. Ici, nous allons définir notre première fonction. Cette fonction accepte un paramètre, le type de nom d'utilisateur. Il ouvre les scores des utilisateurs de fichiers data.txt. Dans notre mode, les scores des utilisateurs ne t x t ressemble à ceci. Chaque ligne enregistre les informations d'un utilisateur. La première valeur est le nom d'utilisateur de l'utilisateur et la seconde est le score de l'utilisateur. Ensuite, la fonction doit lire le fichier ligne par ligne pour utiliser une boucle. Chaque ligne est ensuite fractionnée à l'aide de la fonction fractionnée. Split utilise une virgule comme délimiteur. Stockons le résultat de la fonction divisée IIT dans le contenu de la liste. Ensuite, la fonction que nous allons vérifier si l'une des lignes a le même nom d'utilisateur est la valeur qui est transmise en tant que paramètre. Si c'est le cas, la fonction ferme le fichier et renvoie le score à côté de ce nom d'utilisateur. S' il n'y en a pas, la fonction ferme le fichier et renvoie la chaîne minus1. 134. Tradition de l'exception et mise à jour du score utilisateur: Maintenant, nous devons faire quelques modifications à notre code ouvrirait notre fichier précédemment, nous utilisons le mode ARM. Cela permet d'éviter toute modification accidentelle du fichier. Cependant, lors de l'ouverture d'un fichier et notre mode dans erreur IO se produit si le fichier n'existe pas déjà. Par conséquent, lorsque nous exécutons le programme pour la première fois, nous allons finir avec une erreur puisque les utilisateurs de fichiers scores point TXT n'existe pas auparavant. Pour éviter cette erreur, nous pouvons effectuer l'une des opérations suivantes. Au lieu d'ouvrir le fichier dans notre mode, on peut l'ouvrir avec le mode W. Lors de l'ouverture avec le mode W, un nouveau fichier sera créé si le fichier n'existe pas auparavant. Le risque avec cette méthode est que nous pourrions accidentellement écrire dans le fichier, ce qui entraîne l'effacement du contenu précédent. Cependant, puisque notre programme est un petit programme, nous pouvons vérifier attentivement notre code pour éviter toute écriture accidentelle. La deuxième méthode consiste à utiliser une instruction try except pour gérer l'erreur d'E/S. ce faire, nous devons mettre tous nos codes précédents dans le bloc try, puis utiliser sauf erreur IO pour gérer le fichier introuvable. Erreur dans le bloc except informera les utilisateurs que les fichiers introuvables, puis continuez à créer le fichier. Nous allons utiliser la fonction ouverte avec le mode W pour le créer. La différence ici est que l'utilisation du mode W lorsque le fichier n'est pas trouvé. Si le fichier n'existe pas initialement, il n'y avait aucun risque d'effacer un contenu antérieur. Après avoir créé le fichier, se ferme, le fichier retourne ensuite la chaîne de moins un. Vous pouvez choisir l'une des méthodes ci-dessus pour terminer cet exercice, mais je préfère la deuxième méthode. Alors modifions le code. Maintenant, nous allons définir une autre fonction appelée mise à jour des points utilisateur, qui prend en trois paramètres, nouvel utilisateur, nom d'utilisateur et le score. Le nouvel utilisateur peut être vrai ou faux. Si le nouvel utilisateur est vrai, la fonction ouvrira les scores des utilisateurs du fichier point TXT et le mode d'ajout, et ajoutera le nom d'utilisateur de l'utilisateur et le score au fichier lorsqu'il ou elle quitte le jeu. Si le nouvel utilisateur a la valeur false, la fonction mettra à jour le score de l'utilisateur dans le fichier. Cependant, il n'y a pas de fonction en Python qui nous permet de mettre à jour le fichier texte. Nous ne pouvons écrire que pour y ajouter, mais pas mis à jour. Par conséquent, nous devons créer un fichier temporaire. Il s'agit d'une pratique assez courante dans la programmation. Appelons ce fichier utilisateurs scores point TMP et ouvrez-le en mode W. Maintenant, nous allons devoir boucle à travers les utilisateurs score t x t, et copier la ligne de données par ligne aux utilisateurs force.html. Cependant, avant de copier va vérifier le nom d'utilisateur sur cette ligne est le même que celui fourni par le paramètre. Si c'est le même, changera le score en nouveau score avant d'écrire dans le fichier temporaire. Par exemple, si un périmètre fourni à la fonction ou est faux, Andreas et 30, par exemple, mettre à jour les points utilisateur tombe Andreas 30. Le tableau ci-dessous montre la différence entre les scores utilisateur d'origine point TXT et les nouveaux scores utilisateur point TMP. Une fois que nous avons terminé d'écrire à l'utilisateur score point TMP fermera les deux fichiers et supprimera les scores points TXT. Enfin, nous allons renommer les utilisateurs scores Don TMP en utilisateurs scores point TXT. 135. Partie 1 Générer les questions et la mathématiques: Nous sommes maintenant arrivés à la partie la plus importante du programme, générer les questions mathématiques, dégénérer les questions. Déclarez d'abord trois variables, deux listes dans un dictionnaire. Nous nommerons la liste des deux, la liste des opérandes dans la liste des opérateurs. La liste des opérandes doit stocker cinq nombres avec 0 est leurs valeurs initiales. La liste des opérateurs doit stocker les chaînes avec de l'espace comme valeurs initiales. Le dictionnaire se compose de quatre paires avec les entiers un à quatre est les clés du dictionnaire et addition, soustraction, multiplication et exponentiation ajoute les données. Appelons cet opérateur dict. abord, nous devons remplacer les valeurs initiales de notre liste d'opérandes par des nombres aléatoires générés par la fonction INT aléatoire. Rand INT fonction prend en deux paramètres, début et fin et renvoie un entier aléatoire n est tel que inférieur ou égal à n ou moins égal à la fin. Par exemple, si la dyneine Rand INT1 est appelée, elle retournera aléatoirement un entier des nombres un à neuf pour mettre à jour notre variable de liste d'opérandes avec des nombres aléatoires, nous pouvons le faire un par un, puisque la liste d'opérandes seulement compte cinq membres comme celui-ci. Chaque fois que rand INT une dyneine est appelée, Il retournera aléatoirement un entier des nombres un à neuf. Mais ce n'est pas la façon la plus intelligente de mettre à jour notre liste d'opérandes. Correspondant à quel point ce serait lourd si la liste des opérandes a 100 000 membres. Une meilleure alternative est d'utiliser une boucle for comme celle-ci. Super. Maintenant que nous avons les nombres sur lesquels opérer, nous devons générer aléatoirement des symboles mathématiques pour notre question. Pour ce faire, nous allons utiliser la fonction rand INT et le dictionnaire ICT de l'opérateur D. Ran Di Andy va générer la clé du dictionnaire, qui sera ensuite mappée à l'opérateur correct en utilisant le dictionnaire dict de l'opérateur. Par exemple, pour assigner un symbole à la liste d'opérateurs 0, nous écrivons. Vous devriez donc utiliser une boucle for pour effectuer cette tâche. Cependant, il y a un problème qui rend cet exercice assez difficile. Rappelons qu'en Python, exponentiation ou deux astérisques signifie exposant par exemple. Le problème est, c'est quand nous avons deux opérateurs exposants consécutifs en Python, donc juste deux exposants, trois exposants deux. Dans le premier cas, la réponse est deux à la puissance de neuf, qui est 512. Dans le second cas, la réponse est huit à la puissance de deux, qui est 64. Par conséquent, lorsque nous présentons une question comme exposant trois, exposant à, l'utilisateur se trompera de réponse s'il l'a interprétée comme ceci. Pour éviter ce problème, nous allons modifier notre code afin que nous n'obtenions pas deux signes consécutifs. En d'autres termes, cette liste d'opérateurs va bien. Mais cette liste d'opérateurs ne l'est pas. Ce parc est la chose la plus difficile parmi toutes les parties du projet. Essayons de trouver une solution pour éviter deux signes d'exposants consécutifs. À partir du deuxième élément, l' indice IE est égal à un et la liste des opérateurs, la ligne si l'index est supérieur à 0 et l'index de la liste des opérateurs moins un, pas égal à deux exposants consécutifs. Signs vérifie si l'élément précédent de la liste des opérateurs est le symbole exposant. Si ce n'est pas l'opérateur d'instruction est égal à opérateur. Dick rand IN T12 quatre s'exécutera puisque la plage est donnée à la fonction Rand INT est de un à quatre, les nombres 123 ou quatre seront générés, où les symboles plus moins multiplient notre exposant seront assignés à la opérateur variable. Toutefois, si le symbole précédent est exposant, l'opérateur d'instruction else égal à l'opérateur dict rand IN T1. T3 va s'exécuter. Dans ce cas, la plage donnée à la fonction rand INT est de un à trois. Par conséquent, le symbole exposants, qui a une clé de quatre et l'opérateur Dick ne sera pas affecté à la variable opérateur. 136. Partie 1 Générer une expression mathématique et évaluer le résultat: Maintenant que nous avons nos opérateurs et opérandes, nous allons essayer de générer l'expression mathématique sous forme de chaîne. Cette expression utilise les cinq nombres de notre liste d'opérandes et le format des symboles médicaux de notre liste d'opérateurs pour former une question, nous devons déclarer une autre variable appelée chaîne Question et assigner l'expression mathématique à chaîne de questions. Exemples de chaîne de questions : Nous allons utiliser une boucle for pour se concentrer sur les sous-chaînes individuelles de la liste des opérandes et de la liste des opérateurs. Pour obtenir l'expression mathématique. Nous devrions maintenant avoir l'expression mathématique sous la forme d'une chaîne affectée à la chaîne de questions variable. Pour évaluer le résultat de cette expression, nous allons utiliser une fonction intégrée brillante qui vient avec Python. Mal. Evil interprète une chaîne comme un code et exécute le code. Par exemple, si nous écrivons un courriel plus deux plus quatre, nous obtiendrons le numéro sept. Par conséquent, pour évaluer le résultat de notre expression mathématique, nous passons en chaîne de question à la fonction eval et assignons le résultat à une nouvelle variable nommée résultat. Cette profondeur est assez simple et peut être complétée en une seule ligne de code. Enfin, nous allons interagir avec notre utilisateur. Dans cet exercice, nous allons faire quelques choses. Étape 1, affichage de la question à l'utilisateur. Deuxième étape, invitant l'utilisateur à fournir une réponse. Troisième étape, évaluer la réponse, afficher le message approprié et renvoyer le score de l'utilisateur. Pour l'étape 1, nous devons utiliser une fonction intégrée pour manipuler les chaînes, comme mentionné précédemment sur Python, le symbole deux astérix signifie exposant, c'est-à-dire 32, astérix trois égal à 27. Cependant, pour la plupart des utilisateurs, à astérix n'a pas de sens. Par conséquent, si nous affichons une question comme celle-ci, l'utilisateur sera probablement confus. Pour éviter cela remplacera deux symboles abstraits dans la chaîne de question par un symbole carat. Pour ce faire, nous allons construire dans la fonction remplacer en l'utilisant est simple. Juste juste. Vous pouvez maintenant imprimer l'expression résultante à l'utilisateur. Pour l'étape deux, nous pouvons utiliser la fonction d'entrée pour accepter l'entrée de l'utilisateur. Pour l'étape trois, nous devrions utiliser une instruction if pour évaluer la réponse et afficher le message correct. Si l'utilisateur obtient le bon, nous allons complimenter l'utilisateur et retourner la valeur un. Si l'utilisateur se trompe, affichera la bonne réponse et retournera la valeur à 0. Que faire si la fonction d'entrée renvoie l'entrée utilisateur sous la forme d'une chaîne ? Dans ce cas, lorsque vous comparez l'entrée de l'utilisateur avec la bonne réponse, vous devez faire un peu de typographie pour changer l'entrée de l'utilisateur en un entier. Lorsque vous changez l'entrée de l'utilisateur en un entier. Et vous devriez essayer d'utiliser une instruction try except pour vérifier si l'utilisateur a tapé un nombre. Si l'utilisateur a saisi une chaîne à la place, le programme doit informer l'utilisateur de l'erreur et lui demander de la taper en numéro. Donc, nous devons utiliser une vraie boucle tout en demandant à l'utilisateur un numéro tant qu'il est barre oblique, elle ne parvient pas à le faire. Écrire alors que vrai équivaut à écrire quelque chose comme un égal à un, puisque l'on est toujours égal à un, les mains toujours vraies. La boucle s'exécutera indéfiniment. Éditons le code. La boucle while True continuera à boucler puisque la condition while est toujours vraie. Quittez uniquement lorsque le bloc try s'exécute correctement et atteint l'instruction return. 137. Partie 2 Écriture du programme principal: Félicitations pour avoir complété la première partie et bienvenue à la deuxième partie. La deuxième partie va être un jeu d'enfant car nous allons principalement appeler les fonctions que nous avons définies plus tôt. abord, nous allons inclure notre programme principal dans une déclaration try except. Nous voulons gérer toutes les erreurs imprévues. Un exécutant le programme principal commencera par écrire le code pour le bloc try. abord, nous devrons importer le module de fonctions mathématiques. Ensuite, nous allons demander à l'utilisateur son nom d'utilisateur et assignons la valeur au nom d'utilisateur de la variable. Passez cette variable en tant que paramètre à la fonction et obtenez le score des utilisateurs. Obtenir le score des utilisateurs renvoie le score de l'utilisateur ou renvoie moins un si l'utilisateur n'est pas trouvé. Convertons ce résultat en un entier et assignons-le à la partition utilisateur variable. Maintenant, nous devons définir la valeur d'une autre variable, nouvel utilisateur. Si l'utilisateur est introuvable, nouvel utilisateur est égal à true, sinon le nouvel utilisateur est égal à false. Si le nouvel utilisateur est égal à vrai, nous devons le changer de score de moins un à 0. La prochaine partie de notre programme implique une boucle while. Plus précisément, notre programme invitera notre utilisateur à faire des commentaires pour déterminer s'il devrait mettre fin au programme ou faire autre chose. Étape 1, vous devez déclarer une autre variable quel choix de l'utilisateur, et lui donner une valeur initiale de 0. Deuxième étape. Ensuite, tout en utilisant une boucle while, comparez le choix de l'utilisateur avec une chaîne de votre choix, disons moins un. Si le choix de l'utilisateur n'est pas le même que minus1 appelé le générateur de fonctions. Pour générer une nouvelle question. Étape trois, Janvier question retournera un score que le Dieu de l'utilisateur pour cette question, utiliser ce résultat pour mettre à jour le score de l'utilisateur variable. Quatrième étape, enfin, afin d'éviter une boucle infinie, nous devons utiliser à nouveau la fonction d'entrée avec la boucle while pour accepter l' entrée de l'utilisateur et pour l'utiliser pour mettre à jour la valeur du choix de l'utilisateur. Enfin, après la fin de la boucle while, l'étape suivante consiste à mettre à jour le fichier TXT point de score utilisateurs. Pour ce faire, nous appelons simplement la fonction de points utilisateur de mise à jour. C' est tout pour le bloc d'essai. Maintenant, le bloc except, nous informons simplement l'utilisateur qu'une erreur s'est produite et que le programme va quitter. Va terminer cette humidité, vous aurez un programme complet. Exécutons le programme. Le programme demandera un nom d'utilisateur. Tapons mon nom. Ensuite, le programme génère une question. L' expression mathématique que je dois calculer, je ne vais pas calculer les nombres maintenant, donc je vais mettre un nombre aléatoire. Bien sûr, ma réponse est fausse et il y a une réponse correcte. Après cela, le programme me demandera si je veux continuer ou taper minus1 pour terminer le programme. Je vais faire un autre exemple. Ça fonctionne très bien. Excitée. J' espère que tu es aussi excitée que moi. Nous sommes arrivés à la fin de son projet jalon et espérons que vous avez codé avec succès votre premier programme. Si vous avez des problèmes pour terminer un exercice, s'il vous plaît laissez-moi savoir. Mais nous n'avons pas encore fini. J' ai un exercice supplémentaire pour vous permettre de vous défier. Parfois, la question générée peut donner lieu à une réponse qui est très grande ou très petite. Il est très gênant pour les utilisateurs de calculer et de clé en très grand ou très petit nombre. Par conséquent, nous voulons éviter les réponses trop grandes ou petites. Pouvez-vous modifier le programme pour empêcher les questions qui se traduisent par des réponses supérieures à 10 mille et moins que négatif 10 mille. Essayez de modifier le code et vérifiez le code à partir de vos fichiers de ressources. Merci d'avoir regardé.