Les bases
Afficher seulement « Hello World » n'est pas assez, n'est-ce pas ? Vous voulez faire plus que cela - vous voulez prendre des choses en entrée, les manipuler et en sortir quelque chose. Nous pouvons réussir cela avec Python en utilisant des constantes et des variables.
Commentaires
Les commentaires sont un texte quelconque à droite du symbole #
et sont principalement utiles en tant que notes pour le lecteur du programme. Par exemple:
ou:
Utilisez autant de commentaires utiles que possible dans votre programme pour:
expliquer vos hypothèses
expliquer les décisions importantes
expliquer les détails importants
expliquer les problèmes que vous essayez de résoudre
expliquer les problèmes que vous essayez de surmonter dans votre programme, etc.
Le code vous dit comment, les commentaires devraient vous dire pourquoi.
Ceci est utile pour les lecteurs de votre programme afin qu’ils puissent facilement comprendre ce qu’il fait. Rappelez-vous que cette personne peut être vous-même six mois plus tard!
Constantes littérales
Un exemple d'une constante littérale est un nombre comme 5
, 1.23
, 9.25e-3
ou une chaîne de caractères comme 'Ceci est une chaîne'
ou "C'est une chaîne!"
.
Cela s'appelle un littéral parce que c'est littéral - vous pouvez utiliser la valeur littéralement. Le nombre 2
représente toujours lui-même et rien d'autre - c'est une constante parce que sa valeur ne peut être changée. Donc, on se réfère à toutes ces valeurs en tant que constantes littérales.
Nombres
Les nombres dans Python sont principalement divisés en deux types - entiers, nombres en virgule flottante.
Un exemple d'un entier est
2
qui est juste un nombre entier.Des exemples de nombres en virgule flottante (ou floats en abrégé) sont
3.23
et52.3E-4
. La notationE
indique des puissances de 10. Dans ce cas,52.3E-4
signifie52.3 * 10^-4
.
Note pour les programmeurs expérimentés
Il n'y a pas de type « long int » à part. Le type entier par défaut peut être une valeur de n'importe quelle longueur.
Chaînes de caractères
Une chaîne de caractères est une suite de caractères. Les chaînes de caractères sont juste un groupe de mots.
Vous utiliserez des chaînes de caractères dans pratiquement chaque programme que vous écrirez, donc soyez attentifs à ce qui suit.
Guillemets simples
Vous pouvez définir des chaînes de caractères en utilisant des guillemets simples comme 'Je suis entre guillemets'
.
Tous les whitespaces, par exemple les espaces et des tabulations, sont gardés tels quels.
Doubles guillemets
Les chaînes de caractères entre doubles guillemets fonctionnent exactement de la même manière qu'avec les guillemets simples. Un exemple est "Comment tu t'appelles?"
Triples guillemets
Vous pouvez déclarer les chaînes de caractères sur plusieurs lignes en utilisant des triples guillemets - ("""
ou '''
). Vous pouvez utiliser des guillemets simples et des doubles guillemets librement à l'intérieur des triples guillemets. Un exemple est:
Les chaînes de caractères sont immuables
Cela signifie que quand vous avez créé une chaîne, vous ne pouvez pas la changer. Bien que cela semble être une mauvaise chose, ce n'est pas le cas. Nous verrons pourquoi cela n'est pas une limitation dans les différents programmes à venir.
Note pour les programmeurs C/C++
Il n'y a pas de type de données
char
dans Python. Cela n’est pas vraiment nécessaire, et sûr qu'il ne vous manquera pas.
Note pour les programmeurs Perl/PHP
Rappelez-vous que les chaînes entre guillemets simples et les chaînes à guillemets doubles sont équivalentes. Elles ne diffèrent en aucune manière.
La méthode format
Nous avons parfois besoin de fabriquer des chaînes de caractères à partir d'autres informations. Dans ce cas la méthode format()
est utile.
Save the following lines as a file str_format.py
:
Résultat:
Comment cela marche
Une chaîne de caractères peut utiliser certaines spécifications et par la suite, la méthode ''format'' peut être appelée pour remplacer ces spécifications avec les arguments correspondants à la méthode format
.
Observez le premier usage dans lequel nous utilisons {0}
et cela correspond à la variable name
qui est le premier argument de la méthode format. De la même manière, la deuxième spécification est {1}
qui correspond à age
qui est le deuxième argument de la méthode format.
Notez que nous pouvons arriver au même résultat en utilisant la concaténation de chaînes de caractères
mais notez comme c'est plus laid et sujet à erreur. Ensuite, la conversion en chaîne de caractères serait faite automatiquement par la méthode format
au lieu de la conversion explicite ici. Enfin, en utilisant la méthode format
, nous pouvons changer le message sans avoir à s'occuper des variables utilisées et vice-versa.
Notez également que les numéros sont facultatifs, vous auriez donc pu écrire:
qui donnera exactement le même résultat que le programme précédent.
Nous pouvons aussi nommer les paramètres:
qui donnera également le même résultat que le programme précédent.
Python 3.6 a introduit un moyen plus court de nommer les paramètres, appelé « f-strings »:
qui donnera encore le même résultat que le programme précédent.
La méthode format
de Python substitue chaque valeur d'argument. Il peut y avoir des spécifications détaillées comme :
donne :
Puisque nous discutons formatage, notez que print
se termine toujours par un caractère invisible de « nouvelle ligne » (), de sorte que des appels répétés à print
s’imprimeront sur des lignes distinctes. Pour empêcher l'impression de ce caractère de nouvelle ligne, vous pouvez spécifier vouloir finir avec une chaîne vide:
La sortie est:
Ou vous pouvez terminer avec un espace:
La sortie est:
Caractère d'échappement et de contrôle
Supposons, vous voulez avoir une chaîne de caractères contenant un simple guillemet ('
), comment faire? Par exemple, la chaîne de caractères Comment t'appelles-tu?
. Vous ne pouvez pas déclarer 'Comment t'appelles-tu?'
parce que Python sera perdu, où commence et se termine la chaîne de caractères? Donc, il vous faut indiquer que ce simple guillemet n'indique pas la fin de la chaîne. Cela peut être fait avec l'aide de ce qu'on appelle un caractère d'échappement. Vous indiquez le simple guillemet comme \'
- notez le backslash (barre oblique inversée). Maintenant, vous pouvez indiquer la chaîne de caractères comme 'Comment t\'appelles-tu?'
.
Une autre façon de faire serait "Comment t'appelles-tu?"
c'est à dire utiliser des double guillemets. De la même manière, vous devez utiliser un caractère d'échappement pour utiliser une double guillemet elle-même dans une chaîne de caractères définie par des double guillemets. Pour indiquer le backslash, vous devez utiliser le backslash sur lui-même \\
.
Comment faire pour indiquer une chaîne de caractère sur deux lignes? Une façon est d'utiliser une chaîne de caractère entre des triple guillemets comme montré précédemment ou vous pouvez utiliser un caractère de contrôle comme le caractère pour indiquer le début d'une nouvelle ligne. Un exemple est:
Un autre caractère de contrôle utile à connaître est la tabulation - . Il y a beaucoup d'autres caractère de contrôle mais j'ai seulement mentionné les plus utiles ici.
Une chose à noter est que, dans une chaîne de caractères, un backslash unique à la fin de la ligne indique que la chaîne de caractères continue à la ligne suivante, mais une nouvelle ligne n'est pas ajoutée, par exemple:
est équivalent à
Chaînes « brutes »
Si vous devez spécifier des chaînes pour lesquelles aucun traitement spécial, tel que les caractère d'échappement et de contrôle, ne sont traités, vous devez spécifier une chaîne brute (raw) en préfixant r
ou R
à la chaîne. Un exemple est:
Remarque pour les utilisateurs d'expressions régulières
Utilisez toujours des chaînes brutes lorsque vous utilisez des expressions régulières. Sinon, vous aurez besoin de beaucoup de caractères d'échappements. Par exemple, les références arrières peuvent être appelées
'\\1'
our'\1'
.
Variables
Utiliser seulement des constantes littérales peut rapidement devenir ennuyeux - nous avons besoin de solutions pour ranger n'importe quelles informations et les manipuler. C'est là que les variables interviennent. Les variables sont exactement ce que leur nom implique - leur valeur peut changer, vous pouvez stocker n'importe quoi avec une variable. Les variables sont juste des endroits où vous rangez de l'information dans la mémoire de l'ordinateur. Contrairement aux constantes littérales, vous avez besoin d'une méthode pour accéder à ces variables et donc vous leur donnez des noms.
Nommage d'identifiants
Les variables sont des exemples d'identifiants. Les identifiants sont des noms donnés pour identifier quelque chose. Vous devez respecter quelques règles pour donner un nom aux identifiants:
Le premier caractère de l'identifier doit être une lettre de l'alphabet (majuscule ASCII ou minuscule ASCII ou caractère Unicode) ou un underscore ('_').
Le reste du nom de l'identifier peut être composé de lettres (majuscules ASCII ou minuscules ASCII ou caractère Unicode), underscores ('_') ou chiffres (0-9).
Les noms des Identifiers sont sensibles à la casse. Par exemple,
myname
etmyName
ne sont pas identiques. Notez la minusculen
dans le premier cas et la majusculeN
ensuite.Des exemples de noms d'identifiers valides sont
i
,name_2_3
. Des exemples invalides sont2things
,this is spaced out
,my-name
, et>a1b2_c3
.
Types de données
Les variables peuvent contenir des valeurs de différents types appelés types de données. Les types de base sont les nombres et les chaînes de caractères, dont nous avons déjà parlé. Dans les chapitres suivants, nous verrons comment créer nos propres types de données en utilisant les classes.
Objets
Rappelez-vous, Python fait référence à tout ce qui est utilisé dans un programme en tant que objet. Cela est compris dans le sens générique. Au lieu de dire « le quelque chose », nous disons « l'objet ».
Note pour les utilisateurs de la Programmation Orientée Objet
Python est fortement orientée objet, dans le sens que tout est un objet, en incluant les nombres, chaînes de caractères et fonctions.
Nous allons voir comment utiliser des variables avec des constantes littérales. Enregistrez l'exemple suivant et lancez le programme.
Comment écrire des programmes Python
Désormais, la procédure standard pour enregistrer et exécuter un programme Python est la suivante:
Pour PyCharm
Ouvrez PyCharm.
Créez un nouveau fichier avec le nom de fichier mentionné.
Tapez le code du programme donné dans l'exemple.
Cliquez avec le bouton droit et exécutez le fichier actuel.
Note
Si vous devez fournir des arguments de ligne de commande.
Cliquez sur
Run
->Edit Configurations
et tapez les arguments dans la sectionScript parameters:
puis cliquez sur le boutonOK
:
Pour les autres éditeurs
Ouvrez votre éditeur.
Tapez le code du programme donné dans l'exemple.
Enregistrez-le dans un fichier avec le nom de fichier mentionné.
Exécutez l'interprèteur avec la commande
python program.py
pour exécuter le programme.
Un exemple: utiliser des variables et des constantes littérales
Tapez et exécutez le programme suivant:
Résultat:
Comment ça marche
D'abord, nous affectons la valeur littérale constante 5
à la variable i
en utilisant l'opérateur d'affectation (=
). Cette ligne est appelée une instruction parce qu'elle indique qu'une action doit être faite, et dans ce cas, nous connectons la variable nommée i
à la valeur 5
. Ensuite, nous affichons la valeur de i
en utilisant l'instruction print
qui, sans surprise, affiche juste la valeur de la variable à l'écran.
Ensuite nous ajoutons 1
à la valeur stockée dans i
et nous la stockons à nouveau. Nous l'affichons et comme prévu, nous obtenons la valeur 6
.
De la même manière, nous affectons la chaîne littérale à la variable s
et nous l'affichons.
Note pour les programmeurs dans des langages statiques
Les variables sont créées en leur donnant juste une valeur. Il n'y a pas de déclaration ou de définition de type de données.
Lignes physiques et lignes logiques
Une ligne physique est ce que vous voyez quand vous écrivez le programme. Une ligne logique est ce que Python voit comme une seule instruction. Python suppose implicitement que chaque ligne physique correspond à une ligne logique.
Un exemple d'une ligne logique est une instruction comme print('Hello World')
- si c'était une ligne (comme vous la voyez dans un éditeur), alors cela correspondrait aussi à une ligne physique.
Implicitement, Python encourage l'utilisation d'une seule instruction par ligne, ce qui rend le code plus lisible.
Si vous voulez spécifier plus d'une ligne logique sur une seule ligne physique, alors il vous faut l'indiquer avec un point-virgule (;
) qui indique la fin d'une ligne/instruction logique. Par exemple:
est la même chose que
et peut être écrit
ou même
Cependant, je recommande fortement que vous continuiez à écrire une seule ligne logique dans seulement une seule ligne physique. Utilisez plus d'une ligne physique pour une seule ligne logique seulement si la ligne logique est vraiment longue. L'idée est d'éviter le point-virgule autant que possible vu que cela rend le code moins lisible. En fait, je n'ai jamais utilisé ou même vu un point virgule dans un programme Python.
Un exemple d'une ligne logique s'étendant sur plusieurs lignes physiques suit. Cela s'appelle jonction de ligne explicite.
Cela donne l'affichage :
De la même manière,
est la même chose que
Parfois, il y a une supposition implicite quand vous n'avez pas besoin d'utiliser un backslash. C'est le cas quand les lignes logiques utilisent des parenthèses, entre crochets ou accolades. Cela s'appelle jonction de ligne implicite. Vous pouvez voir cela en action quand nous écrirons des programmes utilisant des listes dans les chapitres suivants.
Indentation
Les espaces sont importants dans Python. En fait les espaces au début de la ligne sont importants. Cela s'appelle l'indentation. Les espaces (espaces et tabulations) au début de la ligne logique sont utilisés pour déterminer le niveau d'indentation de la ligne logique, qui est à son tour utilisée pour déterminer le groupement des instructions.
Cela signifie que les intructions qui vont ensemble doivent avoir la même indentation. Chaque jeu d'instructions est appelé un bloc. Nous verrons des exemples de l'importance des blocs dans les chapitres suivants.
Un chose à retenir est qu'une fausse indentation va mener à des erreurs. Par exemple:
A l'exécution, vous obtenez l'erreur suivante :
Notez qu'il y a un espace au début de la deuxième ligne. L'erreur indiquée par Python nous dit que la syntaxe est invalide, c'est-à-dire que le programme n'est pas correctement écrit. Cela vous dit que vous ne pouvez pas commencer des nouveaux blocs n'importe où (à part pour le bloc principal par défaut que vous avez constamment utilisé, bien sûr). Les cas dans lesquels vous pouvez utiliser des nouveaux blocs seront détaillés dans les chapitres suivants comme le chapitre sur le contrôle de flux..
Comment indenter
Utilisez quatre espaces pour indenter. C'est la recommendation officiele du language Python. Les bons éditeurs le feront automatiquement pour vous. Soyez sûr d'utiliser un nombre cohérent d'espaces pour indenter, sinon votre programme ne fonctionnera pas, ou aura des comportements inattendus.
Note pour les programmeurs en langage statique
Python utilisera l'indentation pour les blocs et n'utilisera jamais les accolades. Lancez
from __future__ import braces
pour en savoir plus.
Récapitulatif
Maintenant que nous avons vu les détails essentiels, nous pouvons passer à des choses plus intéressantes comme les instructions de contrôle de flux. Soyez certains d'être à l'aise avec les notions de ce chapitre.
Dernière mise à jour