Vous êtes sur la page 1sur 26

Initiation à la programmation

Introduction
Présentation

M Weinberg • Programmation Python Évaluations


• Informatique • Script, Variables, types • CC (50%) tests sur
• Mathématiques • Fonctions, contrôle icampus
RZ 514 – 5ème étage • Module openpyxl
benjamin.weinberg [ at ] • Examen (50%)
univ-catholille.fr
Objectifs généraux (I)

Challenge les notions entremêlées

Organisation du travail Replit.com


Environnement de
programmation Comprendre les programmes
Écrire des programmes
➔ Automatisation
Un algorithme est une
Instructions séquence d’instructions non-
ambigüe menant à la production
Flot d’instructions d’un résultat à partir de données
Objectifs généraux (II)

Programmes Script
Comprendre / Modifier / Compléter
Écrire
Résoudre un problème Comprendre une situation
spécifique
Concepts
(cf. mathématiques avec les lettres)
Variables
Instruction import
Modules
Notamment openpyxl, os, math
Structures de contrôles
Condition / boucle
Fonctions
Utiliser / définir
Entrées / Sorties
Les informations
Types & variables
Première démonstration

Faire une démo sur la connexion à


replit.com

Créer un premier script/programme

Description des différentes zones

Écriture du premier script


Saisie
Affichage
Variable
Commentaires
Utiliser une fonction

Une fonction encapsule un travail Comme en mathématiques:


qui pourra être effectué lors de 𝑓 𝑥 = 2×𝑥+5
l’appel à la fonction
𝑓 encapsule le travail d’une
des instructions différées multiplication et d’une addition

Le travail réalisé peut dépendre de


paramètre(s)
input() fournit le texte qui est tapé
La fonction au clavier par l’utilisateur
peut fournir un résultat print() affiche la représentation
peut réaliser un effet de bord textuelle de ses paramètres
Notion de variable

Une variable Conseil


Stocker une valeur éviter de changer le type d’une varia
Nom permettant de rappeler
Cette valeur
mon_nom = "Weinberg"
Initialisation
Donne la première valeur

Affectation mon_nom = input("Nom : ")


Changer la valeur
Notion de type

En programmation moderne la Il existe 4 types élémentaires


notion de type est important int ➔ les entiers
Un type est caractérisé par float ➔ les nombres
Un ensemble de valeurs str ➔ les texte
Des comportements bool ➔ les booléens
Une représentation (False/True)

Exemples : Il existe des types composites


1 list ➔ les listes
3.14 …
"Bonjour"
False Et encore beaucoup d’autres
Types élémentaires 1 : int

Les nombres entiers (relatifs)

Écritures en décimales 0 -3 1254 …

Opérations arithmétiques + - * // % **

Comparaisons < > >= <= == !=


Types élémentaires 2 : float

Les nombres à virgule

Écritures en décimales 0.0 -3.751 12.54 …


point décimal

Opérations arithmétiques + - * / **

Comparaisons < > >= <= == !=

/!\ les opérations sur les floats se


notent avec les mêmes symboles
que les opérations sur les int
Types élémentaires 3a : str

Texte String ou chaine de caractères


Écritures
entre guillemets "0" "-250.7" "True"
entre apostrophes 'Bonjour'
entre triple-guillemets """le"""
entre triple-apostrophes '''monde'''
Opérations
Concaténation + * []
Répétition
Indexation (slide suivant)
Comparaisons < > >= <= == !=
Types élémentaires 3b : str

Chaine vide : "" >>> mon_nom = input("Nom ? ")


Weinberg
Longueur : len() >>> len(mon_nom)
8
Concaténation : + >>> mon_prenom = input("Prenom ? ")
Répétition : * Benjamin
Indexation : [] >>> mon_prenom[0]
Premier indice : 0 'B'
dernier indice : len(s) - 1 >>> mon_prenom[0] + ". " + mon_nom
'B. Weinberg'
Types élémentaires 4 : bool

Deux valeurs : False True


mon_age = int(input("Age : "))
Opérations print("Conduire :", mon_age >= 16)
and print("Voter :", mon_age >= 18)
or print("Boire de l’alcool :", mon_age
not >= 21)

Résultat des comparaisons Age : 17


Conduire : True
Utiles dans les tests Voter : False
(cf structures de contrôles) Boire de l’alcool : False
Structures de
contrôles
Traitement automatique de l’information

Initialisation / Affectation ma_variable = 1

Importation de module import pypdf

Appel à une fonction print("Bonjour")

Réalisation d’un calcul et ma_variable = ma_variable + 2


affectation

La séquence d’instructions (dans une fonction uniquement)


return a % 2 == 0
Instruction return
Répétition simple d’instructions

for <variable> in <collection>: for i in 1, 2, 3:


<séquence> print(i, "Mississipi")

Les instructions répétées sont


décalées sur la droite : indenté

La fonction range permet de créer for i in range(1, 4):


des séquences
print(i, "Mississipi")
première borne incluse
seconde borne exclue
for i in range(3):
Version simplifiée :
print(i+1, "Mississipi")
range(nb_repetitions)
Instruction conditionnelle

if <condition>: if mon_age < 16:


<séquence> print("Vous êtes mineur")
if mon_age >= 16:
print("Vous pouvez conduire")
if <condition>: if mon_age >= 18:
<séquence> print("Vous pouvez voter")
else: if mon_age >= 21:
<séquence> print("Vous pouvez boire de
l’alcool")
Ajouter des alternatives avec elif
Répétition complexe

Le nombre de répétitions est


inconnu ma_propostion = int(input("Faites
une proposition")
Mot-clé : while while mon_but != ma_propostion:
if mon_but < ma_propostion:
while <condition>: print("c'est moins")
<sequence> else:
print("c'est plus")
/!\ Programme tourne en boucle ma_propostion = int(input("Faites
/!\ Vérifier que la condition est une proposition"))
altérée par la boucle
Structure de
programme
Utilisation de fonction

nom_de_la_fonction(paramètres)

Si la fonction ne retourne pas de En général, on l’appelle fonction


valeur alors on l’appelle procédure
Exemples
Si la fonction retourne un bool alors
on l’appelle prédicat
print("Bonjour")
mon_age = int(input("Age : "))
La valeur retournée peut être
utilisée dans une expression
if est_pair(mon_nombre):
ou utilisée comme paramètre
# ...
ou affectée
Définition de fonction

def <nom> (<param>): def est_pair(nbre):


<sequence> return nbre % 2 == 0

Paramètre formel
Encapsule des instructions VS
➔ les structures de contrôle Paramètre effectif

Met fin à la fonction


Instruction return Et
Retourne la valeur
Utilisation de module

Instruction import import random

import <nom_du_module> mon_nb = random.randint(1, 6)


print(random.LOG4)
Utilisation d’un composant du module
<nom_du_module>.<nom_composant>
from turtle import *
from <module> import <composants>
clearscreen()
forward(100)
# ...
Faire un module

Faire un fichier .py

Penser à tester ces fonctions


➔ Écrire un programme qui utilise
nos développements

➔ Couvrir les différents cas

➔ Valider les résultats


Félicitations !
Vous savez programmer
en Python
Il ne reste plus qu’à
s’entrainer
Au boulot ☺

Vous aimerez peut-être aussi