Vous êtes sur la page 1sur 18

16

Introduction à la programmation avec Python

1
16

2
Popularité des langages de programmation par IEEE

2
16

3
Pourquoi Python?

Python est un langage puissant, à la fois facile à apprendre et riche en


possibilités. Sa syntaxe est simple, concise et efficace. On peut résumer
Python en quatre points forts :

Productivité : produire rapidement du code compréhensible

Qualité : code évolutif et maintenable, Programmation Orientée Objet (POO)

Portabilité : disponibilité de l’interpréteur Python sur de nombreuses plates-


formes

Intégration : capable d’intégrer des composants écrits dans un autre


langage.

3
16

Quelques caractéristiques intéressantes

• Code très lisible, et très bien structuré : on “code ce qu’on pense”


• Langage interprété, c.à.d. pas de phase de compilation explicite
• Pas de déclarations de types, gestion automatique de la mémoire
• Multiparadigme : programmation orienté objet, procédural et fonctionnel
• Librairie standard et les paquetages additionnels, donnent accès à
une grande variété de services

4
16

4
Domaines d’application

Les domaines d'application naturels de Python incluent entre autres:


• L'apprentissage de la programmation objet
• Les scripts d'administration système ou d'analyse de fichiers textuels
• Tous les développement liés à l'Internet et en particulier au Web:
scripts CGI, navigateurs Web, sites Web, moteurs de recherche…
• L'accès aux bases de données
• La réalisation d'interfaces graphiques utilisateurs
• Le calcul scientifique et l'imagerie
• Le traitement de données : datascience
• Les systèmes embarqués et objets connectés : ordinateurs monocartes
(Raspberry Pi, Beaglebone, …)
5
16

5
Syntaxe

Les programmes sont écrits pour être lus par des humains, il est nécessaire
alors de rendre les programmes faciles à lire et évidents. La communauté
Python a ses propres standards sur ce à quoi doit ressembler le code,
codifiés dans le PEP8. Ainsi un programme doit avoir :
Zen de Python
- Syntaxe simple à écrire et à lire
- Indentation obligatoire : il est recommandé
Préfère :
d'utiliser 4 <espace> par niveau la beauté à la laideur,
d'indentation et pas la tabulation <tab>. l’explicite à l’implicite,
- Pas de séparateur
Pas de points-virgules ni d’accolades le simple au complexe,
et le complexe au compliqué,
le déroulé à l’imbriqué,
l’aéré au compact
Prend en compte la lisibilité
6
16

6
Variables

En python tout est objet… par conséquent dans les programmes on sera amené à
manipuler de nombreux objets; et le moyen pour Python de manipuler ces
objets est de leur donner un nom par l’intermédiaire de variables. On dit
que les variables référencent les objets.
Un nom de variable en python débute par une lettre majuscule A–Z ou
minuscule a-z, un underscore _, suivie de zéro, un ou plusieurs lettres,
chiffres ou soulignés.
Pour créer (ou déclarer) une variable, il suffit d’affecter son nom avec une
valeur.

>>> age = 35
On pourra ainsi manipuler cet objet, le nombre 17, par l’intermédiaire de
cette variable. En python, il est très important de donner de bon noms de
variables, c.à.d. des noms de variables explicites.

7
16

7
Mots-clés réservés

Les mots-clés ci-contre sont réservés et ne peuvent donc pas être utilisés
pour définir vos propres identifiants (variables, noms de fonction,
classes...).
False def if raise
None del import return
True elif in try
and else is while
as except lambda with
assert finally nonlocal yield
break for not
class from or
continue global pass

8
16

8
Typage des données Python

Python est un langage à typage fort dynamique.


 Dynamique : un langage est typé dynamiquement si la déclaration des
variables se fait sans spécifier le type.

 Fort : un langage est fortement typé si :


a) La compilation ou l'exécution peuvent détecter des erreurs de type
b) Les conversions implicites de types sont formellement interdites.

En d’autres termes, le typage est lié à l’objet par conséquent l’objet va


garder le même type durant toute l’exécution du programme; on parle de
typage fort.

Par contre, en cours d’exécution du programme, la variable peut changer de


type selon le type de l'objet référencé; on parle de typage dynamique.

9
16

9
Types de base

Python propose 4 types simples de base. Ils sont dits simples car permettant
de stocker une seule donnée par variable. On obtient le type d’une variable
avec la fonction type.
Entier : les nombres entiers sont le type int.
>>> type(4)
<class 'int'>
Flottant : les nombres à virgule flottante sont le type float.
>>> type(1.40438757)
<class 'float'>
Booléen : c’est une variable à deux états (True ou False) de type bool.
>>> type(True)
<class 'bool'>
Nombre complexe : on utilise le suffixe j pour les variable de type complex.
>>> type(4+2j)
<class 'complex'>
10
16

10
Conversion de type sur les nombres

Convertir explicitement un entier en flottant :


>>> float(5)
5.0
Convertir explicitement un flottant en entier (troncature) :
>>> int(3.7)
3
>>> int(-3.7)
-3
Convertir explicitement un flottant en entier (arrondi) :
>>> round(3.7)
4

Si un opérateur arithmétique est utilisé avec des opérandes de types


différents, Python va automatiquement convertir l’opérande dont le type
est plus “étroit” vers le type le plus “large”. 11
16

11
Opérateurs de base
Les opérateurs mathématiques de base sont :
 Opérateurs classiques : + - * /
 Division entière tronquée : //
 Puissance : **
 Modulo (reste de la division entière) : %
 Valeur absolue : abs

Les opérateurs de pré/post incrémentation/décrémentation ++ et -- n'existant


pas sous Python, on utilisera += 1 et -= 1.

>>> age = 34
>>> age += 1
>>> age
35

12
16

12
Opérateurs de comparaison
C’est des opérateurs qui retournent les valeurs True ou False de type
booléen. Python offre notamment les opérateurs suivants :
 est égal à : ==
 est différent de : !=
 est inférieur à : <
 est supérieure à : >
 est inférieur ou égal à : <=
 est supérieure ou égale à : >=
>>> 3 == 4
False
>>> 3 < 4
True

13
16

13
Opérateurs logiques
Python permet de réaliser certaines opérations logiques citées ci-après
selon leur ordre de priorité.

 le “non” logique (la négation) : not


 le “et” logique (la conjonction) : and
 le “ou” logique (la disjonction) : or

Python permet de chaîner les comparaisons. On peut par exemple définir la


condition : 10 < age < 20 qui est équivalente en Python à age > 10 and
age < 20.

>>> age = 17
>>> age>10 and age<20
True

14
16

14
Chaines de caractères
Pour écrire une chaîne de caractères, il faut l’écrire entre deux apostrophe
' ou entre deux guillemets ".

>>> type("Abou")
<class 'str'>

Concaténation

La concaténation consiste à regrouper plusieurs chaînes en une seule, en


mettant la seconde à la suite de la première et ainsi de suite.

>>> mot1 = "Hello"


>>> mot2 = "world"
>>> mot1 + " " + mot2 + " !"
Hello world !

15
16

15
Chaines de caractères : formatage

Le formatage permet de composer des chaînes de caractères incorporant des


données de types entier, flottant et chaîne.

La méthode format
La méthode .format définis dans la chaîne entre accolades { } , les
indicateurs de format permettent d’afficher les variables.
>>> nom = "Abou";; age = 35
>>> "Je m’appelle {0} et j’ai {1} ans".format(nom, age)
Je m’appelle Abou et j’ai 35 ans

La méthode f string
La lettre f est placé devant la chaine de caractère, puis on met entre
accolades { } les variables que l’on souhaite substituer.

>>> nom = "Abou";; age = 35


>>> f"Je m’appelle {nom} et j’ai {age} ans"
Je m’appelle Abou et j’ai 35 ans
16
16

16
Chaines de caractères : fonctions et méthodes de chaînes

Quelques fonctions :

len(chaine) retourne le nombre de caractères de chaîne


str(nombre) convertit un nombre en chaîne

Quelques méthodes :

.find(sch,debut,fin) retourne l'indice du début de la sous-chaîne sch. Si sch


n'est pas trouvée, .find retourne -1

.count(chaine,debut,fin) retourne le nombre d'occurences de la sous-chaîne sch

.replace(s1,s2,nb) : remplace toutes (ou seulement nb) occurences de s1 par s2

.upper() et .lower(): convertit tous les caractères


respectivement en majuscules, minuscules, ou inverse la casse
17
16

17
Instructions d’entrées/sorties

Les instructions d’entrées/sorties permettent à un programme Python


d’interagir avec l’utilisateur.

Ecrire sur la sortie standard


La fonction print() permet d'afficher la valeur d'une ou plusieurs
variables. Cette fonction print est dédiée à l'affichage uniquement.
>>> print("Hello world !")
Hello world !
Lire au clavier
La fonction input() affiche une invite et récupère les
caractères saisis par l’utilisateur. Cette fonction renvoie la chaîne
de caractères contenant la saisie de l’utilisateur.

>>> nom = input("Entrez votre nom: ")


>>> age = int(input("Entrez votre age: "))
18

Vous aimerez peut-être aussi