0% ont trouvé ce document utile (0 vote)
12 vues67 pages

Introduction à la programmation Python

Ce document fournit une introduction au langage de programmation Python. Il discute des raisons pour lesquelles Python est un bon langage pour les débutants, montre comment déclarer des variables et des types de données de base, et explique les entrées et les sorties. Le document présente également des boucles, des conditionnelles, des listes, des dictionnaires et des fonctions en Python.

Traduit par

ScribdTranslations
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
12 vues67 pages

Introduction à la programmation Python

Ce document fournit une introduction au langage de programmation Python. Il discute des raisons pour lesquelles Python est un bon langage pour les débutants, montre comment déclarer des variables et des types de données de base, et explique les entrées et les sorties. Le document présente également des boucles, des conditionnelles, des listes, des dictionnaires et des fonctions en Python.

Traduit par

ScribdTranslations
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Table des matières

Introduction 1.1
Vous devriez apprendre Python 1.2
Commencer avec Python 1.3
Desvios conditionnels, faisant prendre des décisions à votre programme 1.4
Valeurs None, chaînes et listes 1,5
Listes 1,6
Boucles de répétition - I 1.7
Boucles de Répétition - II 1.8
Dictionnaires 1.9
Modularisation du code avec des fonctions 1.10
Expressions Lambda 1.11
Conclusion 1.12
Résolution des exercices 1.13

2
Introduction

Préface
Le monde est de plus en plus connecté, le besoin de développer notre pensée
la capacité computationnelle et la capacité de résoudre des problèmes par la programmation est
crescente.

Plusieurs institutions au Brésil et dans le monde adoptent des disciplines de programmation


logiciel dans l'enseignement primaire et secondaire. Dans cette optique, ce livre vise à aider le
processus initial dans le monde du développement et de la programmation.

L'objectif principal est de démystifier la programmation à travers des exemples pratiques et


exercices, pour que nous puissions cesser d'être seulement des utilisateurs de technologie, mais aussi
devenir les créateurs de celle-ci.

À propos de l'auteur

Gabriel Schade Cardoso est développeur de logiciels sur la plateforme .NET depuis 2008.
De plus, il agit en tant que professeur dans le cours de sciences informatiques et de systèmes pour

internet.

C'est assez lié à la communauté de développement de logiciels nationale, par


en raison de ses contributions, il a reçu le prix de MVP Microsoft (Most Valuable)
Professionnel) dans la catégorie Technologies de Développement.

Maître en informatique appliquée avec un accent sur l'intelligence artificielle et bachelier en sciences
de l'informatique. Consommateur et créateur de jeux pendant mon temps libre, passionné par la technologie,
littérature fantastique et jeux de cartes.

Vous pouvez trouver l'auteur à :

LinkedIn
Github
Blog personnel

Que trouverez-vous dans ce livre ?


Ce livre est un produit gratuit composé de publications du blog
[Link] publications ont été éditées pour améliorer l'expérience
de lecture.

3
Introduction

Chaque chapitre aborde directement un thème de base sur la programmation.


ordinateurs, utilisant le langage de programmation Python comme exemple.

Tous les chapitres contiennent une liste d'exercices de consolidation, c'est fortement recommandé.
que vous recherchiez des matériaux externes pour compléter votre apprentissage.

De plus, il est fortement suggéré que les exercices soient effectués immédiatement après la
lecture du chapitre, pour garantir la pratique avec la théorie.

J'espère que vous apprécierez ce voyage dans le monde de la programmation en utilisant l'un des
langages les plus simples disponibles !

4
Tu devrais apprendre Python

Tu devrais apprendre Python


Comme déjà dit précédemment, je programme majoritairement sur la plateforme .NET, mais
je considère qu'il est une énorme erreur que les programmeurs se referment dans leur petit monde, que ce soit Java,

.Net ou toute plateforme qui soit.

Les langages de programmation en général ont différentes caractéristiques, le


L'objectif de ce livre est de vous initier à l'univers de la programmation, ce qui nous amène à la question :

Si vous voulez commencer à programmer, quel est le meilleur langage ? - Comme toujours, cela dépend.

Si vous avez une compréhension de base (très basique) de l'anglais et que vous souhaitez commencer avec un
langage de marché, je suggère fortement le langage Python. C'est pourquoi nous allons l'utiliser
dans ce livre.

Mais comme je l'ai dit auparavant, tout n'est pas noir et blanc, selon votre expérience et
notions de la langue anglaise, je suggère de jeter un œil à la languePortugol.

Cette langue est maintenue par l'université UNIVALI et a pour objectif de faciliter l'initiation
en programmation utilisant des termes en portugais et une syntaxe simplifiée.

Mais une fois de plus, il convient de souligner que, malgré son excellent caractère éducatif, le Portugol n'est pas

une langue de marché, donc nous allons utiliser Python.

Python est un langage sensationnel, vraiment. Et nous pouvons faire beaucoup de choses avec
Elle, beaucoup même, en devient effrayant.

Je dis souvent que C# et F# sont des langages de programmation à usage général, c'est-à-dire que
peuvent être appliquées à divers scénarios, mais aucune d'entre elles n'est aussi polyvalente que
Python.

Vous pouvez utiliser Python pour :

Créer des scripts d'automatisation, par exemple, toutes les N minutes, pinguer tous les
pages du site
Graphes;
Vision par ordinateur
Applications de bureau multi-plateforme;
Applications Android;
Applications Web;
Apprentissage automatique

5
Tu devrais apprendre Python

Comme si cela ne suffisait pas, Python est encore un langage avec une syntaxe super
simples. Faisant en sorte que le code ressemble beaucoup à une version simplifiée de
anglais.

Dans ce premier chapitre, nous n'allons atteindre que le début du début, le plus grand hit de
informatique, le grand : "Bonjour le monde" !

print("Bonjour le monde")

Et c'est tout ! Il n'y a rien omis dans le code, il n'y a pas de déclaration de nom compliqué.
comme espace de noms, importation de paquet, fonctionprincipalrien.

Aussi simple que cela, Cool n'est-ce pas ?

Un autre point très sympa à propos de Python est qu'il utilise une syntaxe basée sur
espacement, quelque chose que F# a réutilisé et a également fait.

Cela rend la langue considérablement plus concise, car il n'est pas nécessaire d'utiliser des points et
virgules, accolades et tout le bruit normalement présent dans les codes que les programmeurs
écrivent.

Je n'ai rien mis sur l'installation de Python et sur l'environnement de


développement, c'est parce qu'il existe diverses façons de programmer en Python, depuis
environnements web jusqu'aux environnements de développement complets.

Vous pouvez accéder au site :[Link] sélectionner le langage Python, ce qui vous permet déjà
vous pourrez programmer en Python sans avoir besoin d'installer quoi que ce soit !

Si vous souhaitez un outil plus complet, vous pouvez utiliser la documentation sur comment
installer l'outil et le langage Pythondans ce lien.

6
Commencer avec Python

Chapitre 2 - Commencer avec Python


Pois bien, commençons ! Pas trop de théorie maintenant, mettons la main à la pâte !

Il est important de souligner que pour ce livre, j'utilise la version 3.6 de Python et Visual
Studio 2017 comme IDE, vous pourrez choisir un environnement différent, mais je recommande
utiliser le même pour éviter d'éventuels conflits.

Nous allons commencer par le début. Vraiment dès le début. Nous verrons les variables, les types et l'entrée.

et sortie (IO).

Déclarer des variables


La chose la plus basique que l'on peut trouver dans un langage de programmation est les
variables. Mais que sont les variables?

De manière simple, les variables sont les données manipulées par votre programme. Ces données
sont stockés temporairement dans la mémoire de votre ordinateur.

Autrefois, il était nécessaire d'être beaucoup plus prudent lors de l'utilisation de trop de variables, à cause de

de la limitation de la mémoire des ordinateurs, de nos jours cela doit encore être pris en compte
considération, mais nous avons beaucoup plus de liberté qu'auparavant.

Mais comme nous savons que les variables sont stockées en mémoire ? - Eh bien, la mémoire de
L'ordinateur fonctionne de manière similaire à notre système social.

Que faites-vous quand vous devez dire à quelqu'un où vous habitez ?

Vous passez l'adresse, n'est-ce pas?

La mémoire de l'ordinateur fait la même chose, chaque espace possible a une adresse
unique, ainsi votre ordinateur saura où trouver l'information.

Imagine que l'adresse est les coordonnées de latitude et de longitude d'un endroit, c'est bien
spécifique et ne se répète pas. Mais à quelle fréquence passez-vous votre adresse dans le système
de coordonnées?

Si vous n'êtes pas vraiment étrange, vous utilisez probablement très peu le système de coordonnées,
C'est vrai ? - Nous faisons cela parce qu'il n'est pas intuitif pour la plupart des gens, tout comme
les adresses mémoire dans votre ordinateur.

7
Commencer avec Python

Nous résolvons ce problème en créant des noms pour les pays, les villes et les rues. Dans ce même
logique, nous n'utilisons pas le système d'adressage mémoire de l'ordinateur, il est
trop compliqué et nous n'avons même pas le contrôle total de l'endroit où les choses sont stockées (et cela
c'est super).

Pour accéder aux données en mémoire, nous utilisons des identifiants, c'est-à-dire des noms. Un
Une variable, au final, est une composition de trois choses : identifiant d'accès +
donnée stockée + type.

Attends, quoi ? -Oui, quoi, mais pour l'instant tu n'as pas besoin de te soucié de ça.

Allons au code!

Comment créer une variable en Python ? -C'est très simple, il suffit de lui donner un nom et de l'attribuer.
une valeur en utilisant l'opérateur= , regarde :

valor =42

Et c'est ça.

Ce qui est intéressant, c'est que vous pouvez également effectuer des opérations avec ces valeurs, regardez :

valor =42
42+10

Dans ce cas, les informations stockées dans la variablerésultatsera le résultat de


expression mathématique.

Tout comme dans de nombreuses autres langues, vous pouvez utiliser une variable comme valeur.
C'est-à-dire que tout endroit où vous mettriez une valeur, vous pouvez le remplacer par une
variable.

valor =42
résultat = valeur +10

Regardez, malgré la valeur stockée dans la variablerésultatêtre le même que l'autre


exemple (52), maintenant nous utilisons la variable pour calculer.

Vous pouvez afficher le résultat stocké dans les variables avec la fonctionimprimer, regarde :

valor =42
valeur +10
imprimer(resultado)

8
Commencer avec Python

Pratiquons
Faites un algorithme pour résoudre l'équation z = x + y - 4, en stockant le résultat dans
variable z. Considérez que les valeurs initiales de x et y sont, respectivement, 10 et 5.
Après cela, affichez le résultat.

Faites un algorithme pour résoudre l'équation z = a * a - b + c, en stockant le résultat


dans la variable z. Considérez que les valeurs initiales de a, b et c sont respectivement, 4, 6.5
e 10.5. Après cela, affichez le résultat.

Attention

Il est fortement recommandé que vous essayiez de faire les exercices avant de voir les
réponses. Vous pouvez trouver les réponsesici, fais attention à ne pas recevoir
spoilers des prochains exercices.

Tu as réussi à répondre ? -J'espère que oui ! Si ça n'a pas fonctionné, tu peux vérifier
les réponses dans le lien ci-dessus.

Maintenant que vous avez déjà réalisé quelques petits tests, parlons des types.

Tu te souviens que nous avons dit qu'une variable est composée de : identifiant, donnée et type ? C'est ça.

Je pense que la question de l'identifiant et de la valeur est devenue très claire, mais peut-être le type
tu es peut-être encore confus, mais calme, je t'explique.

Le type est ce qui définit la caractéristique de la donnée que la variable stocke, en Python non
nous devons le dire explicitement à aucun moment, mais nous pouvons le déduire.

Dans les exercices, nous avons effectué quelques opérations mathématiques, mais toutes les données ne sont pas

nombres. Parfois, nous devons stocker des valeurs d'autres types, découvrons-les :

Nombres : entiers (int) et à virgule flottante (float)


Textes (chaîne ou str)
Logiques (bool)

Une chose très intéressante à propos des types est qu'après les avoir connus, nous pouvons
simplement travailler comme nous l'avons fait avec les chiffres avant. Vous n'avez peut-être même pas
réparé, mais dans le deuxième exercice nous avons utilisé à la fois des entiers et des flottants.

Nous devons déclarer les variablesbecavec des valeurs décimales.

Allons maintenant aux textes!

Pour définir qu'une valeur est une chaîne, il existe 3 options :

Entre des guillemets simples :texte;

9
Commencer avec Python

Entre guillemets :texte;


Entre une paire de guillemets doubles :texte;

Vous pouvez utiliser n'importe lequel d'eux et votre programme comprendra qu'il s'agit d'un
chaîne.

Faisons un exemple avec la fonction print :

print("Bonjour Python!")

Particulièrement, je préfère utiliser la syntaxe avec des guillemets doubles, mais n'hésitez pas à utiliser la
que plus vous plaira.

Allons ensemble créer un programme qui demande le nom de l'utilisateur et l'affiche ensuite.
console ! Pour demander une information à l'utilisateur, utilisez la fonctionentrée, conforme code:

Entrez votre nom :


imprimer(nom)

Légal, n'est-ce pas ? - Notez que vous pouvez utiliser la fonctionentréepour obtenir des données de tout type,
pas seulement pour les textes, mais dans les autres cas, il faudra transformer le type.

Nous aurons un chapitre complémentaire sur le type chaîne, il possède diverses caractéristiques
spécifiques. Alors pour l'instant, passons au type suivant : Le type logique !

Les variables de type logique ou booléennes sont utilisées pour définir des vérités (Vrai) et des mensonges.

(Faux). Ce type de variable ne peut stocker que ces deux valeurs.

Voici un exemple :

Vrai
mentira =False

Généralement dans les autres langues, les valeurs de ce type sont écrites en lettres minuscules,
mais en Python, ces valeurs commencent par une majuscule, mais les différences s'arrêtent là.

Tout comme les valeurs numériques, il est également possible d'effectuer des opérations avec des valeurs.

logiques. Dans ce cas, nous utilisons les opérateurs : non (pas),e(et) eou(ou).

Appliquons ces opérateurs dans des phrases en langage naturel :

Aujourd'hui, il y avait du soleil le matin


Aujourd'hui, il a plu dans l'après-midi -> considère cette phrase comme un mensonge

Ces affirmations en portugais peuvent être interprétées comme :

10
Commencer avec Python

soleil_du_matin =VRAI
chuva_pela_tarde =False

Maintenant, appliquons les opérateurs, en commençant par l'opérateur de négation (pas):

Hojenãodeu soleil le matin -> si la première affirmation était vraie, cette affirmation est
mensonge
Hojenãochoveu pela tarde -> si la deuxième affirmation était un mensonge, cette affirmation est
vérité

Vous avez remarqué quelque chose ?

L'opérateur de négation inverse la valeur d'une valeur logique ! Ce qui était vrai auparavant est maintenant

mensonge et vice-versa.

Regardez dans le code :

soleil_du_matins =Vrai
chuva_pela_tarde =False

notsol_pela_manha Faux
nonchuva_pendant_l'après-midi

Le deuxième opérateur est l'opérateur. Cet opérateur relie deux valeurs différentes pour
produire un nouveau. Dans ce cas, pour que le résultat d'une opération soit vrai, les deux
Les valeurs liées doivent être vraies.

Allons à nouveau pour les phrases :

Aujourd'hui, il a fait beau le matin et il a plu l'après-midi -> ce sera un mensonge, car nous avons défini que

il n'y a pas eu de pluie dans l'après-midi.

Aujourd'hui, il a fait beau le matin et il n'a pas plu l'après-midi -> cela sera vrai, car en niant le

la valeur de la pluie, les deux valeurs liées retourneront vrai.

soleil_le_matin_et_pluie_l_apres-midi # -> Faux


soleil_le_matin_et_non_pluie_l_après-midi # -> Vrai

L'opérateur fonctionne de manière assez similaire à celui-ci, mais dans ce cas, la valeur produite
sera vrai chaque fois qu'une des valeurs est vraie. Ce cas est celui qui fonctionne
pire comparé à notre langue, mais je pense que cela aide encore à comprendre :

Aujourd'hui, il a fait du soleil le matin ou il a plu l'après-midi -> si l'une des affirmations est

vraie, la phrase est une vérité.

11
Commencer avec Python

Voyez dans le code :

soleil_le_matin_ou_pluie_l_après-midi # -> Vrai


soleil_le_matinsinon pluie_laprès_midi # -> Vrai
pas_de_soleil_le_matin_ou_pluie_l_après_midi# -> Faux

Pour aider à comprendre ces opérations, nous avons les célèbres "Tableaux de vérité", voyez :

Négation (pas)
Valeur Résultat
Vrai Faux

Faux Vrai

E (et)
Première Valeur Deuxième valeur Résultat
Vrai Vrai Vrai

Vrai Faux Faux

Faux Vrai Faux

Faux Faux Faux

Ouou)
Premier Valeur Deuxième Valeur Résultat

Vrai Vrai Vrai


Vrai Faux Vrai

Faux Vrai Vrai

Faux Faux Faux

En plus de ces opérateurs, les types logiques peuvent également être produits en comparant
valeurs de tout type, par exemple : 5 > 3 (cinq est-il plus grand que trois ?), cette expression
renvoie une valeur logique !

12
Commencer avec Python

5 > 3 # -> Vrai

Nous avons plusieurs opérateurs pour effectuer ces comparaisons !

Opérateur Description

== (égal) RetournerVraicaso les deux valeurs soient égales

!=
RetourneVraisi les deux valeurs sont différentes
(différent)

RetourneVraicaso le valeur à gauche de l'opérateur soit supérieure à


(maior)
valeur à droite de l'opérateur
>= (plus grand RetourneVraicaso le valeur à gauche de l'opérateur soit supérieure ou égale
ou égal) que la valeur à droite de l'opérateur

RetournerVraicaso le valeur à gauche de l'opérateur soit inférieure à


< (moins)
valeur à droite de l'opérateur
<= (plus grand RetourneVraisi la valeur à gauche de l'opérateur est inférieure ou égale
ou égal) que la valeur à droite de l'opérateur

Notez que pour comparer les valeurs, nous utilisons deux égaux.== , c'est parce que quand
nous utilisons seulement un égal nous attribuons une valeur. Regardez :

x = 5
y = 10

x = y # -> nous faisons en sorte que la variable x reçoive la même valeur que la variable y

x == y# -> nous comparons si les valeurs de x et y sont égales

Pratiquons
1. Faites un algorithme qui demande un nombre à l'utilisateur

2. Faites un algorithme qui demande le nom de l'utilisateur puis écrit le nom de la personne
pas de console.

[Link] un algorithme qui demande à l'utilisateur quel âge il a, puis après cela,
écrireVraipas de console, s'il a déjà atteint l'âge majeur (18 ans), au cas où
contraire écrireFaux.

4. Faites un algorithme qui demande un nombre à l'utilisateur, puis écrivezVrainon


console, si le nombre a deux chiffres (Il est entre 10 et 99), sinon
écrireFaux.

13
Commencer avec Python

Attention

Il est fortement recommandé que vous essayiez de faire les exercices avant de voir les
réponses. Vous pouvez trouver les réponsesici.

14
Desvios conditionnels, faisant en sorte que votre programme prenne des décisions

Chapitre 3 - Déviations conditionnelles, en faisant


votre programme prend des décisions !

Maintenant que vous avez déjà vu les types de base et que vous avez beaucoup travaillé avec des valeurs logiques, nous allons

introduire une complexité dans nos programmes.

Nous allons créer une déviation conditionnelle, c'est-à-dire que nous allons faire en sorte que le programme suive un

chemin ou autre selon une condition.

Tout comme presque tout ce dont j'ai parlé ici, la syntaxe pour créer une déviation
Le conditionnel en Python est assez simple.

La première chose que nous devons comprendre est : quand nous parlons d'une condition, cela signifie
que nous devons savoir si quelque chose est vrai ou faux, c'est-à-dire que nous devons utiliser un type
logique.

L'idée derrière les déviations conditionnelles est utilisée tout le temps dans nos conversations.
jour après jour, voyez cet exemple :

Va au marché et achète du lait, s'il n'y en a pas, achète de l'eau.

Voyez le raisonnement derrière! Nous devons vérifier si le marché a du lait en stock, s'il
Tiver, nous allons l'acheter, mais s'il n'y en a pas, nous allons acheter de l'eau.

Comme Python utilise l'anglais comme langue par défaut, la condition est traduite en
commandesi, regarde :

leite_em_estoque =True

ifleite_em_estoque
J'ai acheté du lait
sinon :
J'ai acheté de l'eau

Exécutez cet algorithme, puis modifiez la valeur de la variable pourFauxet exécute-le


encore une fois !

Tu vois ? Maintenant nous pouvons faire en sorte que les algorithmes prennent des décisions !

Vous devez utiliser la commandesinonpour le cas négatif, il serait l'équivalent d'un


sinon, c'est-à-dire : siconditionalors fais la scène ne fais pas y.

15
Desvios conditionnels, faisant prendre des décisions à votre programme

Remarquez également qu'après la condition, il est nécessaire de mettre les deux points, c'est-à-dire

nécessaire pour la syntaxe de Python.

Faisons un autre exemple!

Créez une variable numérique pour représenter une note d'un examen, après cela
Affichez le message "Approuvé" si la note est supérieure ou égale à 7, sinon
Rejeté

nota =5

si nota >=7 :
Approuvé
sinon :
Reprovado

Dans ce cas, vous pouvez opter pour deux approches distinctes : enregistrer le résultat de
comparaison dans une variable logique et la comparer ou utiliser l'expression directement dans
commandesi.

Généralement, il est plus courant d'utiliser l'expression directement dans la commande, sauf dans

cas où cette même comparaison doit être faite plusieurs fois, dans ces cas c'est
mieux vaut stocker le résultat et le réutiliser plutôt que de faire la comparaison plusieurs fois
fois.

Il arrive aussi que nous devions traiter plus de deux cas, c'est-à-dire qu'il existe des situations dans lesquelles
umsee umsenaonão ne sont pas suffisants pour répondre à toutes les conditions, voyez cet exemple :
Un élève qui obtient plus de 7 est déjà approuvé, s'il obtient 7 ou 6, il ira en récupération et
En dessous de cela, vous serez recalé. Comment faire ?

nota =6
si nota >7 :
Approuvé
sinon :
si nota != 7 ou nota != 6 :

Récupération
sinon :
Reprovado

Vous pouvez entrer plusieurs commandessiesinonemboîtés, c'est-à-dire l'un dans l'autre.


Ce code fonctionnera sans problèmes, mais cela ne signifie pas que c'est la meilleure façon de
faire ça.

16
Desvios conditionnels, faisant prendre des décisions à votre programme

Pour les cas où une expression est nécessaire : sinon si, utilisez la commandesinon siCeci
comando est un mélange des deux précédents. Il fonctionne comme unsi, mais ce ne sera que
testé au cas oùsianterior a ter résulté enFauxvois :

si note >7 :
Approuvé

elifnota == 7 ou nota == 6 :
Récupération

sinon :
Reproché

Cet exemple est assez simple, mais il nous permet déjà de comprendre l'utilisation dusinon si. É
Il est également important de souligner que cette commande de déviation ne permet qu'unsiet un
sinonqu'ils soient connectés, mais vous pouvez en insérer combien vous voulezelifnécessaires.

Valeurs fiables
Un autre concept intéressant en Python est la question des valeurs True, ce concept définit
quand les valeurs sont fiables ou vraies pour utilisation. Par exemple, dans le cas d'un
numéro, toute valeur qui est différente de zéro est une valeur fiable (y compris les nombres
négatifs).

Il en va de même pour les textes (chaînes), tout texte différent de vide est considéré.
comme fiable, c'est-à-dire que seule la valeur "" ne l'est pas.

Cette fonctionnalité permet d'évaluer la variable directement, sans avoir besoin de


faire la comparaison, voyez l'exemple avec une valeur entière :

valor =4

si valeur !=0 :
Valor n'est pas zéro

ifvalor
print("La valeur n'est pas zéro")

Les deux codes feront la même chose, mais la deuxième forme est encore plus simple !
même sert pour les chaînes :

17
Desvios conditionnels, faisant prendre des décisions à votre programme

test

si texto !="":
print("Le texte n'est pas vide")

iftexto
print("Le texte n'est pas vide")

Une autre chose que nous pouvons explorer normalement est la question des multiples conditions.
Nous pouvons utiliser les opérateurspas, eteoupour créer une condition de la même
forme que nous utilisons pour l'attribution d'une valeur logique.

nota1 =7
nota2 =10

si nota1 > 5 et nota2 >= 7 :


Approuvé

deu_sol =True

if notdeu_sol:
print("Il a plu")

Enfin, il existe une autre façon de décrire la commandesi.

Cette autre forme est connue sous le nom de condition ternaire. Elle est principalement utilisée pour
des conditions courtes et permet une syntaxe plus agile, généralement sur une seule ligne.

L'ordre des choses change un peu, mais cela ressemble encore beaucoup à un langage naturel.
Regardez cette phrase :

Il a été approuvé s'il a obtenu 7 ou plus, sinon il a été rejeté.

Traduisons cela en Python avec la commande que nous connaissons déjà :

nota =6
si nota >=7 :
Approuvé
sinon :
Reprovado

Maintenant, voyons comment cette même opération se présente en utilisant une condition ternaire.

nota =6
imprimer("Aprové" si nota >= 7 sinon "Rejeté" z)

18
Desviations conditionnelles, faisant en sorte que votre programme prenne des décisions

L'ordre des mots change un peu, mais ne vous inquiétez pas, prenons notre temps et ça ira bientôt.
vous vous y habituez.

Allons Pratiquer
1. Faites un algorithme qui demande 3 notes à l'utilisateur, calcule la moyenne et indique si le
L'étudiant a été approuvé ou désapprouvé (la note doit être supérieure ou égale à sept pour que l'étudiant soit approuvé)

être approuvé).

2. Créez un algorithme qui demande l'année de naissance de l'utilisateur, après cela, faites le
programme décrire si l'utilisateur aura ou a déjà 18 ans cette année.

3. Faites un programme qui demande à l'utilisateur son âge, puis affichez la


classification d'âge selon les tranches de valeurs :

Enfant de 0 à 11 ans;
Adolescente de 12 à 18 ans;
Jeune de 19 à 24 ans;
Adulte de 25 à 40 ans;
Meilleurs Âges de 41 à 60 ans
Personne âgée de plus de 60 ans.

4. Faites un programme qui demande à l'utilisateur 2 valeurs, utilisez une condition ternaire pour
écrire quel est la plus grande valeur : le premier ou le second (si les valeurs sont égales,
considérer le second).

Attention

Il est fortement recommandé d'essayer de faire les exercices avant de voir les
réponses. Vous pouvez trouver les réponsesici.

19
Valeurs None, Chaînes et Listes

Chapitre 4 - Valeurs None, Chaînes et Listes


À ce stade, vous devriez déjà être en mesure de créer des variables et de créer des déviations conditionnelles dans votre

programme. Mais faisons un pas en arrière et regardons un peu plus de près


certaines caractéristiques des types en Python !

Commençons par présenter un nouveau type de valeur, les valeursAucun.

ValeursAucunsont utilisés pour décrire des variables qui ont été créées, mais qui ne
n'ont aucune valeur associée à elles. Attends, comment ça ?

Je explique.

Pour utiliser une variable, vous devez la déclarer d'abord, n'est-ce pas ? Faisons un essai !
Exécutez le code ci-dessous :

imprimante(teste)

Simple comme ça, juste une ligne de code.

Ce code, aussi simple et inoffensif qu'il puisse paraître, génère une erreur dans son
application.

Cette erreur se produit parce que la variabletesteelle n'a pas été créée avant, alors que se passe-t-il

nous appelonsNameError.

Mais si nous ne voulons pas que cette erreur se produise, mais en même temps, nous ne...
nous voulons allouer de la mémoire pour la variabletest, comment faire ? - Utilisez leAucun!

teste =None
imprimer(teste)

Problème résolu !

Un autre point important est que les écarts conditionnels aboutiront toujours àFauxquand
réalisé avec une variable contenant la valeurNone :

teste =None

ifteste
print(teste)# -> ne sera pas exécuté

C'est assez simple, non ?

20
Valeurs None, Chaînes et Listes

Explorant un peu plus les chaînes


Nous avons utilisé plusieurs fois des variables de type chaîne, mais il reste encore beaucoup de travail à faire !

Ce type permet une série d'opérations différentes. Nous pouvons vérifier si le texte contient
Seulement des chiffres, mettre la première lettre en majuscule, remplacer une lettre dans le texte et beaucoup

d'autres choses.

Toutes ces opérations sont appelées des fonctions. C'est un concept assez puissant.
dans les langages de programmation.

Par définition, une fonction est un comportement qui appartient à quelque chose, tandis qu'une
Une variable est une caractéristique de quelque chose.

Comment ça ? - Imagine une voiture. Certaines caractéristiques de ta voiture sont : quantité de


portes, couleur, marque, année, et ainsi de suite. Toutes ces caractéristiques peuvent être
transcrites pour un programme sous forme de variables.

Mais votre voiture démarre, accélère et freine aussi. Toutes ces choses sont des comportements, ou
soit, ce sont des actions de la voiture. Les actions sont traduites dans un programme par des fonctions.

Mais ne t'inquiète pas, c'est très facile à utiliser !

Faisons le premier exemple ensemble, transformons la première lettre d'une chaîne.


EN MAJUSCULE, NOUS FERONS CELA PAR LE BIAIS DE LA FONCTIONCAPITALISER:

gabriel
[Link]()
imprimer(nome_maiusculo)# -> Gabriel

Notez que lorsque nous exécutons une fonction, il est nécessaire d'utiliser() , cela se produit parce que

il existe des cas où nous devons informer des valeurs pour effectuer une action, pour remplacer
une lettre avec la fonctionremplacer, par exemple.

Dans ce cas, nous devons informer deux valeurs différentes : la première indique la lettre qui sera
substituée et le second indique la lettre qui la remplacera, voyez :

gabriel
[Link]('e','a')
imprimer(nome_com_letra_alterada)# -> gabrial

Ces valeurs qui sont passées à une fonction s'appellent des paramètres.

Une autre fonction très utile dans les chaînes est la fonctionformat, elle permet, comme le nom le suggère,
formater des textes.

21
Valeurs None, Chaînes et Listes

Alors je peux mettre un texte en italique ? - Non, nous ne parlons pas de ce type de
formatage.

Dans ce contexte, la fonctionformatpermettez-vous de mélanger un texte libre avec des variables ou


valeurs, voici un exemple !

Bonjour {0}
print(mensagem)# -> Bonjour Gabriel

D'accord, mais c'est devenu trop confus ! - Tranquille, ce n'est rien de sérieux.

Que fait la fonctionformatfait est de remplacer dans le texte la mise en forme{N}par le paramètre N.
Où N est l'ordre des paramètres, commençant par zéro (0). Voir un autre exemple :

Bonjour {0}, je m'appelle {1}


print(segunda_mensagem)# -> Bonjour Gabriel, je m'appelle Python

Tu vois ? Le premier paramètre est entré à la place de"{0}", le deuxième à la place de"{1}"e
ainsi de suite !

Mais que se passe-t-il si nous en mettons plus d'un {0}? Testons !

Bonjour {0}, je m'appelle {1}. {0}


Bonjour Gabriel, je m'appelle Python. Gabriel

Comme on peut le voir dans le code, toutes les occurrences de ce format sont remplacées
par le paramètre !

En réalité, il existe une deuxième façon de mélanger du texte libre avec des variables, elle se
appelle interpolation de chaînes.

Je considère cette syntaxe plus simple à comprendre. Pour faire une interpolation de
nous devons mettre la lettre "f" avant la chaîne.

Avec cette notation, la syntaxe n'est plus basée sur la position des paramètres, il suffit de
nous mettons directement le nom de la variable entre accolades.

Bonjour {nome_maiusculo}
Bonjour Gabriel

Le problème de cette approche est que tous les outils de développement


comprennent l'interpolation, alors peut-être que vous devrez taper le nom de la variable dans un texte,
Ce qui peut causer une erreur dans votre application, si vous saisissez mal le nom de la variable.

22
Valeurs None, chaînes et listes

Passons maintenant à la dernière fonction de chaînes que je vais vous montrer, elle s'appellediviser!

Cette fonction est très utile et assez populaire. Dans ce cas, nous avons choisi un caractère pour
casser le texte en différentes parties. Par exemple, imaginez une variable avec le suivant
valeurassiette, fourchette, verre.

Cette variable contient le nom de certains ustensiles de cuisine, mais que se passerait-il si nous devions les séparer ?

los? -Simples, utilisez la fonctiondiviserséparant les valeurs par une virgule !

plat, fourchette, verre


print(itens_cozinha.split(","))# -> ["assiette", "fourchette", "verre"]

Que sont ces crochets ? Comprenons ce qui se passe.

Lorsque nous utilisons la fonctiondivisernous avons divisé le texte en plusieurs morceaux différents, après tout,
nous avons maintenant trois éléments au lieu d'un texte.

Mais si nous ne pouvons stocker qu'une valeur dans une variable, comment garderions-nous les 3 éléments ?

Pour notre chance, il existe un type spécial appelé chamadolista. Ce type fonctionne comme une collection.

de valeurs, vous utilisez seulement un identifiant/nom pour accéder à plusieurs valeurs


différents.

Nous allons stocker le résultat du split dans une variable, regarde :

item = items_kitchen.split(",")

D'accord, mais maintenant comment puis-je accéder aux valeurs individuelles ? -Simple, nous utilisons un
indice.

Ne t'inquiète pas, c'est assez simple, après tout tu as déjà travaillé avec des indices dans la fonctionformat,
c'est exact, les indices sont des nombres séquentiels qui dans le cas de Python commencent par zéro

(0).

Dans le cas des listes, nous utilisons des crochets pour définir les indices, voyez :

itens = itens_cuisine.split(",")
imprimer(itens[0])# -> plat
print(itens[1])# -> fourchette
print(itens[2])# -> verre

Nous devons toujours faire attention lors de l'accès à un index, car lorsque nous accédons aux indices
au-delà des limites de la liste, une erreur est générée !

23
Valeurs None, Chaînes et Listes

print(itens[3])# -> Génère une erreur

Gardez à l'esprit que l'index le plus élevé de la liste sera toujours égal à sa taille -1.
dans notre exemple, nous avons trois éléments différents, donc le dernier indice valide est 2.

Allons Pratiquer!
1. Faites un programme qui demande le nom de l'utilisateur et ensuite fait une salutation.
Bonjour {nom saisi par l'utilisateur}

2. Faites un programme qui demande un message quelconque à l'utilisateur et affiche celui-ci.


MESSAGE AVEC TOUTES LES LETTRES EN MAJUSCULE.

3. Faites un programme qui demande l'âge de l'utilisateur, vérifiez si le texte saisi est seulement
contient des chiffres. Si cela ne contient que des chiffres, affichez le message : "Vous avez"

{idade digitada} ans.


invalide

4. Faites un programme qui demande le nom complet de l'utilisateur et affiche seulement le sien
deuxième prénom/premier nom de famille.

Attention

Certains exercices utilisent des fonctions qui n'ont pas été montrées dans ce post, vous pouvez
cherchez-les sur Internet, la documentation Python ou tapez simplement la chaîne
dans Visual Studio, appuyez sur ctrl + espace (il affichera les fonctions disponibles).

Il est fortement recommandé que vous essayiez de faire les exercices avant de voir les
réponses. Vous pouvez trouver les réponsesici.

24
Listes

Chapitre 5 - Opérations avec des listes


Si vous avez pratiqué en Python, vous avez probablement rencontré le problème de création
de variables pour décrire des listes, par exemple, un ensemble d'étudiants, un ensemble de
voitures garées ou même une liste de courses !

Vous n'avez pas besoin de créer une variable pour chaque élément de la liste ! Comme nous l'avons vu dans le chapitre

passé, vous pouvez manipuler plusieurs valeurs sous une seule variable. Ces variables se
Listes de chama!

Tout comme les exemples décrits précédemment, tout type d'information qui doit être
regroupée dans un certain type d'ensemble utilise cette ressource, un exemple de cela était la fonction
diviserque nous avons vu au chapitre précédent.

Commençons par voir comment créer une liste vide, c'est-à-dire une variable qui s'identifie
avec le type liste, même s'il ne contient rien en lui-même, tout comme beaucoup d'autres choses,
Il est très facile de définir une liste en Python, il suffit de déclarer le nom de la variable et d'utiliser

crochets vides, voyez :

lista_de_compras = []

Simple comme ça ! De plus, vous pouvez également créer la liste en incluant déjà certains éléments dedans !
Il suffit de séparer chaque élément de la liste par une virgule !

lista_de_compras = ["Pão","Água","Leite","Ovos"]

Percevez que chaque élément de la liste est initialisé individuellement et séparé par des virgules. Vous
Tu te souviens comment nous accédons à chaque élément de la liste ? -À travers son indice !

imprimer(lista_de_compras[0])# -> Pain


print(lista_de_compras[1])# -> Eau
print(lista_de_compras[2])# -> Lait
print(lista_de_compras[3])# -> Oeufs

Il est important de se rappeler que l'index commence toujours à zéro, essayer d'obtenir le premier élément
utiliser l'indice 1 est une erreur courante chez les débutants, mais avec le temps, vous vous
s'habitue.

Un point intéressant dans Python est que vous pouvez également accéder à la liste par l'arrière.
devant, mais maintenant l'indice commence à -1 :

25
Listes

print(lista_de_compras[-1])
print(lista_de_compras[-2])
print(lista_de_compras[-3])
imprimer(lista_de_compras[-4])

Essaie d'imaginer la liste comme sur le dessin ci-dessous :

Vous pouvez changer la valeur d'un élément dans une liste aussi facilement que vous pouvez l'obtenir, il suffit d'utiliser le

indice et effectuer la modification comme une variable normale.

Jus d'orange

Le code change l'élément "Lait" en "Jus d'Orange", fonctionnant de la même manière que
une variable commune.

Jusqu'à présent, nous n'avons que modifié la valeur d'éléments déjà existants, mais si nous devons en ajouter un
nouvel élément, comment faisons-nous ?

Que se passe-t-il si nous essayons d'accéder à la position après la fin de la liste ? - Dans notre cas, le

position 4. Voir :

Café

Ce code ne fonctionnera pas, car cette attribution doit être utilisée uniquement pour modifier le
valeur des articles déjà existants!

Pour inclure un nouvel élément, il est nécessaire d'utiliser la fonctionajouteret en informant l'élément que

sera ajouté à la liste, comme dans l'exemple.

lista_de_compras.append("Café")

26
Listes

Maintenant c'est bon !

En utilisant leajouter, nous ajoutons un élément à la fin de la liste, c'est-à-dire qu'il sera le dernier
élément. En plus deajouteril existe diverses autres fonctions et ressources pour travailler
avec des listes. L'une des ressources disponibles est le mot réservédans.

Nous pouvons utiliser cette commande pour vérifier si un élément est dans la liste, il suffit d'utiliser le

suivant la syntaxe :élément , cela renverra une valeur logiqueVraiouFaux,


dans la liste

selon que la liste contient ou non l'élément informé.

Cela nous permet de créer des écarts conditionnels, par exemple, regardez :

si "Café" dans liste_de_compras:


Je dois acheter du café

C'est plutôt simple, non ?

Une autre tâche très courante est le besoin de compter combien d'articles se trouvent dans une liste donnée.

possède, pour faire cela nous utilisons la fonctionlongueurembarquée dans la langue.

La fonctionlongueurc'est une abréviation de paralength, un mot anglais pour taille. Cette fonction
doit recevoir une liste en paramètre et elle retournera un entier avec la quantité de
éléments.

len( liste_de_courses )# -> 5

Notez que la quantité d'éléments n'est pas la même chose que la position maximum du
indice. Dans notre exemple, la liste contient cinq éléments, donc nous avons comme indices valides
0 à 4.

Nous avons vu comment ajouter des éléments à une liste, comment vérifier si un élément y est contenu et
jusqu'à vérifier la quantité d'articles, mais nous n'avons pas encore vu comment supprimer un article de la liste.

Une idée ?

De nombreux débutants essaient d'effectuer l'opération suivante :

lista_de_compras[2] =None

Le raisonnement a un peu de sens, si je dis qu'il n'y a rien à la position 2,


Alors cet élément ne devrait pas exister, n'est-ce pas ? -Faux.

En effectuant l'opération ci-dessus, vous direz que l'élément à la position 2 ne contient rien et ne
qu'il n'y a pas d'élément à la position 2. Tu perçois la différence subtile ?

27
Listes

Dans le premier cas, vous dites que la position 2 existe, mais il n'y a rien dedans, tandis que dans
deuxième cas, vous l'enlevez de la liste.

Ok, mais comment faisons-nous pour l'enlever de la liste ? De la même manière que nous avons une

abreviation paralenghttambém il y a une abréviation paradelete. Cette commande s'appelle


del.

Retirons les œufs (position 3) de notre liste de courses !

dellista_de_compras[3]

Simple comme ça.

Il est maintenant important que vous notiez que la position 3 ne cessera pas d'exister. Ce qui se passe de
En fait, tous les éléments qui se trouvaient à une position supérieure à celle de l'élément exclu sont
déplacés d'une position vers la gauche.

C'est-à-dire que nous avions le café à la position 4 et maintenant il est à la position 3, ce qui fait que la

la position 4 cesse d'exister.

Comprenons mieux chaque fonction avec quelques exercices !

Allons Pratiquer
1. Faites un programme qui initialise une liste avec les noms des personnes de votre famille.

2. Créez un programme qui initialise une liste vide et demande à l'utilisateur 3 noms de
villes, une à la fois, chaque fois que l'utilisateur saisit un nom, le programme doit inclure
ce nom dans la liste des villes.

3. Faites un programme qui initialise une liste avec plusieurs nombres différents, puis
disso, demandez à l'utilisateur un numéro, vérifiez si le numéro est ou non dans la liste et affichez
un message informant l'utilisateur du résultat.

4. Faites un programme qui initialise une liste vide et la remplit avec 5 noms différents
saisis par l'utilisateur, ensuite demandez un nombre de 0 à 4 et supprimez l'élément
de cette position.

Attention

Il est fortement recommandé que vous essayiez de faire les exercices avant de voir les
réponses. Vous pouvez trouver les réponsesici.

28
Listes

29
Boucles de Répétition - I

Chapitre 6 - Liens de Répétition - Partie 1


Dans ce chapitre, nous verrons l'une des ressources les plus importantes dans n'importe quelle langue.

programmation : Les boucles, également connues sous le nom de répétitions.

Dans le chapitre précédent, le fonctionnement des listes a été expliqué, nous continuerons donc à les utiliser.

listes ici.

Vous devez vous souvenir de comment nous accédons à un élément d'une liste, n'est-ce pas?

à travers son index ! Faisons un exemple en créant une liste de dix nombres, regardez :

numeros = [10,20,30,40,50,60,70,80,90,100]

Comment ferions-nous pour imprimer chaque nombre individuellement dans la console ?

numeros = [10,20,30,40,50,60,70,80,90,100]

imprimer(numeros[0])
imprimer(numeros[1])
print(numeros[2])
print(numeros[3])
print(numeros[4])
imprimer(numeros[5])
imprimer(numeros[6])
imprimer(nombres[7])
imprimer(numeros[8])
print(numeros[9])

Remarquez que cette tâche est assez lourde, de plus, nous pouvons rencontrer des problèmes avec
listes plus longues. Ce type de tâche répétitive peut être remplacé par une boucle de répétition !

Voici une autre façon d'accomplir cette tâche :

numeros = [10,20,30,40,50,60,70,80,90,100]

fornumeroinnumeros
imprimer(numero)

Bien plus simple, n'est-ce pas ? Mais calme, comprenons comment cela fonctionne.
commande.

30
Boucles de Répétition - I

Le résultat est remarquable que les instructions ci-dessous le commandentpournous exécutons plus de
Une fois, en fait c'est pour ça qu'on les appelle des liens de répétition. Parce qu'ils répètent les

instructions jusqu'à un certain point.

Allons-y, d'abord la syntaxe pour la commande : il est nécessaire d'utiliser le mot réservépour
pour commencer la commande, similaire à ce que nous avons fait avec la commandesi.

Nous déclarons donc une variable, suivie de la commandedanse do nom d'une variable qui
soyez une liste.

Avec cette structure, nous définissons que la variable que nous avons créée (numéro, dans notre exemple)
vous recevrez un élément de la liste à chaque interaction de la boucle, c’est-à-dire que d'abord la variable numéro

reçoit la première valeur de la liste, exécute toutes les opérations de la boucle de répétition (dans ce
caso juste un imprimé) et retourne au début du bloc, en modifiant la valeur de la variable pour le
prochain élément de la liste.

Cela se produit jusqu'à ce que la liste arrive à sa fin, à ce moment-là la boucle de répétition est fermée et le

le programme continuera normalement.

Mais alors, ne pouvons-nous utiliser la boucle de répétition que pour parcourir des listes ? - Définitivement,

non.

Nous pouvons également les utiliser pour répéter une série d'instructions, même s'il n'y a pas de.
liste impliquée, pour faire cela nous avons la fonctiongammedisponible dans Python.

Cette fonction permet de créer des listes à la demande, voir :

valor =0
pourindiceenportée(5):
valor +=10
print(valeur)

Dans ce cas, les valeurs suivantes seront affichées : 10, 20, 30, 40 et 50. C'est parce que la fonctionplage

indique que la boucle doit être répétée 5 fois. Pour garantir cela, elle crée une liste avec les
valores [0, 1, 2, 3, 4].

Cette fonction crée une liste dans ce format par défaut, mais il est possible de modifier cela.
comportement à travers des paramètres. Il est possible, par exemple, d'utiliser deux paramètres
différents, l'un avec la valeur initiale et l'autre avec la valeur limite.

pour la valeur dans la plage (5,10) :

imprimer(valeur)

Dans ce cas, la liste créée contiendra les valeurs : [5, 6, 7, 8, 9]. Notez que la valeur limite n'est jamais
inclus dans la liste, il définit en effet sa limite et non sa dernière valeur.

31
Boucles de Répétition - I

Un dernier modificateur possible dans la fonctionplageet le saut entre chaque valeur. Nous pouvons
spécifier pour que les valeurs augmentent de deux en deux, de dix en dix et ainsi de suite. C'est tout.
ajoutons un dernier paramètre !

pour valeur dans la plage (0,10,2) :

imprimer(valor)

Dans ce cas, la liste résultante est : [0, 2, 4, 6, 8], c'est plutôt cool, non ?

Maintenant que nous avons vu les variations deétendueet de cette commande, nous allons pratiquer !

Allons pratiquer
1. Faites un programme qui initialise une liste de courses avec 5 articles différents et affiche
tous utilisant une boucle de répétition.

2. Faites un programme qui initialise une liste avec les valeurs de 1 à 10 et ensuite
affichez uniquement les nombres pairs.

3. Créez un programme qui affiche toutes les valeurs impaires entre 50 et 100 en utilisant le
plage.

4. Faites un programme qui initialise une liste vide, demande à l'utilisateur 10 chiffres
différents, un par un. Si le nombre saisi est pair, ajoutez un à sa valeur.
Après cela, affichez les 10 numéros saisis.

5. Faites un programme qui affiche les tables de multiplication de 1 à 10 au format : "2 x 3 = 6", (utilisez

deux commandespour)

Attention

Il est fortement recommandé d'essayer de faire les exercices avant de voir les
réponses. Vous pouvez trouver les réponsesici.

32
Boucles de Répétition - II

Chapitre 7 - Liens de Répétition - Partie 2


Le chapitre précédent a introduit le concept de boucles en utilisant la commandepour.
Mais ce n'est pas la seule façon de réaliser ce type d'opération !

En plus depournous avons la commandependant !


que

Sa syntaxe est un peu différente de la syntaxe depour, mais très similaire à la syntaxe de
commandesi, mais ne te méprends pas, les similitudes entre lesiet otandis finissent là.
que

À des fins d'exemple, utilisons la même liste que le chapitre précédent !

numeros = [10,20,30,40,50,60,70,80,90,100]

L'idée derrière la commandetandis querépéter une tâche tant qu'une condition est remplie
véritable, c'est-à-dire, dans la déclaration de la commande nous devons effectuer une comparaison, si
cette comparaison soit vraie, le bloc d'instructions dutandis sera exécuté.
que

Le programme reviendra au début du bloc après que la dernière instruction de cette commande ait été
exécutée, faisant à nouveau la comparaison.

Lorsque cette comparaison donne un résultatFauxle bloc d'instructions dutandis que


será sauté et le programme continuera normalement. Faisons un exemple ?

Imprimons tous les nombres de la listenuméros, regarde :

numeros = [10,20,30,40,50,60,70,80,90,100]

posicao =0
whileposicao < len(numeros):
print(numeros[posicao])
position += 1

Note que cela finit par être un peu différent de la commandepour. Dans ce cas, nous avons besoin
stockez la position de la liste dans une variable et modifiez-la manuellement à chaque répétition du
boucle.

Cela peut causer un problème sérieux dans votre programme ! Si par hasard nous oublions de
modifier les valeurs qui effectuent la comparaison dupendant quenous pouvons rester coincés dans une boucle

infini, c'est-à-dire que notre programme ne finira jamais !

Faisons l'expérience ! Retirez l'instruction qui ajoute 1 à la [Link]


exécute le programme :

33
Boucles de Répétition - II

numeros = [10,20,30,40,50,60,70,80,90,100]

posicao =0
whileposicao < len(numeros):
print(numeros[posicao])

Par conséquent, n'oubliez pas de modifier les valeurs qui influencent la comparaison !

Si pour une raison aléatoire, vous décidez que vous voulez faire une boucle infinie,
il suffit d'utiliser la commande de cette manière :

tant que vrai :


IMPRESSION INFINIE

Au lieu de faire une comparaison, nous marquons directement le résultat de


comparaison commeVrai, mais fais attention, cela peut mal tourner !

Maintenant, passons à deux nouvelles commandes qui peuvent être utilisées dans une boucle de

répétition, je dois dire que je n'aime aucun d'eux, mais ils existent et je ne prévois pas
ignore-les.

Ce sont eux :continuere opause, les deux interfèrent dans les interactions de la boucle de répétition.

34
Boucles de Répétition - II

Le commandementcontinuerfait en sorte que la boucle revienne au début du bloc, c'est-à-dire


pour qu'il continue avec la prochaine itération, mais interrompt immédiatement l'interaction
actuel.

Faisons un exemple pour écrire tous les éléments de la liste de nombres, sauf le
position 5 :

posicao =0
tandisque posicao < len(numeros):
posicao += 1
siPosition ==5:
continuer
print(numeros[posicao-1])

Voici la question qui me fait ne pas aimer cette instruction, vous pouvez simplement réajuster
les instructions pour ne pas avoir besoin d'utiliser lecontinuer, regarde :

posicao =0
tant que posicao < len(numeros):
posicio +=1
si posicao != 5 :
print(numeros[posicao-1])

Le résultat final est le même et dans ce cas vous n'interrompez pas le flux principal de
programme.

L'autre instruction est lepause, dans ce cas, l'interruption est plus agressive, elle interrompt le
propre boucle de répétition entière, pas seulement l'itération actuelle.

Cela signifie que, en utilisant la commandepausesortons de la boucle de répétition


même si la comparaison est toujours vraie, la rendant y compris des boucles infinies.

posicao =0
whileposicao < len(numeros):
position +=1
si position == 5:
pause
print(numeros[posicao-1])

Avec le code ci-dessus, les nombres de la position 0 à la position 4 seraient affichés. Aucun
le numéro après la position 4 apparaîtra dans la console, car lepauseinterrompit tout le
boucle de répétition.

35
Boucles de répétition - II

La stratégie pour éviter lepauseC'est simple. Si vous l'utilisez, c'est probablement votre
la logique de vérification dans la boucle de répétition ne remplit pas son rôle. Dans l'exemple ci-dessus
nous ne voulons pas parcourir jusqu'à la fin de la liste comme la condition le suggère, mais plutôt jusqu'à la quatrième

position :

posicao =0
tant que position < 5 :

print(numeros[posicao])
posizione +=1

Allons pratiquer
1. Faites un programme qui initialise une liste de courses avec 5 articles différents et les affiche.
tous utilisant une boucle de répétitionalors que.

2. Faites un programme qui initialise une liste avec les valeurs de 1 à 10 et ensuite l'affiche
juste les nombres pairs utilisanttandis que.

3. Faites un programme qui initialise une liste vide, demande à l'utilisateur 10 numéros
nombres impairs différents, un à la fois. Si le numéro saisi est pair, demandez à nouveau
un nombre, jusqu'à ce que la valeur soit un nombre impair. Après cela, affichez les 10 nombres
numérisés.

4. Faites un programme qui affiche un menu pour que l'utilisateur sélectionne l'une des trois options :

Bonjour le monde
Je programme en Python
3 - Boucles de répétition

Le programme doit demander à l'utilisateur l'une des 3 options, si l'utilisateur saisit une valeur
différent des options (1, 2 ou 3), le programme doit à nouveau présenter le menu de
options jusqu'à ce qu'une d'entre elles soit choisie. Enfin, le programme doit afficher un message
différent pour chaque option.

1. Supprimer l'instructionpauseet l'instructioncontinuerdu boucle de répétition ci-dessous :

numeros = [1,2,3,4,5,6,7,8,9,10]
posicao =0
tandis que position < len(nombres):
position +=1
si position == 3 :
continuer
elifposicao == 6:
pause
print(numeros[posicao-1])

36
Boucles de Répétition - II

Attention

Il est fortement recommandé que vous essayiez de faire les exercices avant de voir les
réponses. Vous pouvez trouver les réponsesici.

37
Dictionnaires

Chapitre 8 - Utilisez des dictionnaires !

À ce stade, vous devriez déjà être familiarisé avec les listes et les boucles, maintenant vous êtes déjà
au moment de créer plus de structures, cette fois, nous allons utiliser les dictionnaires!

Les dictionnaires permettent au développeur de stocker facilement des paires clé-valeur ! Dans
pratique cela signifie que nous parvenons à créer une structure pour stocker plus d'une
information corrélée.

Imaginez que vous souhaitez stocker des données sur une personne. Vous aurez besoin de conserver le
nom, prénom, âge et combien d'autres informations seront nécessaires. Est-il possible de créer
toutes ces variables séparées ? Mais bien sûr que oui !

Le problème de cette approche est que votre programme ne pourrait pas établir de lien avec les
informations. Pour votre programme, c'est comme si ces variables étaient des données séparées
entre eux, c'est-à-dire, sans aucune relation.

Si vous avez déjà vu un objet enJSON, vous verrez qu'il existe de nombreuses similitudes
entre ces deux choses, regardez à quoi ressemble un dictionnaire en Python :

personne
Gabriel
Schade
"idade":27
}

Comme mentionné précédemment, un dictionnaire organise les informations en paires au format


clé-valeur. Dans l'exemple ci-dessus, les clés sont : nom, prénom et âge et les valeurs
respectifs sont : Gabriel, Schade et 27.

Dans notre cas, les clés sont des valeurs de typechaîne, mais il n'y a pas d'obligation
nisso (malgré le fait que ce soit assez commun) tandis que les valeurs varient généralement de
types.

Tout comme dans les listes, nous pouvons modifier et obtenir les valeurs d'un dictionnaire, mais dans ce cas

au lieu d'utiliser un indice, nous utilisons une clé. Cela fait que les dictionnaires
soyez extrêmement simples à travailler, voyez le code suivant :

Schade Cardoso

Ce code est assez similaire à la modification de la valeur d'un élément dans la liste et fait la même chose,
mais cette fois en changeant une valeur d'un dictionnaire.

38
Dictionnaires

Nous pouvons effectuer le même processus pour obtenir une valeur du dictionnaire et l'enregistrer dans
une autre variable, regarde :

pessoa["nom"]

Avec cela, nous pouvons manipuler les informations liées dans un même dictionnaire.
Nous pouvons par exemple afficher dans la console le nom complet de la personne :

imprimer( personne["nom"], personne["prénom"] )

En utilisant des dictionnaires, vous devez faire attention, car si la clé n'existe pas, l'application
Cela va lancer une erreur ! Faites le test :

pessoa["cpf"]

Sachant cela, il existe une autre façon en Python d'obtenir une valeur d'un dictionnaire.
Nous pouvons le faire grâce à la fonctionobtenir. Pour cette fonction, nous devons envoyer deux
informations : la clé est une valeur par défaut pour le cas où la clé n'existe pas.

[Link]("cpf", None)
print(cpf)# -> Aucun

À travers duobtenirnous pouvons chercher une valeur dans un dictionnaire de manière sûre, en faisant avec
que l'application ne génère pas d'erreurs.

En plus de la fonctionobtenir, les fonctions sont également disponiblesclésevaleurs, elles


retournent respectivement une liste contenant toutes les clés ou toutes les valeurs de
dictionnaire.

Commençons par utiliser la fonctionclés!

[Link]és()
forchaveinchaves
print(chave)

Il en va de même pour obtenir toutes les valeurs :

valeurs = [Link]()
pourvaleurdansvaleurs
imprimer(valor)

39
Dictionnaires

Nous pouvons utiliser ces fonctions pour écrire chaque clé et sa valeur respective, par
exemple :

les clés
forchaveinchaves
valeur = personne[chave]
clé +": " + str(valeur)
imprimer( texte )

Le code ci-dessus a été séparé pour clarifier l'étape par étape des instructions, mais vous
vous pouvez inclure toutes ces instructions en une seule ligne de code si vous le jugez préférable

confortable

[Link]és()
forchaveinchaves
print( clé, ":", str( personne[clé]) )

Enfin, tout comme nous l'avons fait avec les listes, nous pouvons également supprimer un élément de

dictionnaire avec la commandedélicat. Il est important de dire que ledélretirer complètement le


élément clé-valeur du dictionnaire.

delpessoa

print(pessoa["sobrenome"])

Le code ci-dessus générera une erreur, car à partir du moment où la commandedélfoi


appliqué à la clé-valeur "nom de famille", elle cesse d'exister dans le dictionnaire, donc prenez
Attention!

Allons Pratiquer
1. Créez un programme qui crée un dictionnaire pour définir un produit, contenant son
description

2. Écrivez un programme qui initialise une liste de courses avec 5 articles différents, où
chaque élément est un dictionnaire contenant la description et le prix du produit. Après cela,
parcourez la liste et affichez les informations de chaque élément.

3. Utilisez la liste de courses du programme précédent pour identifier quel est le produit le plus
Quel est le produit le moins cher et le produit le plus cher de la liste de courses.

40
Dictionnaires

4. Faites un programme qui a une liste de 5 personnes, où chaque personne a son


nom et prénom stockés dans un dictionnaire, ensuite, affichez tous les noms
et les noms de famille. Pour compliquer un peu les choses, simulons que ces données
ont été obtenus sur le web et cela nous a conduit à certaines incohérences. Deux des cinq
les personnes ont le dictionnaire où les clés sont en majuscules et les trois autres en
minuscule.

Attention

Il est fortement recommandé que vous essayiez de faire les exercices avant de voir les
réponses. Vous pouvez trouver les réponsesici.

41
Modularisation du code avec des fonctions

Chapitre 9 - Modularisation du code avec


Fonctions
Dans ce chapitre, nous allons apprendre comment nous pouvons décomposer nos codes en parties.
mineurs, c'est-à-dire, le modulariser !

Faisons cela en utilisant nos propres fonctions !

Ce chapitre est peut-être un peu plus théorique que les précédents, mais ne vous inquiétez pas,
programmons beaucoup ici aussi !

Jusqu'à présent, nous programmons des solutions petites. Chaque exercice était basé sur
un problème spécifique que nous avons réussi à résoudre avec peu de lignes de code, mais en
dans les applications réelles, il est courant qu'un seul programme résolve diverses choses différentes.

La création de solutions plus complexes et de programmes plus grands devient une tâche assez
Il est difficile de continuer à programmer de la manière dont nous le faisons. Nous devons faire en sorte que le

le programme soit divisé en morceaux plus petits.

De cette façon, chaque fois que nous devrons résoudre un problème plus complexe,
nous pouvons connecter ces pièces pour former une solution.

Pour cela, nous avons besoin que ces pièces soient réutilisables, tout comme des pièces de lego.

42
Modularisation de code avec des fonctions

Ces pièces réutilisables s'appellentfonctionsElles sont formées par un bloc de


code qui exécute une action donnée.

En fait, au cours des exercices précédents, nous avons déjà utilisé des fonctions disponibles dans Python.
plusieurs fois. Leimprimere oentréece sont des exemples de fonctions disponibles, mais le plus
Ce qui est intéressant, c'est que nous pouvons définir nos propres fonctions!

De manière générale, chaque fonction doit effectuer une seule action. De cette façon, elle devient plus
réutilisable et utile pour vos programmes.

Chaque fois que vous avez une fonction qui effectue plus d'une tâche, soyez attentif, cela
c'est probablement un signe de mauvais code. Peut-être que cette fonction devrait être divisée en deux
ou plus de fonctions.

Voyons comment nous pouvons définir une fonction dans notre code Python !

défaillance_monde() :

imprimer("Bonjour le monde")

D'abord, il est nécessaire d'utiliser le mot réservédéf, ce mot est responsable de


définir une fonction. Ensuite, nous incluons le nom de la fonction, ce nom doit suivre les
mêmes règles pour le nom des variables.

43
Modularisation du code avec des fonctions

Enfin, nous incluons les caractères() , à partir d'ici nous utilisons les: et tous les
Les commandes appartenant à ce bloc suivent les mêmes règles que les commandes déjà vues :
si, pendant, poure, etc.

Mais il y a une différence importante, lorsque nous définissons une fonction, nous ne faisons pas en sorte que ceux-ci

des commandes seront exécutées, nous ne faisons que décrire ce qui va se passer lorsque
exécuter la fonction.

Pour exécuter une fonction, vous devez utiliser son nom suivi des parenthèses, voyez :

defola_mundo():# -> Définition


print("Bonjour le monde")

ola_monde() # -> Appel pour exécuter

Vous pouvez mettre autant de commandes que vous le souhaitez dans une fonction et toutes seront
exécutés dès que la fonction est exécutée.

Après qu'une fonction est définie, c'est comme si l'appel pour l'exécuter était un nouveau
commande Python, à partir de maintenant, nous créons nos propres instructions et elles
se comportent de la même manière que les fonctions de Python.

Voyez comment se déroule le flux d'exécution du programme en tenant compte que cet appel est
réalisée entre des opérations que nous avons déjà vues auparavant.

numero =10
numero2 =15
bonjour_monde()
résultat

Que se passe-t-il dans ce flux ?

Bien, d'abord les deux variablesnuméroenuméro2sont déclarés et les valeurs 10 et 15


sont attribués à elles respectivement. Après ces deux premières lignes, la fonction
est exécutée.
Bonjour le monde

Lorsque cela se produit, l'exécution du code principal « gèle » pour exécuter toutes les
instructions de la fonction. Après cela, il retourne à l'instruction suivante.

44
Modularisation du code avec des fonctions

Diviser un algorithme en parties plus petites aide également beaucoup à la testabilité d'un
programme. Il est toujours plus simple de tester un petit bloc que le programme par
complet.

Paramètres
Il est courant d'avoir besoin de données pour effectuer une opération. Regardez la fonctionimprimer
par exemple, la tâche de cette fonction est d'écrire n'importe quoi dans la console n'est-ce pas ? -C'est ça.

Pour permettre que cela soit possible, la fonctionimprimerdoit recevoir un paramètre. Non
Dans le cas de la fonction print, le paramètre est le texte qui sera écrit, mais les paramètres peuvent être

utilisés pour des tâches différentes.

Créons une fonction qui élève n'importe quel nombre au carré !

defelevar_au_carré(nombre):
imprimer(numero * numero)

45
Modularisation du code avec des fonctions

Il suffit de mettre le paramètre entre les parenthèses dans la définition de la fonction ! Comme déjà
nous avons utilisé plusieurs fois la fonctionimprimervous devez imaginer comment nous avons passé un nombre
pour cette fonction, n'est-ce pas ?

éléver_au_carré(9)

Il est intéressant de noter que nous pouvons également passer des variables et des expressions dans le paramètre,

vois ça :

élever_au_carré(9)
élever_au_carré(4+5)
neuf
élever_au_carré(neuf)

Dans tous les cas, le résultat de la fonction sera le même, après tout, nous passons le même
paramètre!

Nous allons maintenant créer une fonction qui additionne deux nombres différents ! Oui, vous pouvez créer
multiples paramètres ! Il suffit de les séparer par une virgule, regardez :

defsoma(numero1, numero2):
imprimer(numero1 + numero2)

somme(2,5)# -> 7
soma(3,3)# -> 6
soma(10,5)# -> 15

Légal n'est-ce pas ?

De plus, il n'y a aucune restriction sur le type envoyé en paramètre, voici un autre exemple :

defsaudacao(nom):
print("Bonjour", nom)

Retours
En plus de recevoir des informations (paramètres), les fonctions peuvent également produire des résultats.

Ces résultats s'appellent des retours.

Toutes les fonctions ne produisent pas de résultats, voyez la fonctionsalutationcréée précédemment.


En fait, elle n'a besoin de produire aucun résultat.

46
Modularisation de code avec des fonctions

D'autre part, la fonction n'a pas beaucoup de senssomajuste écrire le résultat de la somme.
La fonction deviendrait beaucoup plus réutilisable en produisant un résultat. De cette façon, le
le développeur pourrait faire ce qu'il voulait avec le résultat, y compris l'écrire.

Chaque fois que nous devons créer un retour, nous utilisons le mot-clé réservéretour. Elle fait
comme la fonction produise un résultat, tout comme une expression.

Refactorisons la fonctionsoma:

defsoma(numero1, numero2):
retournernumero1 + numero2

D'accord, mais comment obtenir le résultat de cette fonction ? -Simple !

Il suffit de penser que la fonction commence à se comporter comme une expression, donc nous pouvons
réaliser des attributions, des additions et toute autre opération que nous pourrions faire avec une

expression. Voir :

somme(1,2)
imprimer(resultado)# -> 3

somme(2,2) * 3
print(resultado)# -> 12

somme(5,5) - 2*5
imprimer(résultat)# -> 0

print(soma(3,7))# -> 10

Le mot réservéretournerforce l'interruption de la fonction pour que le résultat soit


retourné, donc il est assez courant que cette commande soit à la fin de la fonction. Malgré
Le fait qu'il n'y ait aucune obligation n'est pas une bonne pratique d'interrompre le code avec
umretourner.

Regardez cet exemple :

defexemple(valeur):
numero = valeur * 2
si numéro > 10 :
returnnumero

valor = valor + 5
retourner valeur

Dans cet exemple, si la variablenumérosi supérieur à 10 la fonction sera interrompue.


Sinon, la valeur de la variable sera renvoyéevaleursomado à 5.

47
Modularisation du code avec des fonctions

Il est important que vous compreniez que ce code n'est pas nécessairement incorrect, mais
on crée une complexité qui n'a pas besoin d'exister, nous allons maintenir la fonctionnalité et
réécris-le pour n'avoir qu'une instruction de retour, vois :

defexemple(valeur):
Aucun
numero = valor * 2

si numero >10 :
nombre
sinon :
valeur +5

retourner le résultat

De cette manière, nous centralisons la règle dans la variablerésultat, la ramenant toujours,


indépendamment de la valeur qui lui a été attribuée.

En Python, nous pouvons raccourcir cette fonction un peu plus en utilisant la déviation conditionnelle.

ternaire

defexemple(valeur):
numero = valeur *2
retournernumeroifnumero >10 else valeur +5

Maintenant, nous avons un code beaucoup plus court et simple !

Avec cela, nous avons couvert tous les concepts impliqués dans la création d'une fonction!

Allons pratiquer
Faites un programme qui écrit "Ma première fonction", cette écriture doit être
réalisée à partir de l'appel d'une fonction.

2. Faites un programme qui demande le nom de l'utilisateur et l'âge de l'utilisateur, après cela
{nome} a {idade} ans.
une fonction.

3. Faites un programme qui demande deux nombres à l'utilisateur et affiche leur multiplication.
La multiplication doit être calculée dans une fonction.

4. Faites un programme qui demande à l'utilisateur trois nombres différents et affiche le double de
plus grand nombre. Pour ce faire, séparez votre code en deux fonctions différentes : Une
fonction pour retourner le plus grand des trois nombres et une autre fonction pour doubler le nombre.

48
Modularisation du code avec des fonctions

5. Créez un programme qui initialise une liste vide, puis demande 5 noms.
différents pour l'utilisateur (utilisez une boucle de répétition). Chaque nom saisi doit être
ajouté à la liste et enfin, tous les noms doivent être écrits dans la console. Utilisez une
fonction pour demander et retourner le nom saisi, une fonction pour ajouter le nom à
liste (passant le nom et la liste en paramètre) et une autre fonction pour écrire tous les
noms dans la console.

Attention

Il est fortement recommandé que vous essayiez de faire les exercices avant de voir les
réponses. Vous pouvez trouver les réponsesici.

49
Expressions Lambda

Chapitre 10 - Expressions Lambda


Ceci est le dernier chapitre pour l'introduction à la programmation utilisant Python, nous allons clôturer le
apprentissage avec un type différent de fonction : les expressions lambda !

Pour comprendre ce post, il est essentiel que vous ayez auparavant compris le sujet du
fonctionnalités.

Toutes les caractéristiques d'une fonction lambda sont très similaires à celles des fonctions
comuns que déjà vus, à l'exception de deux choses : elles n'ont pas de définition en
code, c'est-à-dire, sont déclarées comme des variables et ne possèdent pas un défpropre ; et elles sont
fonctions de une ligne, qui fonctionnent comme s'il y avait l'instructionretouravant de
commande.

defsoma(numero1, numero2):
retourner numero1 + numero2

La fonction ci-dessus est une fonction de somme normale, étant une fonction d'une ligne nous pouvons
transformez-la en une fonction lambda, ou en une expression lambda. Pour cela, utilisez le
comandolambdaconforme code :

lambdanumero1, numero2: numero1 + numero2

Notez que la syntaxe est légèrement différente, nous utilisons le mot réservélambdapour
déclarer le début de l'expression, après cela, nous insérons les paramètres séparés par
virgule. Enfin, nous plaçons le corps de l'expression.

En rappelant que le corps de l'expression doit toujours contenir une seule ligne de commande et
elle fonctionne comme s'il y avait une instruction deretourneravant cette ligne.

Ainsi, les deux fonctions de somme sont des définitions différentes pour la même fonction :

imprimer(soma(1,2)) 3
imprimer(soma_lambda(1,2)) # -> 3

Nous pouvons également avoir une fonction lambda sans paramètres, le cas échéant, il suffit de
nous omettrons normalement la déclaration de paramètres :

lambda: 3 + 2

50
Expressions Lambda

En pratique, cette fonction n'a pas tellement de sens, mais c'est un bon exemple pour comprendre le
que se passe-t-il. Dans ce cas, nous avons créé une fonction appelée obtenir_valeurque
elle retourne toujours le numéro cinq. La définition standard de cette fonction serait la suivante
manière

defobter_valeur()
retourne3+2

Percevez que l'un des points forts des expressions lambda est leur synthèse, elles sont une forme
rapide à définir des fonctions simples.

Mais c'est pour les fonctions sans retour ? - Aucun problème !

lambda: print('Bonjour le monde')


Olá mundo

Voyez que nous utilisons une fonction lambda qui n'a ni retour ni paramètres !
Mais tout fonctionnera correctement.

Peut-être que cela vous semblera un peu étrange, après tout, j'avais écrit auparavant que les expressions lambda
nous fonctionnons comme s'il y avait unretourneravant l'instruction et la fonctionimprimerne génère pas

retours. Alors comment il comprend?

En pratique, vous pouvez obtenir la valeur de retour de la fonctionimprimer, mais ce sera une valeur de
typeAucun! Donc, la même syntaxe de lambda continue de fonctionner normalement.

Utilisation
D'accord, je comprends le concept, mais à quoi cela sert-il ? Maintenant, vient la partie la plus compliquée.

dans cette leçon, il existe des fonctions qui peuvent recevoir d'autres fonctions en paramètre !

Oui, vous n'avez pas mal lu, une fonction reçoit comme paramètre une autre fonction. Ce sont les
exemples où les expressions lambda sont les plus utilisées.

Faisons un exercice en utilisant les concepts que nous savons déjà et ensuite le refaire.
en utilisant des expressions lambda !

Déclarons une liste avec divers nombres différents, puis nous en ferons une copie.
seu que les nombres pairs pour une deuxième liste et nous les afficherons dans la console. Tranquille,

d'accord ?

51
Expressions Lambda

numeros = [0,2,3,4,5,7]
pares = []
fornumeroinnumeros
si numero % 2 == 0 :

[Link](numero)

# Affiche les numéros


pourparlers
imprimer(par)

Nous utilisons une boucle de répétition pour filtrer la liste qui contient tous les
nombres pour une nouvelle liste contenant uniquement les nombres pairs.

Dans cette boucle de répétition, nous obtenons les nombres un par un, vérifions s'ils sont pairs ou non et
si c'est le cas, nous l'ajoutons à la liste des paires.

Ce comportement de filtrage d'une liste est assez courant, c'est pourquoi la langue
offre une fonctionnalité pour simplifier cette mise en œuvre. Cette fonctionnalité est la fonctionfiltre!

Cette fonction prend deux paramètres : l'un d'eux est la liste qui va être filtrée, bien sûr, et l'autre
le paramètre est la fonction qui réalise le filtre de la liste !

Cette fonction de filtre ne doit posséder qu'un seul paramètre (du même type que chaque élément)
da liste) et doit retourner unbooléen.

De cette manière, toutes les listes, quel que soit leur type, peuvent utiliser la même [Link].

Dans notre cas, nous avons une liste de nombres, donc notre fonction doit recevoir un
numéro et retourner une valeur logique, en pratique, c'est la même comparaison que nous avons déjà faite dans
implémentation précédente :numéro % 2 == 0, voyez comment nous faisons la même chose en utilisant le
filtrer

numeros = [0,2,3,4,5,7]
pairs = filter(lambda valeur: valeur % 2 == 0, numeros)

pourparlers
imprimer(par)

Nous transformons toute notre boucle de répétition avec un déviation conditionnelle en une seule.
instruction ! C'est cool, non ?

Ofiltrece n'est pas la seule fonction capable d'effectuer ce type d'opération, mais c'est un bon
exemple pour vous faire comprendre le pouvoir des expressions lambda !

Allons Pratiquer

52
Expressions Lambda

1. Faites un programme qui écrit "Ma première fonction", cette écriture doit être
réalisée à partir de l'appel d'une fonction qui a été déclarée comme une expression
lambda.

2. Faire un programme qui demande le nom de l'utilisateur et l'âge de l'utilisateur, après cela
{nome} a {idade} ans.
une fonction lambda.

3. Faites un programme qui demande deux nombres à l'utilisateur et affiche leur multiplication.
La multiplication doit être calculée dans une fonction lambda.

4. Faites un programme qui demande cinq nombres à l'utilisateur, puis affiche seulement
les nombres supérieurs à 10. Utilisez la fonctionfiltrepour faire cela.

Faites un programme qui demande dix numéros à l'utilisateur, puis affiche tous
nombres pairs et seulement alors affichez tous les nombres impairs. Utilisez la fonctionfiltrer

pour faire cela.

Attention

Il est fortement recommandé d'essayer de faire les exercices avant de voir les
réponses. Vous pouvez trouver les réponsesici.

53
Conclusion

Conclusion
L'objectif de ce livre est d'être un tremplin pour le monde de la programmation, il existe
beaucoup de sujets qui n'ont pas été abordés ici, tels que : la programmation orientée objet, la programmation

fonctionnel, programmation web, intelligence artificielle, et ainsi de suite.

Les possibilités sont immenses et tout est plus proche de vous maintenant.

Ne considérez pas ce livre comme la seule source d'étude de quelque manière que ce soit, il existe plusieurs

matériaux disponibles en ligne.

J'espère que cela a été une bonne source d'étude et n'hésitez pas à m'envoyer quoi que ce soit.
type de feedback!

54
Résolution des exercices

Résolution des exercices

Chapitre 2 - Commencer avec Python


1. Faites un algorithme qui demande le nom de l'utilisateur et ensuite écrit le nom de la personne.
console.

input("Quel est votre nom ? ")


imprimer(nom)

2. Faites un algorithme qui demande à l'utilisateur quel âge il a, puis écrivez


Vraipas de console, s'il a déjà atteint la majorité (18 ans), sinon
écrireFaux.

Quel âge avez-vous?


âge >= 18
imprimer(maioridade)

3. Faites un algorithme qui demande un numéro à l'utilisateur, puis écrivezVrainon


console, si le nombre a deux chiffres (soit entre 10 et 99), sinon écrivez
Faux.

numéro
nombre >=10 et nombre <=99
imprimer(dois_digitos)

Chapitre 3 - Dérivations conditionnelles, faisant votre


programme de prise de décision!

1. Faites un algorithme qui demande 3 notes à l'utilisateur, calcule la moyenne et indique si le


L'élève a été approuvé ou rejeté (la note doit être supérieure ou égale à sept pour que l'élève soit)
approuvé).

55
Résolution des exercices

entrez la première note :


Entrez la deuxième note :
nota3 = float(input("Entrez la troisième note : "))
( note1 + note2 + note3 ) / 3

si media >=7 :
Approuvé
sinon :
Reprové

2. Faites un algorithme qui demande l'année de naissance de l'utilisateur, puis faites le


programme décrire si l'utilisateur aura ou a déjà 18 ans cette année.

int (input ("Entrez l'année de votre naissance : "))


2018 - année_de_naissance

si l'âge == 18 :
L'utilisateur aura 18 ans cette année.

3. Faites un programme qui demande à l'utilisateur son âge, puis affiche la classification
tranche d'âge selon les tranches de valeurs :

Enfant de 0 à 11 ans;
Adolescent de 12 à 18 ans;
Jeune de 19 à 24 ans;
Adulte de 25 à 40 ans;
Middle Age de 41 à 60 ans;
Personne âgée de plus de 60 ans.

56
Desvios conditionnels, faisant prendre des décisions à votre programme

test

si texto !="":
print("Le texte n'est pas vide")

iftexto
print("Le texte n'est pas vide")

Une autre chose que nous pouvons explorer normalement est la question des multiples conditions.
Nous pouvons utiliser les opérateurspas, eteoupour créer une condition de la même
forme que nous utilisons pour l'attribution d'une valeur logique.

nota1 =7
nota2 =10

si nota1 > 5 et nota2 >= 7 :


Approuvé

deu_sol =True

if notdeu_sol:
print("Il a plu")

Enfin, il existe une autre façon de décrire la commandesi.

Cette autre forme est connue sous le nom de condition ternaire. Elle est principalement utilisée pour
des conditions courtes et permet une syntaxe plus agile, généralement sur une seule ligne.

L'ordre des choses change un peu, mais cela ressemble encore beaucoup à un langage naturel.
Regardez cette phrase :

Il a été approuvé s'il a obtenu 7 ou plus, sinon il a été rejeté.

Traduisons cela en Python avec la commande que nous connaissons déjà :

nota =6
si nota >=7 :
Approuvé
sinon :
Reprovado

Maintenant, voyons comment cette même opération se présente en utilisant une condition ternaire.

nota =6
imprimer("Aprové" si nota >= 7 sinon "Rejeté" z)

18
Résolution des exercices

3. Faites un programme qui demande l'âge de l'utilisateur, vérifie si le texte saisi est uniquement
contient des chiffres. Si cela contient uniquement des chiffres, affichez le message : "Vous avez {âge

vous avez entré une âge invalide.

[Link]():
Vous avez {idade} ans.
sinon :
Vous avez saisi un âge invalide

4. Faites un programme qui demande le nom complet de l'utilisateur et n'affiche que son prénom.
deuxième nom/premier surnom.

Entrez votre nom complet :


nome_completo.split(" ")
print(nome_completo_dividido[1])

Chapitre 5 - Opérations sur les Listes


1. Faites un programme qui initialise une liste avec le nom des membres de votre famille.

familia = ["Gabriel","Anderson","Luluzinha","Mariazinha","Joãozinho"]
imprimer(famille)

2. Faites un programme qui initialise une liste vide et demande à l'utilisateur 3 noms de
villes, une à la fois, chaque fois que l'utilisateur saisit un nom, le programme doit inclure cela
nom dans la liste des villes.

cidades = []

Entrez le nom de la première ville :


[Link](cidade)

[Link](input("Entrez le nom de la deuxième ville : "))


[Link](input("Entrez le nom de la troisième ville : "))
imprimer(cités)

3. Faites un programme qui initialise une liste avec plusieurs nombres différents, après cela,
Demandez à l'utilisateur un numéro, vérifiez si le numéro est ou non dans la liste et affichez un
message notifiant l'utilisateur du résultat.

58
Résolution des exercices

numeros = [1,3,6,10,5,23]
Entrez un numéro :
si numero_digitado dans numeros :
print(f"Le nombre {numero_digitado} est dans la liste")
sinon :
print(f"Le numéro {numero_digitado} n'est pas dans la liste")

4. Faites un programme qui initialise une liste vide et la remplit avec 5 noms différents
saisis par l'utilisateur, après cela demandez un numéro de 0 à 4 et supprimez l'élément
de cette position.

nomes = []
[Link](input("Entrez le premier nom : "))
[Link](input("Entrez le deuxième nom : "))
[Link](input("Entrez le troisième nom : "))
[Link](input("Entrez le quatrième nom : "))
[Link](input("Entrez le cinquième nom : "))

Choisissez une position de 0 (zéro) à quatre pour exclure


uir de la lista :
delnomes[posicao_pour_exclure]
imprimer(noms)

Chapitre 6 - Liens de répétition - Partie 1


1. Créez un programme qui initialise une liste de courses avec 5 articles différents et affiche.
tout en utilisant une boucle de répétition.

itens_compra = ["Arroz","Leite","Ovos","Feijão","Tomate"]
foriteminitens_compra
imprimer(item)

2. Faites un programme qui initialise et crée une liste avec les valeurs de 1 à 10 et ensuite
n'affiche que les nombres pairs.

pour numéros dans la plage (1,11):

si numéro % 2 == 0 :

imprimer(numero)

3. Faites un programme qui affiche tous les nombres impairs entre 50 et 100 en utilisant la plage.

fornumeroinrange(51,101,2):
imprimer(numero)

59
Résolution des exercices

4. Créez un programme qui initialise une liste vide et demande à l'utilisateur 10 nombres
différents, un à la fois. Si le nombre saisi est pair, ajoutez un à sa valeur.
Après cela, affichez les 10 chiffres saisis.

numeros = []
pour nombre dans la plage(10) :

item_digitado = int ( input("Entrez une valeur :") )


si(item_digitado %2==0):
item_digitado +=1
[Link](item_digitado)

pournuméroennombre
imprimer(numero)

5. Faites un programme qui affiche les tables de multiplication de 1 à 10 au format : "2 x 3 = 6", (utilisez deux

commandespour)

pour l'opérateur dans la plage (1,11) :

pouroperateur_2dansplage(1,11):
opérateur * opérateur_2
imprimer(f"{operador} X {operador_2} = {resultado}")

Chapitre 7 - Liens de Répétition - Partie 2


1. Faites un programme qui initialise une liste de courses avec 5 articles différents et l'affiche.
tout en utilisant une boucle de répétitiontandis que.

itens_compra = ["Arroz","Leite","Ovos","Feijão","Tomate"]
posicao =0
tant que posicao < len(itens_compra):
print(itens_compra[posicao])
posicao+=1

2. Faites un programme qui initialise une liste avec les valeurs de 1 à 10 et ensuite les affiche.
seulement les nombres pairs utilisantpendant.

numeros = [1,2,3,4,5,6,7,8,9,10]
posicao =0
tandisque posicao < len(numeros):
numéro
si numero %2==0 :
imprimer(numero)
position+=1

60
Résolution des exercices

3. Faites un programme qui initialise une liste vide, demande à l'utilisateur 10 nombres impairs
différents, un par un. Si le numéro saisi est pair, demandez à nouveau un numéro, jusqu'à
que la valeur soit un nombre impair. Ensuite, affichez les 10 nombres saisis.

numeros = []
numero =0
quantidade_sobrando =10
tantque quantite_sobrant > 0 :
numero =0
whilenumero %2==0:
nombre = int( input("Entrez un nombre impair :") )

[Link](numero)
quantité_restante -=1

posicao =0

tandis que la position < len(numeros):

imprimer(numeros[posicao])
positionne +=1

4. Faites un programme qui affiche un menu permettant à l'utilisateur de sélectionner l'une des trois options :

1 - Bonjour le monde

Je programme en Python
3 - Boucles de répétition

Le programme doit demander à l'utilisateur l'une des 3 options, si l'utilisateur saisit une valeur
différent des options (1, 2 ou 3), le programme doit présenter à nouveau le menu de
options jusqu'à ce qu'une d'entre elles soit choisie. Enfin, le programme doit afficher un message
différent pour chaque option.

opcao =0
opcoes = [1,2,3]
tandis que opcaonot dans opcoes :

Sélectionnez l'une des options ci-dessous :


print("1 - Bonjour le monde ")
print("2 - Je programme en Python ")
3 - Laços de répétition
option = int(input("Sélectionnez l'option : "))

siopção
print("Bonjour le monde!")
elifopcao ==2:
Je suis déjà dans ma sixième leçon de Python !
sinon :
Dans cette leçon, j'étudie la boucle de répétition While

61
Résolution des exercices

5. Retirer l'instructionpausee la instructioncontinuerdu lien de répétition ci-dessous :

numeros = [1,2,3,4,5,6,7,8,9,10]
posicao =0
tandis que posicao < len(numeros):
position +=1
ifposicao ==3:
continuer
elifposicao == 6:
pause
print(numeros[posicao-1])

numeros = [1,2,3,4,5,6,7,8,9,10]
posicao =0
tandis que position <5 :

si position !=2:
print(numeros[posicao])
position += 1

Chapitre 8 - Utilisez des dictionnaires !

1. Faites un programme qui crée un dictionnaire pour définir un produit, contenant son
description

produit
Eau
"preço":2.00
}

2. Faites un programme qui initialise une liste de courses avec 5 articles différents, où chaque
item est un dictionnaire contenant la description et le prix du produit. Après cela, parcourez la liste
et affichez les informations de chaque élément.

lista_compras = [
Eau
Lait
Viande
Pizza
Chocolat
]

foritem_comprainlista_compras
print("Produit:", item_compra["description"], "pour", str(item_compra["prix"]), "réal")
est.)

62
Résolution des exercices

Utilisez la liste de courses du programme précédent pour identifier quel est le produit le moins cher
Et quel est le produit le plus cher de la liste de courses.

mais_barato =None
Aucun
indice =0
tandi<indice < len(lista_compras):
liste_achats[indice]
siindice ==0:
article_achat
article_achat
sinon :
ifitem_compra["prix"] > mais_caro["prix"]:
article_achat

ifitem_compra["prix"] < mais_barato["prix"]:


article_achat

indice = indice + 1

Produit le plus cher :


)
print("Produit le moins cher : ", moins_cher["description"], "pour", moins_cher["prix"])
réal

4. Faites un programme qui a une liste de 5 personnes, où chaque personne a ses


nom et prénom stockés dans un dictionnaire, puis affichez tous les noms et
noms de famille. Pour compliquer un peu les choses, simulons que ces données ont été
obtenus sur le web et avec cela nous avons reçu quelques incohérences. Deux des cinq personnes
possèdent le dictionnaire où les clés sont en majuscules et les trois autres en minuscules.

pessoas = [
Joãozinho
Mariazinha
Gabriel
Joana
Everton
]

pourpersonnesdansdespersonnes

nome = [Link]("nome", None)


[Link]("sobrenome", None)
si [Link]:
[Link]("NOME", None)
si pas de nom de famille :

[Link]("SOBRENOME", None)

print(nom, prénom)

63
Résolution des exercices

Chapitre 9 - Modularisation du code avec


Fonctions !
1. Faites un programme qui écrit "Ma première fonction", cette écriture doit être réalisée
à partir de l'appel d'une fonction.

defma_fonction():
print("Ma première fonction")

ma_fonction()

2. Faites un programme qui demande le nom de l'utilisateur et l'âge de l'utilisateur, ensuite


exiba la message{nome} a {idade} ans.. Ce message doit être écrit en
une fonction.

décrire_nom_age(nom, age):
print(nome, "a", idade, "ans.")

str(input("Entrez votre nom : " ))


âge_saisit = int(input("Entrez votre âge : "))

écrire_nom_age(nom_saisi, age_saisi)

3. Faites un programme qui demande deux nombres à l'utilisateur et affiche leur multiplication. A
la multiplication doit être calculée dans une fonction.

defmultiplier(nombre1, nombre2):
returnnumero1 * numero2

numero = int(input("Entrez le premier numéro : "))


numero2 = int(input("Entrez le deuxième nombre : "))
multiplicar(numero, numero2)
imprimer(résultat)

4. Faites un programme qui demande à l'utilisateur trois nombres différents et affiche le double du
plus grand nombre. Pour cela, séparez votre code en deux fonctions différentes : une fonction
pour retourner le plus grand des trois nombres et une autre fonction pour doubler le nombre.

64
Résolution des exercices

defobter_maior(numéro, numéro2, numéro3):


None
si numero > numero2 et numero > numero3 :
numéro
elifnumero2 > numeroandnumero2 > numero3:
nombre2
sinon :
nombre3
retourmaior

defdobrar(numero):
returnnumero *2

numéro = int(input("Entrez le premier numéro : "))


numero2 = int(input("Entrez le deuxième nombre : "))
Entrez le troisième numéro :

maior = obtenir_maior(nombre,nombre2,nombre3)
imprimer(dobrar(maior))

5. Faites un programme qui initialise une liste vide, puis demande 5 noms différents.
au utilisateur (utilisez une boucle de répétition). Chaque nom saisi doit être ajouté à la liste et par
fim, tous les noms doivent être écrits dans la console. Utilisez une fonction pour demander et
retourner le nom saisi, une fonction pour ajouter le nom à la liste (en passant le nom et le
liste par paramètre) et une autre fonction pour écrire tous les noms dans la console.

defsoliciter_nom():
returnstr ( input("Entrez un nom : ") )

def ajouter_nom_a_la_liste(liste, nom):


[Link](nome)

décrire_noms(liste):
fornomeinlista
print(nom)

nomes = []
pour compteur dans la plage(0,5):

nom = demander_nom()
ajouter_nom_dans_la_liste(noms, nom)

écrire_noms

Chapitre 10 - Fonctions Lambda

65
Résolution des exercices

1. Faites un programme qui écrit "Ma première fonction", cette écriture doit être réalisée
à partir de l'appel d'une fonction qui a été déclarée comme une expression lambda.

ma_fonction = lambda: print("Ma première fonction")


ma_fonction()

2. Faites un programme qui demande le nom de l'utilisateur et l'âge de l'utilisateur, après cela
{nome} a {idade} ans.
une fonction lambda.

lambda nom, âge: print(nom, "possède", âge, "ans.")


Entrez votre nom :
int(input("Entrez votre âge : "))
écrire_nom_age(nom_saisi, age_saisi)

3. Faites un programme qui demande deux nombres à l'utilisateur et affiche leur multiplication. A
la multiplication doit être calculée dans une fonction lambda.

multiplicar =lambdanumero1, numero2: numero1 * numero2

int(input("Entrez le premier nombre : "))


numero2 = int(input("Entrez le deuxième nombre : "))
resultat = multiplier(nombre, nombre2)
imprimer(résultat)

4. Faites un programme qui demande cinq nombres à l'utilisateur, puis affiche uniquement les
nombres supérieurs à 10. Utilisez la fonctionfiltrepour faire cela.

numeros = []
pour indice dans la plage (1,5):

numero = int(input("Entrez un numéro : "))


[Link](numero)

maiores = filter(lambda numero: numero > 10, numeros)


formaiorinmaiores
imprimer(maior)

5. Faites un programme qui demande dix nombres à l'utilisateur, puis affiche tous
nombres pairs et seulement alors affichez tous les nombres impairs. Utilisez la fonctionfiltrerpour
faire ça.

66
Résolution des exercices

décrire_array(array):
pourvaleurdansletableau

imprimer(valeur)

numeros = []
pour i dans la plage(1,10):
entier = int(input("Entrez un nombre : "))
[Link](numero)

pairs = filter(lambda numero: numero % 2 == 0, numeros)


filtrer(lambdanumero: numero %2==1, numeros)
écrire_tableau(paires)
écrire_tableau(impaire)

67

Vous aimerez peut-être aussi