0% ont trouvé ce document utile (0 vote)
6 vues9 pages

Introduction à Python pour M2 Systèmes/Réseaux

Ce document présente une introduction à la programmation en Python, incluant des informations sur les IDE, l'importation de modules, les fonctions mathématiques, et les structures de données comme les listes et les dictionnaires. Il fournit également des exemples de code pour illustrer les concepts abordés, ainsi que des exercices pratiques pour renforcer l'apprentissage. Enfin, il aborde les manipulations de chaînes de caractères et les opérations sur les listes et dictionnaires.

Transféré par

Yazid Aderodjou
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
6 vues9 pages

Introduction à Python pour M2 Systèmes/Réseaux

Ce document présente une introduction à la programmation en Python, incluant des informations sur les IDE, l'importation de modules, les fonctions mathématiques, et les structures de données comme les listes et les dictionnaires. Il fournit également des exemples de code pour illustrer les concepts abordés, ainsi que des exercices pratiques pour renforcer l'apprentissage. Enfin, il aborde les manipulations de chaînes de caractères et les opérations sur les listes et dictionnaires.

Transféré par

Yazid Aderodjou
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Institut Africain de Technologie

*******

Niveau : M2 Systèmes/Réseaux Enseignant : ALMOU Bassirou

Module : programmation Systemes


Activité 1 : python

Python est un langage interprété. Chaque ligne lue est exécutée sans avoir besoin d’un compilateur. Il est un langage
modulaire. Premier langage de programmation en 2017 selon IEEE.
Téléchargement : [Link]/downloads
PARTIE 1
Les IDE python :
- IDLE
- Pycharm
- wing IDE Personal
- Sublime text3
Installation de pip : sudo apt-get install python3-pip
Importation du module
from unModule import uneFonction[, uneAutreFonction,…] Importer une ou plusieurs fonctions
 from unModule import * Importer toutes les fonctions
import module Importer le module en entier
from unModule import uneFonction as fc Alias d’une fonction importée
Sous linux il faut préciser le chemin ou se trouve python, même chose que le bash
# !/usr/bin/python

import random
import sys
import os
print("Presentez vous s’il vous plait")
nom=input("Quel est votre nom ? ")
langage=input("Quel est votre langage de programmation prefere ? ")
if (langage =="Python"):
print('Bienvenue dans la famille')
else: print(nom, "qu'est-ce que vous attendez ?. Rejoignez la famille Python")

Long text
exemple :
print("je suis nigerien , je suis etudiant \
a l’Ecole Superieure des Telecommunication ")
Erreur Correction
print(‘c:\niger\niamey’) print(‘c:\\niger\\niamey’)
print(‘je m’en vais’) print(‘je m\’en vais’)

Exécution d’un script python (sous Linux)


a. Rendre le fichier exécutable : chmod u+x [Link]
b. Exécution : python [Link] ou ./[Link]
# Commenter une ligne
‘’’ Commenter un paragraphe ‘’’

Les mots réservés


and del from None True
as elif global local try
assert else if not while
break except import or with
class False in pass yield
continue finally is open
def for not

Les fonctions mathématiques


abs(number) Retourne la valeur absolue d’un nombre
[Link](number) Retourne la racine d’un nombre négatif
float(object) Convertit un nombre ou une chaine de caractères en nombre flottant
input(prompt) Demande à l’utilisateur d’entrer une valeur
int(object) Convertit un nombre en entier
long(object) Convertit un nombre en entier long
str(object) Convertit une valeur en chaine de caractères
round(number[, ndigits]) Arrondir un nombre a n chiffres après la virgule
raw_input(prompt) La valeur saisir doit être une chaine de caractères
[Link](number) Retourne la racine carrée d’un nombre positif

nom="Ali"
print(nom)
nombre=10
print(nombre)
Les opérateurs arithmétiques : +, -, *, /, %, **, //
Exemple :
print("5+2=",5+2)
print("5-2=",5-2)
print("5*2=",5*2)
print("5/2=",5/2)
print("5**2=",5**2)
print("5//2=",5//2)
pirnt("1+2-3*2="1+2-3*2)
pirnt("(1+2-3)*2="(1+2-3)*2)
print(‘\n’*3)
print((2+3j)*(1-5j)/2j)

Appel du module __future__ qui contient la fonction division


from __future__ import division
>>> 5/8
Affectation
x=2 x=y=z=14 nom=input(‘Entrer le nom’)
print(‘Votre nom est %s’ %)
x+=z x,y,z = 5,17,25 a,*b,c=’Africa’
print(a)
print(b)
print(c)
x*=5 x/=2

print(‘%s %s %s’ % (‘Je pense’,’donc’,’je suis’))


print(‘Ecole ’,end=’EST’)

Concaténation
nom=" Moussa"
prenom="Dan Ladi"
print(nom+" "+prenom)
recherche d’une chaine de caractères
presention=’EST, Ecole Superieure des Telecommunications, localisee a Niamey a cote de l\’ENAM’
[Link](‘EST’)

Liste : ensemble d’éléments séparés par des virgules, compris entre crochets

linux=['debian','ubuntu','redhat','centos']
print("premiere distrition est", linux[0])
print("deuxieme distrition est", linux[1])
Modifier le contenu d’une variable
linux[0]="Slax"
print("premiere distrition est",linux[0])
Format de liste : tableau [0-Nn-1]
Print(linux[2 :]) #affiche les éléments de la liste à partir du 3e jusqu’au denier
Print(linux[2 :]*2) #afficher le résultat 2 fois

Liste des listes


Indicer de liste
Soit la liste :
mot= [‘Fraternite’, ‘Travail’, ‘Progres’, ‘Liberte’, ‘Justice’, ‘Honneur’]
Indice positif 0 1 2 3 4 5
Indice négatif -6 -5 -4 -3 -2 -1

mot[-1] mot[ :-1] mot[ -4:-1] mot[2 :] mot[0 :3] mot[0]+ mot[-1] mot[0]*5

Produit=[‘ mil’,’mais’,’sorgho’,’riz’,’patate’,’manioc’]
print(Produit[-1])
print(Produit[ :])
print(Produit[ :-1])
print(Produit[2 :4])
Prix=[450,375,300,22550,125,200]
Quantite=[5,5,2,3,14,6]
print('le montant total de',produit[0],prix[0]*quantite[5])
tout=[[produit],[prix]]
print(tout[0],tout[1])

Exercice 1
Soit la liste : nbre = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
Avant de le vérifier a l’aide de python, donner le résultat mentalement
nbre [3:6] nbre [7:10] nbre [3:0] nbre[3:6:3]
nbre [0:1] nbre [-3:-1] nbre [:] nbre[::4]
nbre [-3:0] nbre [-3:0] nbre[0:10:1]*2 [8:3:-1]
[0:10:-2] [::-2] [5::-2] [1:5:-2]

Quelques fonctions predefinies


sep=’/’ d/e/m/o/c/r/a/t/i/e
rep=’democratie’
j=[Link](rep)
o=[Link](‘/’) Renvoie la liste sans le séparateur
[Link] Formate les éléments de la liste en minuscule
Exemple :
eleve=[‘ali’,’sani’,’issa’,’mairo’,’hadi’] eleve=[‘Ali’,’Sani’,’Issa’,’Mairo’,’Hadi’]
trouve=input(‘Entre un nom ’) trouve=input(‘Entre un nom ’)
if [Link]() in eleve : if [Link]() in eleve :
print(‘Alors trouve’) print(‘Alors trouve’)
else : else :
print(‘Pas trouve’) print(‘Pas trouve’)

Formatage du texte
nom= input("Quel est votre nom? ")
veux = input("Quel est votre meilleur voeux pour le Niger? ")
print("{} souhaite {} pour le Niger").format(nom,veux)
Ordre d’affichage des variables (avec 0 pour la variable à afficher en premier, 1 pour la variable à afficher en second,..
nom= input("Quel est votre nom? ")
veux = input("Quel est votre meilleur voeux pour le Niger? ")
print("{0} souhaite {1} pour le Niger").format(nom,veux)

Manipulation de chaine de caractères


Vérifier les fonctions liées à string : dir(string)
regle1=’ Dans une Entreprise, l\’informaticien est le premier a venir et est le dernier a partir ’
[Link]()
[Link](‘Entreprise’,’Organisation’)
[Link]()

Liste d’un nombre :


soit le numéro de téléphone : tel=20123456
Incorrect Correcte
lister=list(tel) lister=list(str(tel))
Longueur=len(tel) Longueur=len(str(tel))

Structure de données
[Link]() [Link](x) [Link](i, x) [Link](x) [Link]() [Link]([i]) [Link](x[, start[, end]])

[Link](x) [Link](key=None, reverse=False) [Link]()


[Link]() del list[n]

list(‘Afrique’)
Ajout d’un élément en tête de liste
[Link]('oignon')
print(produit)
Ajouter un élément à la position k de la liste
[Link](1,'tomate')
Supprimer un élément de la liste
[Link](‘riz’)
Renverser l’ordre du contenu de la liste : le premier élément devient le dernier
[Link]()
Supprimer le dernier élément de la liste
[Link]()
Supprimer un élément de la liste à la position k
del produit[2]
Concaténer les contenus de deux listes
produit1=['mil','mais','sorgho']
produit2=['riz','patate','manioc']
produit=produit1+produit2
toutProduit=[produit1,produit2]
print(toutProduit[][])
print(toutProduit[1][1])

Exemple 1:
carre = []
for x in range(10):
[Link](x**2)
Exemple 2:
carre = [x**2 for x in range(10)]

Exemple 3 :
[(x, y) for x in [1,2,3] for y in [3,1,4] if x != y]
Exercice
Soit d = [-4, -2, 0, 2, 4]
1. Créer une liste avec des valeurs doubles de d
2. Exclure des valeurs négatives dans d
3. Utiliser une fonction aux valeurs de d
4. Donner une liste qui contient le tuple carre des valeurs de d
Exercice :
Soit la matrice
A= [[1, 2, 3, 4],[5, 6, 7, 8],[9, 10, 11, 12] ]
1. Donner la transposée de A
Solution 1:
H=[
[row[i] for row in A]
for i in range(4)]
print(H)
Solution 2
A=[]
for i in range(4):
[Link]([row[i] for row in A])
Déterminer la valeur maximale
print(max(prix)) #affiche le prix maximal
print(min(prix)) #affiche le prix minimal
Le nombre d’éléments de la liste
print(len(prix))
Exercice 1
Soit rep= ‘decolonisation’
1 col=list(rep) 6 d[0],d[2],d[4], d[5],d[6] =’d’,’ m’,’c’,’r’, ’t’
2 del col[0 :2] 7 print(d)
3 re=list(‘re’) 8 [Link](6,’a’)
4 rec=re+col 9 print(d)
print(rec)
5 d=rec 10 d[9 :]=’e’

Exercice 2
Soit d=’democratisation’
1 dl=list(d) 9 [Link](‘e’)
2 [Link](‘i’) 10 [Link]()
3 [Link](‘i’) 11 [Link](0)
4 s=d[ :4] 12 [Link](‘m’)
5 t=d+s 13 m=k
6 [Link](‘d’) 14 [Link]()
7 l=list(‘anti’) 15 y=sorted(k)
8 [Link](d)

pop() supprime par défaut le dernier élément de la liste.


remove() supprimer la première occurrence de l’élément trouvé dans la liste
Les tuples : ensemble d’éléments compris entre parenthèses
() Tuple vide
t=tuple(‘REPUBLIQUE’) Retourne la chaine de caractères en tuple
t[2 :4]
list(t) Convertit le tuple t en liste

Produit=(‘Tomate’,’Riz’,’Arome’)
Dictionnaire : c’est comme un tableau
Pourquoi le dictionnaie ?
Soit eleve=[‘Ali’,’Iro’,’Ami’,’Hadi’]
telephone=[20586313,20659874,21561202,20265981]
Chercher le numéro de Ami : telephone[[Link](‘Ami’)]
Sous forme de dictionnaire :
eleve=[‘Ali’ : 20586313,’Iro’: 20659874,’Ami’: 21561202,’Hadi’: 20265981]
Les opérateurs de comparaisons : ==, !=, <, >, <=, >=,
fourniture={'cahier':'200','crayon':'couteur',’gomme’ :’100’,’livre’ :’Afrique mon Afrique’}
etudiant={'nom':'ali','prenom':'sani',’adresse’ :’Lamorde’,’genre’ :’H’}
print(fourniture)
print(fourniture [‘cahier’])
del (fourniture [‘gomme’])
fourniture [‘livre’]=’Histoire du Niger’
print(len(fourniture))
print([Link]())
print([Link]())

Afficher une colonne d’enregistrement


print(etudiant['nom'])
Supprimer un champ de la liste
del etudiant['nom']
print([Link]('prenom'))
print([Link]()) # afficher les champs
Les fonctions liées au dictionnaire
etudiant=[(‘Nom’,’Ali’),(‘bourse’,65000)] d=dict(Nom=’Ali’,bourse=65000)
d=dict(etudiant)
print(d)
eleve={ d={}
'ali':{ d[‘nom’]=’Ali’
'tel':22, 'adress':'yantala' d[‘bourse’]=35200
}, print(d)
'sani':{'tel':23,'adress':'Liberte' [Link]() Supprime le contenu du dictionnaire d
boutique={
}
} 'nom':'Gogormaya','contact':{'Yantala':22222200,'Haro
print(eleve) banda':22222201}

}
print(boutique)
boutique={ Sauver=[Link]() Copier le dictionnaire boutique dans
sauver
x={}.fromkeys(boutique)
'nom':'Gogormaya','tel':[22222200,22222201] Créer un nouveau dictionnaire
[Link]([‘nom’,’tel’]) sans les valeurs
}
print(boutique)
On peut assigner une valeur au lieu de None [Link]([‘nom’,’tel’],(‘vide’))
vacataire={‘nom’ :’Ali’,’nbreHeure’ :60
,’module’ :’Linux’,’classe’ :’L1’}
libelle,valeur = [Link]()
print(key)
print(valeur)

Etudiant={‘nom’ :’Ali’,’prenom’ :’Sani’,’bourse’ :’oui’}


[Link](‘nom’) Supprime l’item nom
[Link]() Supprime arbitrairement l’item du dictionnaire
stagiaire={} Assigner une valeur par défaut a un item du dictionnaire
[Link](‘profile’,100)
print(stagiaire)
vac={‘vacataire’ :’Alou’} update() met à jour le dictionnaire à partir du contenu d’un autre
[Link](di)
Values
region={} values() retourne les valeurs du dictionnaire
region[1]=’Agadez’
region[2]=’ Diffa’
region[3]=’ Dosso’
r=[Link]()
print(r)

Les structures de contrôle


if (condition1) : import random
instruction1 import os
elif(condition2) : import sys
instruction2 age= int(input('Entrez votre age'))
else : if ((age>=6)and(age<11)):
instruction3 print('Vous etes au primaire')
elif((age>=11)and(age<15)):
print('Vous etes au colege')
else:
print('Vous devrez etre a l\'Universite')
ecole=input('Entrez votre ecole:EST,EPN,UAM')
if(ecole=='EST'):
print('Soyez les bienvenue au MASTER 2 GL. Vous etes pythonien')
else:
print('Desole, vous n\'allez pas suivre le cours de python')

electeur={'id':22,'Nom':'Ali','age':25,'nationalite':'nigerienne'}
electeur1={'id':20,'Nom':'Aliou','age':17,'nationalite':'nigerienne'}
print(electeur,"\n",electeur1)
if ([Link]('nationalite')=='nigerienne' and ([Link]('age')>=18)):
print("vous pouvez voter")
else:
print("Vous ne pouvez pas voter. DESOLE")

import math as m import math as m


a,b,c=2,4,6 a=float(input("Entrer la valeur de a: "))
dt=b**2-4*a*c b= float (input("Entrer la valeur de b: "))
c= float (input("Entrer la valeur de c: "))
if dt>0: dt=b**2-4*a*c
x1=-[Link](dt)
x2=-b+[Link](dt) if dt>0:
print("racine1 %s" % x1,"\n") x1=-[Link](dt)
print("racine2 %s" % x2,"\n") x2=-b+[Link](dt)
elif dt==0: print("racine1 %s" % x1,"\n")
x1=x2=-b/2*a print("racine2 %s" % x2,"\n")
print("Racine double x1==x2: ",x1) elif dt==0:
else: x1=x2=-b/2*a
print("Pas de solution") print("Racine double x1==x2: ",x1)
else:
print("Pas de solution")

eleve=['Ali','Sani','Iro','Hadi']
donnee=raw_input('Nom')
if donnee:
print('ok')
else:
print(‘non’)

Pour les nombres complexes, importer le module cmath


Reoudre (1+3j) * (9+4j)
Resoudre (1+3j) / (9+4j)

WHILE
i=0 On peut également utiliser un else pour faire les
while(i<8): instructions qui ne remplissent pas les conditions du while.
print(‘tour numero’,i) i=9
i+=1 while(i<8):
print('tour',i)
i+=1
else:
print('hors condition!')

FOR
for condiment=[‘Huile’,’Tomate’,’Oignon’,’Sel’]
for i in [1,2,3]: for c in condiment :
print(i) print(c)
break ou continue for n in [2,25,3]:
i=1 print(n)
while(i<8): for n in (2,25,3) :
print('tour',i) print(n)
i+=1 for n in range(2,25,3) :
if(i==5): print(n)
break
else:
print('hors sujet!')

fibs = [0, 1] a = ['Ali', 'Adi', 'Kaka', 'Sani', 'Labo']


for i in range(8): for i in range(len(a)):
[Link](fibs[-2] + fibs[-1]) print(i, a[i])
ecole=[[‘UAM’,’UM’,’UZ’,’UT’],[‘EST’,’EPN’, ‘EMIG’]]
for u in range(0,1) :
for e in range(0,1) :
print (ecole[u][e]):

for n in range(2, 10): for num in range(2, 10):


for x in range(2, n): if num % 2 == 0:
if n % x == 0: print("Found an even number", num)
print(n, 'equale', x, '*', n//x) continue
break print(n,'est un nombre premier ')
else:
print(n,'est un nombre premier ')
def fib(n): def fib2(n):
a, b = 0, 1 """Donne la suite de Fibonacci de n"""
while a < n: result = []
a, b = b, a+b a, b = 0, 1
while a < n:
print(fib(10)) [Link](a)
a, b = b, a+b
return result

a) [x*x for x in range(10)]


b) [(x, y) for x in range(3) for y in range(3)]
c) eval(raw_input("Enter an arithmetic expression: "))
d) c = {}
c['x'] = 2
c['y'] = 3
eval('x * y', c)

les fonctions
chr(n)

eval(source[, globals[, locals]])

enumerate(seq)

range([start,] stop[, step])

reversed(seq)

i=5
def f(arg=i):
print(arg)
i=6
f()

Vous aimerez peut-être aussi