Vous êtes sur la page 1sur 21

SCIENCES DES DONNÉES APPLIQUÉES (fONDAMENTALES)

Cours 2

• Année : 2022/2023
Responsable Module Mr. Khalid El Fayq • Session : 8 – Hiver 2022
ère • Volume horaire 64
Niveau 4 Année
• Crédits : 4
Filière Génie informatique

1
1-INTRODUCTION TO PYTHON
• Data Types, Variables, Basic Input-Output Operations, Basic
Operators.

• Boolean Values, Conditional Execution, Loops, Lists and List


Processing, Logical and Bitwise Operations.

• Using modules.

2
Historique du langage Python
• 1991 : Guido van Rossum travaille aux Pays-Bas(5) sur le projet
AMOEBA, un système d'exploitation distribué. Il conçoit Python à partir
du langage ABC et publie la version 0.9.0 sur un forum Usenet.
• 1996 : sortie de Numerical Python, ancêtre de numpy.
• 2001 : naissance de la PSF (Python Software Fundation).
• Les versions se succèdent… Un grand choix de modules est disponible,
des colloques annuels sont organisés, Python est enseigné dans
plusieurs universités et est utilisé en entreprise…
• 2006 : première sortie de IPython.
• Fin 2008 : sorties simultanées de Python 2.6 et de Python 3.0.
• 2013 : versions en cours des branches 2 et 3 : v2.7.3 et v3.3.0

3
Pourquoi nous utilisons Python
• Langage open source
• Python est devenu un outil de premier ordre pour les tâches de calcul scientifique, y compris l'analyse et la visualisation de grands
ensembles de données.
• Initialement, Python n'a pas été spécifiquement conçu pour l'analyse de données ou le calcul scientifique.
• L'utilité de Python pour la science des données provient principalement du vaste écosystème de packages tiers :
• NumPy pour la manipulation de données basées sur des tableaux homogènes

• Pandas pour la manipulation de données hétérogènes et étiquetées


• SciPy pour les tâches courantes de calcul scientifique
• Matplotlib pour des visualisations de qualité publication
• IPython pour l'exécution interactive et le partage de code, & Scikit-Learn pour l'apprentissage automatique.

• Disponibilité de bibliothèques
• Plusieurs milliers de packages sont disponibles dans tous les domaines.

• Points forts de Python :


• langage de très haut niveau ;
• sa lisibilité ;
• « langage algorithmique exécutable ».

4
Pourquoi nous utilisons Python
• du traitement d'image (librairie PIL)
• des applica4ons avec interface graphique GUI (librairies Tkinter, PyQt,
wxPython, PyGTK...)
• des jeux vidéo en 2D (librairie Pygame)
• des applica4ons Web (serveur Web Zope ; frameworks Web Flask, Django)
• interfacer des systèmes de ges4on de base de données (librairie
MySQLdb...)
• des applica4ons réseau (framework Twisted)
• communiquer avec des ports série RS232 (librairie PySerial), en Bluetooth
(librairie pybluez)...
• ...
• Des dizaines de milliers de librairies sont disponibles sur le dépôt officiel
PyPI.

5
1. Versions de langage Python

Python con(nue à évoluer, mais ce5e évolu(on ne vise qu’à améliorer ou perfec(onner le produit. Il est donc très
rare qu’il faille modifier les programmes afin de les adapter à une nouvelle version qui serait devenue incompa(ble
avec les précédentes

Python 2.0

‣ Décembre 2000 ~ the present Python 2.7


‣ Syntax : Exemple fonction print : print "bonjour“

Python 3.0

‣ Décembre 2008 ~ the present Python 3.8


‣ Syntax : Exemple fonction print : print ("bonjour“)
‣ Plus de bibliothèques.

6
• Généra&on de l’applica&on (.exe):
Important : Il faut que Python et Google Chrome soient installés correctement
1 – Télécharger le dossier ‘auto_py_to_exe’ via le lien ci-dessous :

h"ps://github.com/brentvollebregt/auto-py-to-exe

2 – Ouvrir le fichier ‘run.py’ :

Ton fichier (.py) à convertir

Option à choisir
Le fichier de sor&e sera
placé dans le chemin :
Op&on à choisir
‘…/auto_py_to_exe/Output’

Icône de l’applica&on

Convertir l’application

7
3. Premiers pas : Pour commencer il faut ouvrir l'interpréteur de commande (ou Shell).

A l'ouverture de l'interpréteur de commandes, un message d'accueil apparaît donnant quelques informa>ons


concernant la version de Python mise en route, l'architecture de l'ordinateur u>lisée ainsi que les commandes à saisir
pour obtenir davantage d'informa>ons.

On retrouve également les triples chevrons >>> qui indiquent que Python est prêt à recevoir votre première
instruc>on.

8
Premier pas et notions importantes

‣ Calculer avec Python :

Python présente la particularité de pouvoir être utilisé de plusieurs manières différentes. Vous
allez d’abord l’utiliser en mode interactif !
Dans un second temps, vous apprendrez comment créer vos premiers programmes (scripts) et
les sauvegarder sur disque.

>>> 5+3
>>> 2 – 9 # les espaces sont optionnels
>>> 7 + 3 * 4 # la hiérarchie des opérations mathématiques, est-elle respectée ?
>>> (7+3)*4
>>> 20 / 3
>>> 20 // 3
>>> a>b
>>> a>=b
>>> 2<a<30
>>> abs(c)

9
‣ Type des Variables :
>>> 5+5 >>> 'khalid'
10 'khalid'
>>> 5//2 >>> print('khalid')
2 khalid
>>> 5/2 >>> print("khalid's elfayq")
2.5 khalid's elfayq
>>> 8+9-10 >>> print('khalid "el" fayq')
7 khalid "el" fayq
>>> (8+9)-2 >>> 'khalid' + 'elfayq'
15 'khalidelfayq'
>>> (8+2)*3 >>> 10* 'khalid'
30 'khalidkhalidkhalidkhalidkhalidkhalidkhalidkhalidkhalidkhalid'
>>> 8+2*3 >>> print('c:\docs\nadia')
14 c:\docs
>>> 2**3 adia
8 >>> (r'c:\docs\nadia')
>>> 10%3 'c:\\docs\\nadia’
1 a,b = 'aaaa', 'bbbb’
print(a, end=" ")
print(b)
10
‣ Convention de nommage :

- Commencer par une lettre ou un underscore.


- Elle doit ne pas contenir de caractères spéciaux.
- Elle ne doit pas contenir d'espaces.
- On peut utiliser des underscores (_).
- Il faut absolument éviter d’utiliser un mot « réservé » par Python

False Class finally is return


None continue for lambda try
True def from nonlocal while
and del global not with
as elif if or yield
assert else import pass
break except in raise

11
‣ Type des Variables :
Le type d’une variable correspond à la nature de celle-ci :

- Entier numérique (int).


- Nombre flottant (float).
- Chaîne de caractères (str).
- Booléen (bool).
- Listes.
- Dictionnaires.
- Tuples. Saisir la commande type(_)

>>> A, b, nom, age = 15, 2.5, "ali", 21


>>> nom
'ali'

Input
r = int(input("Saisissez une valeur: "))

12
‣Prédire le résultat : opérations

Essayez de prédire le résultat de chacune des instructions suivantes, puis vérifiez-le dans
l’interpréteur Python :

>> (1+2)**3 >> ("Da"*4) / 2


>> "Da" * 4 >> 5 / 2
>> "Da" + 3 >> 5 // 2
>> ("Pa"+"La") * 2 >> 5 % 2

‣Prédire le résultat : Conversion de type (cast)

Essayez de prédire le résultat de chacune des instructions suivantes, puis vérifiez-le dans
l’interpréteur Python :
>> str(4) * int("3")
>> int("3") + float("3.2")
>> str(3) * float("3.2")
>> str(3/4) * 2

13
‣ Type des Variables :

>>> nom[:]
>>> nom = "youtube"
'youtube'
>>> nom[2]
>>> nom[::2]
'u'
'yuue'
>>> nom[-2]
>>> set(nom)
'b'
{'t', 'b', 'y', 'o', 'e', 'u’}
>>> nom[-4]
>>> nom.replace('y','j')
‘t’
'joutube’
>>> nom[0:3]
>>> nom.count("u")
'you’
2
>>> nom[1:4]
>>> nom.capitalize()
‘out’
'Youtube’
>>> nom[1:]
>>> nom.upper()
‘outube'
'YOUTUBE’
>>> nom[:4]
>>> nom.Ntle()
‘yout'
14 'Youtube'
4. Python:

# Ceci est un commentaire

>>> a = 5
>>> print("a vaut", a)
a vaut 5

La fonction range()

Si vous avez besoin de créer sur une suite d’entiers, vous pouvez utiliser la fonction range(). Elle génère une suite
arithmétique.
>>> range(10)
range(0, 10)

En Python 3, si on souhaite afficher les valeurs, il est nécessaire de convertir le résultat en liste grâce à la fonction list(). Par
exemple :
list(range(10)) [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

>>> list(range(5, 10)) è [5, 6, 7, 8, 9]


>>> list(range(0, 10, 3)) è [0, 3, 6, 9]
>>>
15 list(range(-10, -100, -30)) è [-10, -40, -70]
5. Qu’est ce qu’une bibliothèque ou librairie en programmation?

En programmation, une bibliothèque (ou “library” en anglais) est une collection de fonctions et de modules liées à un
thème spécifique. Si ces modules appartiennent au pack originel du langage, ce sont des modules intégrés.
Python a également été complété par des modules tiers : ils ont été codées par des développeurs à partir des fonctions
de bases du langage et ils sont accessibles en open-source.

nous listons les bibliothèques les plus utilisées


par les professionnels de la Data science. Sache
cependant qu’il existe des bibliothèques pour
tous les secteurs d’application. Par exemple,
dans le domaine de la recherche scientifique,
la bibliothèque biopython permet de traiter et
d'analyser plus facilement des données
biologiques. Dans le domaine des jeux vidéos,
la bibliothèque pyGame est utilisée pour créer
des jeux vidéo en 2D ou 3D.

16
6. Comment importer une bibliothèque sur Python?

Pour importer une bibliothèque, une ligne de code suffit. Par exemple, pour importer pandas, il
suffit d’écrire :

imoprt libraryname
import libraryname as ab
from libraryname import function
from library name import *

import pandas as pd

En général, on donne un surnom à la bibliothèque (ici “pd”). En effet, on va être amené à appeler
cette bibliothèque souvent dans le corps du code. Alors autant réduire le nombre de caractères nécessaires afin de
gagner du temps!

Il y a parfois quelques subtilités. Il faut parfois préciser pip install pour que Python comprenne où est située la
bibliothèque. C’est par exemple le cas pour BeautifulSoup.

!pip install bs4


from bs4 import BeautifulSoup
17
7. Library Matplotlib:

Matplotlib est un module de dataviz très plaisant : c’est en effet lui qui te permet, en une ligne de
code, de créer des graphiques qui modélisent les données sur lesquelles tu travailles.
Matplotlib s’utilise en synergie avec Numpy ou Pandas.
Matplotlib offre une large variété de types de graphes qui s’adaptent à tous les besoins :
histogrammes, boîtes à moustache, courbes, scatter plots, camemberts…

import matplotlib.pyplot as plt

# Define Axes
x = [1.5, 2.6, 3.5, 4, 9]
y = [3.25, 6.3, 4.23, 1.35, 3]

plt.plot(x, y, color = 'red', marker = 'o', linestyle = 'dashed')


plt.show()

18
8. Library Math:
https://docs.python.org/fr/3.5/library/math.html

Ce module est toujours disponible. Il fournit l’accès aux fonctions mathématiques définies par le
standard C

import math as m

nombre = 4
b = -8
resultat = m.factorial(nombre)
absolut = m.fabs(b)
print("le factoriel est :", resultat, "et absolut du nombre est: ", int(absolut))

math.exp(x)
math.log(x[, base])
math.log2(x)
math.log10(x)
math.sqrt(x)
19
4. List:

Une liste en Python désigne une collection finie et ordonnée d'objets. Elle est la représentation d'un ensemble fini
d'objets que l'on distingue par leur ordre d'apparition.

Accepte tout les type de variable

Modifiable

[]

>>> li= [15,20,"ali",12.8]

Accepter les attribut en double

20
Exercice

Ecrire un programme en Python qui demande à l’utilisateur de saisir le rayon d'un cercle et de lui renvoyer la surface
et le périmètre.

21

Vous aimerez peut-être aussi