Vous êtes sur la page 1sur 51

Langage Python

Présentation
• développé en 1989 par Guido van Rossum
• open-source
• portable
• orienté objet
• dynamique
• extensible
• support pour l'intégration d'autres langages

ASSALE Adjé Louis Langage Python 1


Langage Python
Présentation
• Langage pseudo-interprété

• Avantage
 Permet de tester n’importe quel petit bout de code

• Inconvénient
 Peut être lent

ASSALE Adjé Louis Langage Python 2


Langage Python
Présentation
• Les différentes implémentations
 Cpython Implémentation de base basé sur le langage C ANSI
 Jython Implémentation permettant de mixer Python et java dans
la même JVM
 IronPython Implémentation permettant d'utiliser Python pour
Microsoft .NET
 PyPy Implémentation de Python en Python
 CLPython Implémentation de Python en Common Lisp

• Les différentes versions


 Il existe 2 versions 2.x et 3.x – on utilisera Python 3.x

ASSALE Adjé Louis Langage Python 3


Langage Python
Présentation
• L’interpréteur classique

• Options utiles de l’interpréteur classique


 -c : exécute la commande Python entrée après,
 -i : passe en mode intéractif après avoir exécuter un
script ou une commande,
 -d : passe en mode debug.

ASSALE Adjé Louis Langage Python 4


Langage Python
Présentation
• Utilisation d’une distribution telle que Pyzo
 C’est un ensemble de logiciels formant un tout :
 Un interpréteur Python
 Un shell évolué

ASSALE Adjé Louis Langage Python 5


Langage Python
Présentation
• Utilisation d’une distribution telle que Pyzo
 On peut inclure d’autres interpréteur Python

ASSALE Adjé Louis Langage Python 6


Langage Python
Présentation
• Que peut-on faire avec Python?
 Web (Django, TurboGears, Zope, Plone, ...)
 bases de données (MySQL, PostgreSQL, Oracle, ...)
 Réseaux (TwistedMatrix, PyRO, ...)
 Gui (Gtk, Qt, Tcl/Tk, WxWidgets)
 représentation graphique (gnuplot, matplotlib, VTK, ...)
 calcul scientifique (numpy, scipy, sage, ...)
 ...

ASSALE Adjé Louis Langage Python 7


Langage Python
Présentation
• Pourquoi Python pour le calcul scientifique
 peut être appris en quelques jours
 permet de faire des tests rapides
 alternative à Matlab, Octave, Scilab, ...
 parallélisation
 tourne sur la plupart des plateformes
 très bon support pour le calcul scientifique

ASSALE Adjé Louis Langage Python 8


Langage Python
Types simples et opérations de base
• Nombres et booléens
 Entiers (32 bits)
 Entiers longs (précision illimitée)
 Réels (64 bits)
 Complexes : 3 +4j, 3 + 4J
 Booléen : True False

• Opérations de base
 Affectation : i = 3 – a, pi = True, 3.1415 – k = r = 2.15
 Affichage dans l’interpréteur :
 >>>i - affiche le contenu de i
 >>>print(i) – affiche le contenu de i 9
Langage Python
Types simples et opérations de base
• Opérations de base
 Opérateurs : +, -, *, /, %, //
 Opérateurs puissance, valeur absolue : **, pow, abs
 Opérateurs de comparaison : ==, is, !=, is not, >, >=, <, <=
 Opérateurs bitwise : &, ^, |, <<, >>
 Opérateurs logiques : or, and, not

• Entrées/Sorties élémentaires -- input et print


 print (var, …) : permet afficher le contenu de la variable var
 Var = (type) input(message) : permet de lire une valeur et
l’affecter à var, par défaut le type de la valeur lue est chaine de
caractères, donc nécessaire de convertir dans le type désiré10
Langage Python
Les structures de contrôle
• Indentation – c’est un décalage par rapport à la 1ère ligne
 Ligne d'en-tête:
première instruction du bloc
...
dernière instruction du bloc
 Exemple
 a = -150
if a<0 :
print ('a est négatif’)
 Indentation générale
 Fonctionnement par bloc =>

ASSALE Adjé Louis Langage Python 11


Langage Python
Les structures de contrôle
• Indentation – code sur plusieurs lignes
 Cas 1
 >>> a = 2 + \
... 3*2
 Cas 2
 >>> l = [1,
... 2]
 >>> d = { 1:1,
... 2:2}
 >>> b = 2*(5 +
... 5*2)

ASSALE Adjé Louis Langage Python 12


Langage Python
Les structures de contrôle
• if, elif, else
 format général
 Exemple 1 :
a=10
if a>0:
print(‘a est strictement positif’)
if a >= 10:  Exemple 2
print(‘a est un nombre’)
else:
L = [1, 3, 6, 8]
print(‘a est un chiffre’)
if 9 in L:
a+=1
print(‘9 est dans la liste L’)
elif a is not 0:
else:
print (‘a est strictement négatif’)
L.append(9)
else:
print(‘a est nul’)

ASSALE Adjé Louis Langage Python 13


Langage Python
Les structures de contrôle
• while
 format général

 Divers éléments :
 break : sort de la boucle sans passer par else,
 continue : remonte au début de la boucle,
 pass : ne fait rien,
 else : lancé si et seulement si la boucle se termine normalement.

ASSALE Adjé Louis Langage Python 14


Langage Python
Les structures de contrôle
• while
 Exemples
 Boucle infinie :
 Teste si y est premier :
x=y/2
while x > 1:
if y % x == 0:
print(y, ‘est facteur de’, x)
break
x = x-1
else:
print(y, ‘est premier’)

ASSALE Adjé Louis Langage Python 15


Langage Python
Les structures de contrôle
• for … in range(n, m, p)
 Format général Exemples

 Remarque : pour un grand nombre d’éléments, il est préférable


d’utiliser xrange plutôt que range

ASSALE Adjé Louis Langage Python 16


Langage Python
Les structures de contrôle
• zip et map
 Définition
 zip : permet de parcourir plusieurs séquences en parallèle
 map : applique une méthode sur une ou plusieurs séquences
 Remarque : map peut être beaucoup plus rapide que l’utilisation
de for
 Exemples
S1 = 'abc'
L1 = [1, 2, 3] S = '0123456789’ S2 = 'xyz123’
L2 = [4, 5, 6] print( map(int, S)) print(zip(S1, S2))
for (x, y) in zip(L1, L2):
print(map(None, S1, S2))
print (x, y, '--', x + y)

ASSALE Adjé Louis Langage Python 17


Langage Python
Travaux pratiques N1
• Traduire en langage python les exercices 1 à 8 de la fiche
de TD

ASSALE Adjé Louis Langage Python 18


Langage Python
Types complexes et opérations de base
• Les chaines de caractères
 Se définissent entre simples quottes (') ou guillemets (")
 >>>"un exemple de chaine" ou
 >>>’un exemple de chaine’
 Pour afficher la quotte on utilise (\’)
 >>>'J\'ai une mangue’ ou "J’ai une mangue"
 Information sur plusieurs lignes
 >>>"""une chaine
…sur plusieurs
…lignes…"""
'une chaine\nsur plusieurs\nlignes …'

ASSALE Adjé Louis Langage Python 19


Langage Python
Types complexes et opérations de base
• Concaténation de chaines de caractères
 Opérateur (+)
 >>>s = 'i vaut'
 >>>i = 1
 >>>print (s + ' ‘ + str(i))
i vaut 1
 Opérateur (*)
 >>>print ('a-’*5)
a-a-a-a-a-

ASSALE Adjé Louis Langage Python 20


Langage Python
Types complexes et opérations de base
• Manipulation de chaines de caractères
 Accès aux caractères [début : fin : pas]
 >>>"bonjour"[3]; "bonjour"[-1]
'j'
'r’
 >>>"bonjour"[2:]; "bonjour"[:3]; "bonjour"[3:5]
'njour’
'bon’
'jo’
 >>>'bonjour'[-1::-1]
'roujnob'

ASSALE Adjé Louis Langage Python 21


Langage Python
Types complexes et opérations de base
• Manipulation de chaines de caractères
 Les méthodes d’une chaine
 len(s) : renvoie la taille d'une chaîne,
 s.find : recherche une sous-chaîne dans la chaîne,
 s.rstrip : enlève les espaces de n,
 s.replace : remplace une chaîne par une autre,
 s.split : découpe une chaîne,
 s.isdigit : renvoie True si la chaîne contient que des nombres, False
sinon,
 ...

ASSALE Adjé Louis Langage Python 22


Langage Python
Types complexes et opérations de base
• Chaines pour formatage de l’affichage
 Format avec opérateurs de conversion « %x »
 Syntaxe : "…%x….%y…." %(v1, v2, …)
 Autant de variables qu’il y a de « % » dans la chaine

 La lettre après le « % » correspond au type de la variable

Correspondance
%d entier x1 = 3.16
%c caractère x2 = -1
%e réel exponentiel print ("les résultats sont:\n x1=%f \n x2=%d" %(x1,x2))
%f réel décimal Cas spécifique pour les réels :
%s chaine de caractères les résultats sont:
x1 = 3.16 "%n.df" où n nombre total de chiffres
%b binaire et d nombre de chiffres après le « . »
%o octa-décimal x2 = -1
de la décimale
%x hexa-décimal
ASSALE Adjé Louis Langage Python 23
Langage Python
Types complexes et opérations de base
• Chaines pour formatage de l’affichage
 Méthode format avec opérateur de conversion « {} »
 Syntaxe : "…{}….{}….".format(v1, v2, …)
 Autant de variables qu’il y a de « {} » dans la chaine

 Entre les 2 accolades on peut mettre des informations de précision

# le format le plus simple print('Coordinates: {latitude}, {longitude}'.format


print("{0}, {1}, {2}".format('a', 'b', 'c')) ( latitude='37.24N', longitude='-115.81W’))
# sans numéro coord = (3, 5)
print('{}, {}, {}'.format('a', 'b', 'c’)) print('X: {0[0]}; Y: {0[1]}'.format(coord))
# ordre changé print('X: {0[1]}; Y: {0[0]}'.format(coord))
print('{2}, {1}, {0}'.format('a', 'b', 'c’))
# répétition a, b, c
Coordinates: 37.24N, -115.81W
print('{0}{1}{0}'.format('abra', 'cad')) a, b, c
X: 3; Y: 5
c, b, a
X: 5; Y: 3
abracadabra
ASSALE Adjé Louis 24
Langage Python
Types complexes et opérations de base
• En python, tout est objet
 dir permet de voir les objets et méthodes disponibles
 help permet d'avoir une aide
 type permet de connaître le type de l'objet
 id permet d'avoir l'adresse d'un objet
 eval permet d'évaluer une chaîne de caractères
 input et raw_input sont l'équivalent du scanf en C

• Écriture d’un script python (fichier.py) #!/usr/bin/en python


# -*- coding : utf-8 -*-
• Exécution $ python fichier.py a=2
a
 <type 'int'> 2
print (type(a), a)
ASSALE Adjé Louis Langage Python 25
Langage Python
Types complexes et opérations de base
• Liste
 C’est une séquence d’objets modifiable
 Création de la liste
 >>> liste = [] #liste vide
 >>> liste = [1, 2, 'a’] #liste de 3 éléments

>>>liste
[1, 2, 'a’]
 Création à partir de la fonction list qui prend n’importe quel objet
séquentiel (liste, chaine de caractères, etc.) et renvoie une liste
 >>>seq = "CAAAGGTAACGC
>>>list(seq)
['C', 'A', 'A', 'A', 'G', 'G', 'T', 'A', 'A', 'C', 'G', 'C']
ASSALE Adjé Louis Langage Python 26
Langage Python
Types complexes et opérations de base
• Liste
 Création de la liste
 list peut s’utiliser avec la fonction range
 >>> liste = list(range(10)) #liste générée de 10 valeurs

>>>liste
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
 Ajout d’un élément (méthode append)
 >>>liste.append["ok"]

>>>liste
[1, 2, 'a', 'ok']
 Afficher un élément d’une liste (l’index commence par 0)
 >>>liste[1]

2
ASSALE Adjé Louis Langage Python 27
Langage Python
Types complexes et opérations de base
• Liste
 Manipuler une liste
 >>> liste = [1, 2, 'a', 'ok']
 Modifier une valeur avec son index
 >>> liste[2] = 3

>>>liste
[1, 2, 3, 'ok']
 Supprimer une entrée avec son index (instruction del)
 >>>del liste[1]

>>>liste
[1, 3, 'ok']
 Supprimer une entrée avec sa valeur (méthode remove)
 >>>liste.remove("ok")

[1, 3] 28
Langage Python
Types complexes et opérations de base
• Liste
 Manipuler une liste
 Inverser/trier les valeurs d’une liste (méthodes reverse/sort)
 >>> liste = ["a", "b", "c"]

>>>liste.reverse()
['c', 'b', 'a']
 Nombre d’éléments d’une liste (fonction len)
 >>>len(liste)

3
 Nombre d’occurrences d’une valeur (méthode count)
 >>>liste = ["a","a","a","b","c","c"]

>>>liste.count("a")
3
ASSALE Adjé Louis Langage Python 29
Langage Python
Types complexes et opérations de base
• Liste
 Manipuler une liste
 Trouver l’index d’une valeur (méthode index)
 >>> liste = ["a","a","a","b","c","c"]

>>>liste.index("b")
3
 Dernière occurrence d’une liste
 >>>liste[-1]

'c'
 4 dernières occurrences d’une liste
 >>>liste [-4:]

["a", "b", "c", "c"]

ASSALE Adjé Louis Langage Python 30


Langage Python
Types complexes et opérations de base
• Liste
 Manipuler une liste
 Affichage de toutes les occurrences
 >>> liste[:]

["a","a","a","b","c","c"]
>>>liste[2:4]=[10,30]
["a","a",10,30,"c","c"]
>>>liste[:]=[] #vide la liste
[]
 Boucler sur une liste >>>for cara in enumerate(liste)
…. Print(cara)
 >>>liste = [1, 2, "b"] 1 (0, 1)
>>>for cara in liste 2 (1, 2)
… print(cara) 'b' (2, 'b')
ASSALE Adjé Louis Langage Python 31
Langage Python
Types complexes et opérations de base
• Liste
 Manipuler une liste
 Copier une liste
 >>> x = [1, 2, 3]

>>>y = x #attention!!! x et y référencent le même objet


>>>y[0] = 4
>>>x
[4, 2, 3]
 >>>x = [1, 2, 3] >>>x = [1, 2, 3]
>>>y = x[:] >>>y = list(x)
>>>y[0] = 9 >>>y[0] = 9
>>>x >>>x
[1, 2, 3] [1, 2, 3]
>>>y >>>y
[9, 2, 3] [9, 2, 3] 32
Langage Python
Types complexes et opérations de base
• Liste
 Manipuler une liste
 Transformer une chaine en liste et vis versa (méthodes split et join)
 >>> ma_chaine = "ASSALE:Adjé:Louis"

>>>ma_chaine.split(":")
['ASSALE', 'Adjé', 'Louis']
>>>liste = ["ASSALE", "Adjé", "Louis"]
>>>":".join(liste)
'ASSALE:Adjé:Louis'
 Vérifier si un élément est dans une liste (opérateur in)
 >>>liste = [1, 2, 4, 5, 10]

>>>4 in liste
True
ASSALE Adjé Louis Langage Python 33
Langage Python
Types complexes et opérations de base
• Liste
 Manipuler une liste
 Générer une liste simple de suite arithmétique (fonction range)
 >>> range(10)

[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
 >>>range(3, 14, 5)

[3, 8, 13]
 Étendre une liste (méthode extend)
 >>>x = [1, 2, 3, 4]
>>>y = [4, 5, 6, 7, 8]
>>>x.extend(y)
>>>print(x)
[1, 2, 3, 4, 4, 5, 6, 7, 8]
ASSALE Adjé Louis Langage Python 34
Langage Python
Types complexes et opérations de base
• Liste
 Manipuler une liste
 Astuces
 n ième élément en partant de la fin : liste[-n]

 Les n derniers éléments d’une liste : liste[-n:]

 Tous les éléments de p à n-1 : liste[p:n]

 Les n 1er éléments : liste[:n]

 Tout sauf les n premiers : liste[n:]

 Concaténation de 2 listes (opérateur +)


 >>>x = [1, 2, 3, 4]

>>>y = [4, 5, 6, 7, 8]
>>>x + y
[1, 2, 3, 4, 4, 5, 6, 7, 8] 35
Langage Python
Types complexes et opérations de base
• Liste
 Manipuler une liste
 Duplication des éléments d’une liste (opérateur *)
 >>>x = [1, 2]

>>>x*5
[1, 2, 1, 2, 1, 2, 1, 2, 1, 2]
 >>>[0]*5

[0, 0, 0, 0, 0]
 Liste en compréhension
 >>>a = [1, 4, 2, 7, 1, 9, 0, 3, 4, 6, 6, 6, 8, 3]

>>> [x for x in a if x > 5] Exécuter une fonction sur chq élément


[7, 9, 6, 6, 6, 8] >>> items = ["5", "10", "15"]
>>> items = [int(x) for x in items]
>>> print(items)
ASSALE Adjé Louis Langage Python 36
[5, 10, 15]
Langage Python
Types complexes et opérations de base
• Les listes – les méthodes
 len(L) : taille de la liste
 L.sort : trier la liste L
 L.append : ajout d'un élément à la n de la liste L
 L.reverse : inverser la liste L
 L.index : rechercher un élément dans la liste L
 L.remove : retirer un élément de la liste L
 L.pop : retirer le dernier élément de la liste L
 ...

ASSALE Adjé Louis Langage Python 37


Langage Python
Travaux Pratiques N2
• Exercice 1
 Voir fiche TP_listes

• Exercice 2
 Traduire en python les algo des exercices 9 à 13 de la fiche de
TD

ASSALE Adjé Louis Langage Python 38


Langage Python
Types complexes et opérations de base
• Tuple
 C’est aussi une séquence d’objets mais non modifiable
 création
 Tuple vide
 >>>x = ()

 Tuple avec des valeurs


 >>>x = (1, "a", 4) ou >>>x = 1, "a", 4

 Tuple avec 1 seule valeur


 >>>a = ("ok",)

 À partir de la fonction tuple qui est comme la fonction list


 >>>tuple([1, 2, 3])

(1, 2, 3)
ASSALE Adjé Louis Langage Python 39
Langage Python
Types complexes et opérations de base
• Tuple
 Manipuler un tuple
 Afficher une valeur d’un tuple à partir de son index
 >>>x[1]

'a'
 Concaténation : opérateurs (*) et (+)
 >>>(1, 2)*3

(1, 2, 1, 2, 1, 2)
 >>>t1, t2 = (1, 2, 3), (4, 5)
>>>t1+t2
(1, 2, 3, 4, 5)

ASSALE Adjé Louis Langage Python 40


Langage Python
Types complexes et opérations de base
• Tuple
 Manipuler un tuple
 On ne peut pas changer la valeur d’un index
 >>>x[1] = "ok" # erreur un tuple est non modifiable

 À quoi sert un tuple


 Affectation multiple

>>>v1, v2 = 11, 22
>>>v1
11
>>>v2 12
 Il sert à renvoyer plusieurs valeurs lors de l’appel d’une fonction

>>>def fonc():
… return x, y
ASSALE Adjé Louis Langage Python 41
Langage Python
Types complexes et opérations de base
• Dictionnaire
 Ensemble de paires clé-valeur
 Création de dictionnaire
 Dictionnaire vide
 >>>a = {} ou >>>a = dict()

 La fonction dict convertir l’argument qui lui est passé en dictionnaire.


L’argument doit être un objet séquentiel de 2 objets séquentiels
>>> liste_animaux = [["girafe", 2], ["singe", 3]]
>>> dict(liste_animaux)
>>> tuple_animaux = (("girafe", 2), ("singe", 3))
{'girafe': 2, 'singe': 3}
>>> dict(tuple_animaux)
{'girafe': 2, 'singe': 3}
42
Langage Python
Types complexes et opérations de base
• Dictionnaire
 Manipuler un dictionnaire
 Ajouter des valeurs
 >>>a={}

 >>>a["nom"] = "Assalé"

>>>a["prénom"] = "Louis
>>>a {'nom' : 'Assalé', 'prénom' : 'Louis'}
 Récupérer une valeur par clé (méthode get)
 >>>a.get("nom") 'Assalé'
 #si clé introuvable on peut préciser valeur à retournée par défaut

>>>a.get("adresse", "Adresse inconnue") 'Adresse inconnue'


 Vérifier la présence d’une clé (méthode has_key)
 >>>a.has_key("nom") True 43
Langage Python
Types complexes et opérations de base
• Dictionnaire
 Manipuler un dictionnaire
 Supprimer une entrée par clé (instruction del)
 >>>del a.["nom"]

{'prénom' : 'Louis'}
 Récupérer les clés d’un dictionnaire (méthode keys)
 >>>fiche = {"nom" : "Assalé", "prénom" : "Louis"}

>>>for cle in fiche.keys(): nom


… print(cle) prénom
 Récupérer les valeurs (méthode values)
 >>>for valeur in fiche.values(): Assalé
… print(valeur) Louis
ASSALE Adjé Louis Langage Python 44
Langage Python
Types complexes et opérations de base
• Dictionnaire
 Manipuler un dictionnaire
 Récupérer les clés et valeurs d’un dictionnaire (méthode items)
 >>>fiche = {"nom" : "Assalé", "prénom" : "Louis"}

>>>for cle, valeur in fiche.items(): nom Assalé


… print(cle, valeur) Prénom Louis
 items itère comme enumerate pour les listes et tuples

 Utiliser tuples comme clé dans dictionnaire


 >>>b = {}
>>>b[(3, 2)] = 12
>>>b[(4, 5)] = 13
>>>b
{(4, 5) : 13, (3, 2) : 12}
ASSALE Adjé Louis Langage Python 45
Langage Python
Types complexes et opérations de base
• Dictionnaire
 Manipuler un dictionnaire
 Copier indépendamment un dictionnaire (méthode copy)
 >>>fiche = {"nom" : "Assalé", "prénom" : "Louis"}

 Copie liée

>>>fiche2 = fiche
>>>fiche["nom"] = "XXX"
>>>fiche2
{'prénom' : 'Louis', 'nom' : 'XXX'}
 Copie indépendante

>>>fiche2 = fiche.copy()
>>>fiche["nom"] = "XXX"
>>>fiche2
{'prénom' : 'Louis', 'nom' : 'Louis'}
ASSALE Adjé Louis Langage Python 46
Langage Python
Types complexes et opérations de base
• Dictionnaire
 Manipuler un dictionnaire
 Fusionner 2 dictionnaires (méthode update)
 >>>fiche1 = {"nom" : "Assalé"}

>>>fiche2 = {"prénom" : "Louis"}


>>>fiche1.update(fiche2)
>>>print(fiche1)
{'prénom' : 'Louis', 'nom' : 'Louis'}

ASSALE Adjé Louis Langage Python 47


Langage Python
Types complexes et opérations de base
• Les dictionnaires – les méthodes
 len(dico) : taille du dictionnaire
 dico.keys : renvoie les clés du dictionnaire sous forme de liste
 dico.values : renvoie les valeurs du dictionnaire sous forme de
liste
 dico.has_key : renvoie True si la clé existe, False sinon
 dico.get : donne la valeur de la clé si elle existe, sinon une valeur
par défaut
 ...

ASSALE Adjé Louis Langage Python 48


Langage Python
Types complexes et opérations de base
• Les ensembles (Set)
 Un set est une séquence d’objets non modifiable, non ordonnée
et ne contenant au maximum qu’une seule copie d’un objet
 Création d’ensemble
 Ensemble vide ensemble d’éléments
 >>>s = set() >>>s = {1,4,0,3,1}
>>>s {} >>>s {0,1,3,4}
 La fonction set permet de générer un ensemble à partir d’une séquence
>>>set([1,4,2,1]) >>>set((2,2,2,1))
{1,2,4} {1,2}
>>>set(range(5)) >>> set({"clé1": 1, "clé2": 2})
{0,1,2,3,4} {'clé1', 'clé2’}
>>> set(["ti", "to", "to"]) >>> set("Maître corbeau")
{'ti', 'to’} {'t', 'b', 'a', 'î', 'u', 'M', 'o', 'c', ' ', 'e', 'r'}49
Langage Python
Types complexes et opérations de base
• Les ensembles (Set)
 Manipuler des sets
 Un set est non ordonné donc non indexable
 >>>s = set([1,4,0,3,1])

>>>s[1]  erreur
 Un set est itérable
>>> s = set([1,4,0,3,1])
>>>for elt in s:
… print(elt)
 Opérateurs mathématiques | (union), & (intersection) et – (différence)
>>> l = [3, 3, 5, 1, 3, 4, 1, 1, 4, 4] >>> set(l) | set(l2)
>>> l2 = [3, 0, 5, 3, 3, 1, 1, 1, 2, 2] {0,1,2,3,4,5}
>>> set(l) & set(l2) >>> set(l) – set(l2)
{1,3,5} {4} 50
Langage Python
Travaux Pratiques N3
• Voir fiche TD Listes-Tuples-Dictionnaires

ASSALE Adjé Louis Langage Python 51

Vous aimerez peut-être aussi