Aller au contenu principal

Python, c'est quoi ?

info

📈 Objectifs du cours

  • Définir ce qu'est un langage de programmation
  • Définir ce qu'est Python

A propos de Python

Python est un langage de programmation :

  • développé depuis 1991
  • interprété
  • multi-paradigme
  • typé dynamiquement
  • à mémoire auto-gérée

En bref, Python est un langage de programmation idéal débuter la programmation car celui-ci est simple, clair et efficace.


Mais alors, qu'est ce qu'un langage de programmation ?

Un langage de programmation est un langage qui formule des algorithmes et qui permet de créer des programmes.

Un programme est un ensemble de instructions qui vont s'exécuter pour résoudre un problème.

info

Exemple : un programme qui va trouver le plus grand nombre dans une liste de nombres.


La base de Python

📚 Quelques concepts

📚 Variables

Les variables sont des espaces mémoire qui peuvent contenir des valeurs.

# Déclaration d'une variable
nombre = 42
# Déclaration d'une variable et affectation d'une valeur
nombre = 42
nombre = nombre + 1

📚 Types de variables

Les variables peuvent être de type différent.

TypeDescriptionExemple
intentier42
floatnombre décimal3.14
strchaîne de caractères"Hello"
boolbooléenTrue
Nonevaleur par défautNone
tupletuple(1, 2, 3, 3)
listliste[1, 2, 3, 3]
setensemble{1, 2, 3}
dictdictionnaire{"name": "John", "age": 22}
x = 1
print(x) # 1
print(type(x)) # <class 'int'>

📚 Opérateurs

En Python, il existe plusieurs opérateurs :

OpérateurDescriptionExemple
+addition1 + 1
-soustraction1 - 1
*multiplication1 * 1
/division1 / 1
%modulo10 % 3
**puissance2 ** 3
//division entière10 // 3
x = 10
y = 2

print(x + y) # 12
print(x - y) # 8
print(x * y) # 20
print(x / y) # 5.0
print(x % y) # 0
print(x ** y) # 100
print(x // y) # 3

📚 Conditions

Il peut arriver que certaines instructions doivent être exécutées selon que certaines conditions sont remplies.

Dans Python, on utilise les mots-clés if, else et elif pour cela.

if age >= 18:
print("Adulte")
else:
print("Enfant")

Autre possibilité avec elif :

if age >= 18:
print("Adulte")
elif age >= 13:
print("Adolescent")
else:
print("Enfant")

📚 Boucles

Dans un programme, il peut arriver que certaines instructions doivent être exécutées plusieurs fois.

La première solution est d'écrire plusieurs fois le même code mais cela peut vite devenir fastidieux. Par ailleurs, en terme de lisibilité, cela peut être difficile à comprendre.

Au lieu de cela, on peut utiliser des boucles pour répéter des instructions.

Il existe 2 types de boucles :

  • les boucles for qui permettent de répéter des instructions pour tous les éléments d'une liste.
  • les boucles while qui permettent de répéter des instructions tant qu'une condition est remplie.
# Boucle for
for i in range(5):
print(i)

# Boucle while
i = 0
while i < 5:
print(i)
i += 1
remarque

Ici on utilise la fonction range() pour créer une liste de nombres.

>>> range(5)
[0, 1, 2, 3, 4]

>>> range(1, 6)
[1, 2, 3, 4, 5]

>>> range(1, 6, 2)
[1, 3, 5]

📚 Fonctions

Une fonction est un bloc de code qui peut être appelé plusieurs fois.

def addition(x, y):
return x + y

print(addition(2, 3)) # 5

Une fonction peut prendre des arguments et renvoyer des résultats. Dans l'exemple ci-dessus, la fonction addition() prend deux arguments x et y et renvoie le résultat de l'addition de ces deux arguments.

remarque

En réalité, on a déjà travaillé avec des fonctions. Par exemple, la fonction print() qui permet d'afficher des informations sur l'écran.

print("Hello") # Hello

Bonnes partiques

Typage

En Python, il est possible, pour plus de sécurité, de spécifier le type des arguments et des résultats d'une fonction.

def addition(x: int, y: int) -> int:
return x + y

Commentaires

Un commentaire est un texte qui est ignoré par le programme. Il peut être utilisé pour expliquer le code, ou pour indiquer des informations qui ne sont pas pertinentes pour le programme. On peut écire un commentaire en utilisant le symbole # ou en englobant le texte entre """.

# On affiche "Hello"
print("Hello")

""" On affiche "Hello"
On peut écrire plusieurs lignes
"""
print("Hello")

Documentation

Il est possible d'ajouter de la documentation grâce à des commentaires multilignes bien placés, c'est la docstring.

Pour documenter une fonction, il faut placer un commentaire au début de la fonction.

def addition(x: int, y: int) -> int:
"""Ajoute deux nombres
"""
return x + y

Pour détailler les arguments, il existe plusieurs syntaxes mais la plus simple est d'utiliser le format suivant :

def addition(x: int, y: int) -> int:
"""Ajoute deux nombres

:args x: premier élément de l'addition
:args y: second élément de l'addition
:return: le résultat de l'addition
"""
return x + y

Exercices

Exercice 1

Compléter la fonction suivante :

def get_perimetre_circle(r: float) -> float:
"""Calcule le périmètre d'un cercle de rayon r

:args r: rayon du cercle
:return: le périmètre du cercle
"""
pass

Le mot clé pass permet de passer l'exécution de la fonction jusqu'à la fin (ici, c'est pour éviter les erreurs de compilation). Lors de l'exercice, il faudra remplacer pass par votre code.

Exercice 2

Compléter la fonction suivante :

def is_traingle_rectangle(a: float, b: float, c: float) -> bool:
"""Vérifie si un triangle est un rectangle, grâce au théorème de Pythagore

:args a: longueur du côté A
:args b: longueur du côté B
:args c: longueur côté C
:return: True si le triangle est un rectangle, False sinon
"""
pass

Exercice 3

Compléter la fonction suivante :

def get_imc(taille: int, poids: float) -> float:
"""Calcule le poids-indice de masse corporelle (IMC) d'un individu

:args taille: taille du individu en centimètres
:args poids: poids du individu en kg
:return: l'IMC de l'individu
"""
pass

Exercice 4

Compléter la fonction suivante :

def get_montant_amende(vitesse: int, limite: int) -> float:
"""Calcule le montant de l'amende pour excès de vitesse à payer

:args vitesse: vitesse du véhicule en km/h
:args limite: limite de vitesse autorisée en km/h
:return: le montant de l'amende à payer
"""
pass

Pour cet exercice, il faudra d'abord se renseigner sur le calcul de l'amende pour excès de vitesse.