programmer en python

La programmation Python pour les nuls- Episode 2

Yohan C

Yohan C

3 min

Bienvenue dans le deuxième épisode dans notre dossier d’introduction à la programmation sur Python. Vous avez vu dans l’épisode précédent l’utilité de maîtriser ce langage et comment démarrer avec les différents types de variables. Dans ce volet, vous allez découvrir les différents opérateurs sur Python ainsi que le fonctionnement des boucles et différentes fonctions utiles sur Python.

Commençons sans plus tarder : 

Opérateurs arithmétiques:

Un shell Python peut remplacer votre calculatrice de poche, avec les opérations arithmétiques de base implémentées nativement:

  • + pour l’addition
  • – pour la soustraction
  • * pour la multiplication
  • / pour la division
  • % pour le modulo (renvoie le reste de la division)
  • **pour la puissance

Ces opérations peuvent être effectuées sur des nombres, mais également sur d’autres types de variables

Tests (Instructions conditionnelles)

L’instruction if est la structure de test la plus simple. Sa syntaxe en Python fait intervenir la notion de bloc. Nous allons d’abord étudier cette notion.

Bloc d’instructions - Indentation

Pour indiquer un bloc de code en Python, vous devez indenter (à l’aide de tabulation) chaque ligne du bloc du même montant.

Instruction if:

La syntaxe de l’instruction est la suivante:

condition est une expression booléenne, c’est-à-dire une expression qui prend pour valeur True (Vrai) ou False (Faux).

En voici un exemple:

Opérateurs de comparaison:

Ce tableau résume les opérations de comparaison qui peuvent être utilisées dans les conditions:

OpérationsSignification
<strictement plus petit que
<=plus petit ou égal à
>strictement plus grand que
>=plus grand ou égal à
==égale à
!=différent de
isVérifie si les deux paramètres sont le même objet
is notVérifie si les deux paramètres ne sont pas le même objet

Les boucles :

En programmation, nous avons souvent besoin de répéter une suite d’instructions un certain nombre de fois et selon une ou plusieurs conditions.

Les boucles vont alors nous permettre de réaliser cette tâche de façon simple et efficace.

Boucles while :

Le principe est simple. Une boucle while exécute une série d’instructions tant qu’une condition est vérifiée . Pour fonctionner, elle nécessite en général trois étapes qui sont : 

  1. L’initialisation d’une variable d’itération.(i)
  2. Le test de la variable d’itération.(i<3)
  3. La mise à jour de la variable d’itération. (i=i+1)

Boucles for :

La boucle for permet également de répéter un bloc d’instructions. Elle est généralement utilisée pour itérer sur une séquence prédéfinie de valeurs. Les séquences sont souvent de type range, list ou tuple, mais peuvent aussi être des chaînes de caractères :

Le in est indispensable à l’utilisation de la boucle, c’est lui qui permet de parcourir la séquence.

Lorsque la boucle est exécutée, i contient le premier élément de L, et le bloc d’instruction est exécuté. Puis i contient le second élément de L, et ainsi de suite jusqu’au dernier élément de la liste.

Pour ces deux types de boucles, il se peut que ayez besoin d’en sortir avant avant qu’elles ne se finissent. Pour cela, on utilise l’instruction break.

Dans cet exemple, si le mot de passe entré est différent de ‘0000’ plus de trois fois, la boucle nous affiche ‘Réessayez plus tard’ et  l’instruction break nous sort de celle-ci immédiatement.

Dans le même registre que l’instruction break, continue est aussi une instruction à l’intérieur de la boucle permettant cette fois-ci de ne passer outre une itération de la boucle.

Dans l’exemple suivant, la boucle for parcourant la liste a passera par la valeure 0. Mais le calcul de 1/0 n’étant pas possible, l’instruction continue ne prendra pas en compte cette valeur et passera à la suivante.

Les fonctions:

Comme en mathématiques, les fonctions permettent de regrouper une suite d’instructions réutilisable, ce qui évite de recopier plusieurs fois le même code dans un programme.

De plus, les fonctions sont paramétrables et peuvent retourner un ou plusieurs résultats ce qui permet d’élargir le champs des possibilités. Dans certains cas, elles peuvent aussi ne rien retourner.

Lors de l’appel d’une fonction, il est nécessaire de lui spécifier la valeur des paramètres à utiliser lors de l’exécution (entre parenthèses, après le nom de la fonction). Cela n’est pas obligatoire pour un paramètre ayant une  “valeur par défaut”, qui prendra dans ce cas une valeur par défaut. Pour spécifier à un paramètre de ne pas prendre sa valeur par défaut, il suffit de lui préciser la valeur à utiliser.

Pour définir et appeller une fonction, on utilise la syntaxe suivante :

Par exemple, l’appel de la  fonction suivante permettra de retourner le carré d’un nombre s’il est positif et 0 sinon.

Variables global dans une fonction:

Une variable définis en dehors d’une fonction peut tout à fait être réutilisé à l’intérieure de cette fonction. Cependant, si une modification est faite sur cette variable dans la fonction, elle ne durera que le temps de l’appel de la fonction: 

Il est alors possible de modifier la variable dans la fonction si cette elle déclarée comme variable globale dans la fonction:

Récursivité:

Python permet également la récursivité. La récursivité est la propriété pour une fonction de se définir en s’appelant elle-même.

Il est indispensable de mettre une “condition d’arrêt” afin que l’appel à une fonction ne génère pas une infinité d’appels (et donc un arrêt de votre programme).

Bravo à vous d’avoir suivi jusqu’à présent cette introduction à Python

Encore un peu d’effort d’ici 2 semaines vous saurez réaliser un cas d’application de Data Science. On se retrouve la semaine prochaine afin de se pencher sur le chargement d’un jeu de données et le cleaning de celle-ci.

Actualité data

DataScientist : Recrutement VS Formation

Pour la 5ème année consécutive, le métier de Data Scientist a été désigné comme le meilleur emploi aux USA par Glassdoor c’est aussi le métier qui connaît la croissance la plus rapide.

Lire plus »
Intelligence Artificielle et Société

Ethique ou Big Data

Comment faire prévaloir une question d’éthique en matière de données alors que la concurrence se veut mondiale ? Les européens doivent-ils se soumettre à une concurrence américaine et asiatique déloyale pour une question d’éthique ?

Lire plus »