Vous êtes sur la page 1sur 17

Type Numérique

En Python, le type de données numérique représente les données qui ont une valeur
numérique.

§ Entiers – Elle est représentée par la classe int. Il contient des nombres entiers positifs
ou négatifs (sans fraction ni décimale).
§ Float – Elle leur est représentée par la classe float. C’est un nombre réel avec une
représentation en virgule flottante. Il est spécifié par un point décimal.
§ Nombres complexes – Il est représenté par une classe complexe. Il est spécifié
comme (partie réelle) + (partie imaginaire) j . Par exemple – 2 + 3j
>>>a = 5
>>>print("Type of a: ", type(a))
<class 'int'>
>>>b = 5.0
>>>print("\nType of b: ", type(b))
<classe 'float'>
>>>c = 2 + 4j
>>>print("\nType of c: ", type(c))
<classe 'complexe'>

Type de séquence
Chaîne
Une chaîne est une collection d’un ou plusieurs caractères placés entre guillemets.
un caractère est une chaîne de longueur un. Il est représenté par str classe.
Les chaines sont des objets non mutables (non modifiables).

SIHAM YAQINE 1
Exemples :
>>>x = "Hello World"
>>>print(x)
Hello World

>>>y = 'How are you?'


>>>print(y)
How are you?

>>>z = 'I\'m fine' # Pour faire figurer des apostrophes dans une chaîne on utilise \
>>print(z)
I'm fine

>>>z = "I'm \"fine\""


>>>print(z)
I'm "fine"

>>>x = "Hello, \nWorld" # indiquer un retour à la ligne, on utilise la chaîne \n


>>>print(x)
Hello,
World

En Python, les caractères individuels d’une chaîne sont accessibles en utilisant la méthode
d’indexation

SIHAM YAQINE 2
Exemples : Accéder aux caractères
>>>String1 = "InfraDigitalA"
>>>print("Initial String: ")
>>>print(String1)
InfraDigital
>>>print("\nFirst character of String is: ")
>>>print(String1[0])
I
>>>print("\nLast character of String is: ")
>>>print(String1[-1])
A

Sous Python, les chaînes de caractères sont des objets. On peut donc effectuer de nombreux
traitements dessus en utilisant des méthodes appropriées.

La méthode .split()
Elle découpe une chaîne de caractères en plusieurs éléments appelés champs, en utilisant
comme séparateur.

>>> animaux = " girafe tigre singe souris "


>>> animaux . split ()
['girafe ', 'tigre ', 'singe ', 'souris ']
>>> for animal in animaux . split ():
... print ( animal )
...
girafe
tigre
singe
souris

Il est possible de modifier le séparateur de champs, par exemple :

>>> animaux = " girafe : tigre : singe : souris "


>>> animaux . split (":")
['girafe ', 'tigre ', 'singe ', 'souris ']

SIHAM YAQINE 3
La méthode .find(value, start, end)
value La valeur à chercher
start Optionnel. La valeur où on commence la recherche. Par défaut 0
end Optionnel. La valeur où on termine la recherche. Par défaut la fin de la chîne.
Elle recherche une chaîne de caractères passée en argument :

>>> animal = " girafe "


>>> animal . find ("i")
1
>>> animal . find (" afe ")
3
>>> animal . find ("z")
-1
>>> animal . find (" tig ")
-1

§ Si l’élément recherché est trouvé, alors l’indice du début de l’élément dans la chaîne
de caractères est renvoyé. Si l’élément n’est pas trouvé, alors la valeur -1 est
renvoyée.
§ Si l’élément recherché est trouvé plusieurs fois, seul l’indice de la première
occurrence est renvoyé :

>>> animaux = " girafe tigre "


>>> animaux . find ("i")

>>>txt = "Hello, welcome to my world."


>>>x = txt.find("e", 5, 10)
>>>print(x)
8

La méthode . .replace(oldStr, newStr, count)


Elle substitue une chaîne de caractères par une autre :
§ oldStr(Obligatoire) : La chaîne à rechercher
§ newStr(Obligatoire) : La chaîne par laquelle remplacer l’ancienne chaîne
§ count(Optionnel) : le nombre d’occurrences de l’ancienne chaîne que vous souhaitez
remplacer. La valeur par défaut est toutes les occurrences

>>> animaux = " girafe tigre "


>>> animaux . replace (" tigre ", " singe ")
'girafe singe '
>>> animaux . replace ("i", "o")
'gorafe togre '

SIHAM YAQINE 4
>>>str = "Alex Alex Alex Bob"
>>>res = str.replace("Alex", "Emily", 2)
>>>print(res)
Emily Emily Alex Bob

Les méthodes .lower() et .upper()


Les méthodes .lower() et .upper() renvoient un texte en minuscule et en majuscule
respectivement.

Exemples:

>>>str = "Welcome To ID!"


>>>x = str.upper()
>>>print(x)
WELCOME TO ID!

>>>str = "Welcome To TRI!"


>>>x = str.lower()
>>>print(x)
welcome to tri!

SIHAM YAQINE 5
Les Listes
• C’est une structure de données mutable qui permet de stocker une séquence d’éléments
hétérogènes.
• Les éléments d’une liste sont indicés par des entiers à partir de 0
• L’accès à un élément peut aussi se faire en parant de la fin, en faisant figurer le signe moins
(-) devant l’indice
Syntaxe :
[Var1, Var2, Var3, ….]

Exemples :
>>>lst = [1, 2, 'abc', 'def', [4, 5]] #Créer une liste avec différents types d'éléments.
>>> type(lst)
List
>>> type(lst[2])
Str
>>>lst[0]
1
>>>lst[-1]
[4, 5]

lorsque l’on définit une séquence d’éléments avec liste[début:fin], cela désigne l’ensemble
contigu d’éléments d’indices : début ≤ indice ≤ fin-1 , ce qui correspond à un nombre
d’éléments égal à fin – début.
Exemple :
>>>lst[1 :3]
[2, ‘abc’]
>>> lst[0 :2]
[1, 2]
>>>lst[2: ]
[]

Méthodes pour ajouter des éléments :


les méthodes .append() et .insert() permettent d’ajouter un élément dans une liste.

• Un élément à la fois :
o Liste.append(obj)
# ajoute obj
à la fin de Liste.
o List.insert(i ; obj)
# ajoute obj
à la position i dans
Liste.
• Plusieurs éléments à la
fois :
o À la fin avec : Liste.extend([elem….]) ou liste+=[elem...]
o Au début avec : liste[:0]=[elem...]

SIHAM YAQINE 6
Exemples :
>>>lst = [1, 2, 'abc', 'def', [4, 5]]
>>>lst.append(9) # ajoute 9 à la fin de la liste
>>>lst
[1, 2, ‘abc’, ‘def’, [4, 5], 9]
>>> lst += [‘A’] # ajoute ‘A’ à la fin de la liste, c’est une autre méthode
>>>lst
[1, 2, ‘abc’, ‘def’, [4, 5], 9, ‘A’]
>>>lst.insert(o, ‘x’) # ajoute ‘x’ à la première position
>>>lst
[‘x’, 1, 2, ‘abc’, ‘def’, [4, 5], 9, ‘A’]

>>> L=[1,2,3] # créer une liste L


>>>L.expend([‘a’, ‘b’])
>>>L
[1, 2, 3, ‘a’, ‘b’]
>>>L.extend(’ID’)
>>>L
[1,2,3,’a’, ‘b’, ‘I’, ‘D’]
>>>L.expend([‘coucou’, 4])
>>>L
[1,2,3,’a’, ‘b’, ‘I’, ‘D’, ‘coucou’, 4]
>>>L.extend(67)
TypeError: ’int’ object is not iterable

Méthodes pour supprimer des éléments :


• La méthode L.remove(obj) supprime la première occurrence de obj.
• La méthode L.pop() supprime le dernier élément dans L et le retourne.
• La méthode L.pop(i) supprime l’élément à la position i et le retourne.
• La fonction del(liste[...]) supprime un ou plusieurs éléments.

Exemples :
>>>L
[1,2,3,’a’, ‘b’, ‘I’, ‘D’, ‘a’, ‘coucou’, 4]
>>>L.remove('a') # supprime le 1er élément = ‘a’
[1,2,3, ‘b’, ‘I’, ‘D’, ‘a’, ‘coucou’, 4]
>>>L.remove('a') # supprime l’autre élément = ‘a’
[1,2,3, ‘b’, ‘I’, ‘D’, ‘coucou’, 4]
>>>.pop() # supprime le dernier élément = 4
4
>>>L
[1,2,3, ‘b’, ‘I’, ‘D’, ‘coucou’]
>>>L.pop(1) # supprime l’élément de la position 1 = 2
2
>>>L
[1, 3, ‘b’, ‘I’, ‘D’, ‘coucou’]

SIHAM YAQINE 7
>>> Lst=[1,2,3,4,5,6]
>>> del Lst[4] # supprime l’élément de la position 4, équivalent à L.pop(4)
>>>Lst
[1,2,3,4,6]
>>> del Lst[2:4] # supprime plusieurs éléments, de la position 2 et 3
>>>Lst
[1,2,6]
>>>del(Lst[1:]) # supprime les éléments de 1 à Fin
>>>Lst
[1]

Remplacer des éléments


Exemples :
>>> L=[1,2,3,4,’a’,’b’,’c’,’d’]
>>> L[4]=’A’
>>>L
[1,2,3,4,’A’,’b’,’c’,’d’]
>>>L[2:4]=30,40
>>>L
[1,2,30,40,’A’,’b’,’c’,’d’]

Autres méthodes et fonctions


Exemples :
>>> lst = [4, 1, 3, 2] # Création de la liste
>>> len(lst) # nombre d’éléments de la liste
4
>>>min(lst) # le plus petit élément
1
>>>max(lst) # le plus grand élément
4
# min & max utilisable que si collection mêmes types

>>>2 in lst # test si un élément existe dans la liste.


True
>>>7 in lst
False
>>>lst.index(3) # position de la 1ère occurrence de 3
2

>>>L=[1,8,3,4,9,5,2]
>>>L.sort()
>>>L
[1,2,3,4,5,8,9]
>>>L.reverse()
>>>L
[9,8,5,4,3,2,1]

SIHAM YAQINE 8
Création de liste - Par énumération
Par énumération en utilisant la méthode list(iterable).

En Python, la fonction range() retourne une liste de nombres en prenant de 1 a 3 entiers :


start, stop et step.
Exemple1 : range avec un seul paramètre, on lui donne un stop.
for i in range(3):
print(i)
Qui affichera à l’écran …
0
1
2

Exemple2 : range avec deux paramètres, on lui donne un start et un stop.


for i in range(2, 8):
print(i)
Qui affichera à l’écran …
2
3
4
5
6
7

Exemple3 : range avec trois paramètres, on lui donne un start, un stop et un step.
for i in range(3, 10, 2):
print(i)
Qui affichera à l’écran …
3
5
7
9

Exemples :
>>> L=list(range(0,11)) # Création de la liste en utilisantlist( range())
>>>L
[0,1,2,3,4,5,6,7,8,9,10]

>>> L=list(range(0,11,2) # Création de la liste en utilisant list(range()) avec pas=2


>>>L
[0,2,4,6,8,10]

>>>L=list(’Bonjour’) # Création de la liste en utilisant list()


>>>L
[’B’,’o’,’n’,’j’,’o’,’u’,’r’]

SIHAM YAQINE 9
Création de liste – Par compréhension
La création de liste par compréhension permet de parcourir un objet itérable en renvoyant
une liste.
Exemples :
>>> L=[i*2 for i in range(0,11)]
>>>L
[0,2,4,6,8,10,12,14,16,18,20]

>>> L=[i for i in ’Bonjour’]


>>>L
[’B’,’o’,’n’,’j’,’o’,’u’,’r’]

>>> L=[i+i for i in ’Bonjour’]


>>>L
[’BB’,’oo’,’nn’,’jj’,’oo’,’uu’,’rr’]

>>> L=[i for i in range(0,11) if i%2==0]


>>>L
[0,2,4,6,8,10]

>>> L=[i for i in ’Bonjour’ if i==’B’ or i==’j’]


>>>L
[’B’,’j’]

Parcourir de liste
Exemple1 :
L=[1, ’a’, ’coucou’,4]
for i in range(len(L)):
print(L[i])
Affichage :
1
’a’
’coucou’
4

Exemple2 :
L=[1, ’a’, ’coucou’,4]
for i in L:
print(i)
Affichage :
1
’a’
’coucou’
4

SIHAM YAQINE 10
Mutabilité
Exemple1 :
>>>a=1
>>>b=a
>>>a=2 # on modifie a
>>>a
2
>>>b # b n’a pas été modifié
1

Exemple2 :
>>> a = [1, 2, 3]
>>>b=a
>>>a[0]=’foo’ # on modifie la liste a
>>>a
[‘foo’, 2, 3]
>>>b
[‘foo’, 2, 3] # la liste b a aussi été modifiée !

Il existe en Python deux types d’objets : les objets mutables et les objets immutables.

Un objet est dit mutable si on peut changer sa valeur après sa création. Il est dit immutable
dans le cas contraire.

Objets immutables
Entiers, flottants, complexes, tuples, chaînes de caractères, …
Objets mutables
Listes, dictionnaires, …

Remarque : Bien souvent, on veut copier une liste dans un nouvel objet pour qu’il ne subisse
pas les modifications de l’objet initial. Pour cela, il y’a plusieurs possibilités :
• le slicing [:] ;
• l’utilisation de la méthode copy ;
• l’utilisation du constructeur list.

Exemples :
>>>liste1 = [1, 2, 3]
>>>liste2 = liste1[:]
>>>liste3 = liste1.copy()
>>>liste3 = liste1.copy()
>>>liste1[0] = 'toto'
>>>liste1, liste2, liste3, liste4
(['toto', 2, 3], [1, 2, 3], [1, 2, 3], [1, 2, 3])
# liste1 a été modifiée mais pas les autres listes

SIHAM YAQINE 11
Copie superficielle/profonde
Si une liste contient des objets eux-mêmes mutables, la copie que nous venons d’effectuer est
insuffisante.
è Copie superficielle

Exemple1 :
>>>L1=[[1,2,3],[4,5,6]]
>>>L2=L1[:]
>>>L1.append(56)
>>>L1,L2
[[1,2,3],[4,5,6],56],[[1,2,3],[4,5,6]]
>>>L1[0].append(66)
>>>L1,L2
[[1,2,3,66],[4,5,6],56],[[1,2,3,66],[4,5,6]]

Solution : effectuer une copie profonde, en utilisant la fonction deepcopy du module copy.

Exemple2 :
>>>L3=c.deepcopy(L1)
>>> id(L1[0])==id(L3[0]) # id renvoie l’emplacement en mémoire d’un objet
False
>>>L1[0].append(80)
>>>L1,L3
[[1,2,3,66,80],[4,5,6],56],[[1,2,3,66],[4,5,6],56]

Exercice0 :
Écrire un programme qui créé une liste d’au moins 5 entiers puis successivement :
affiche la valeur de L[4]
modifie la liste en remplaçant L[1] par 17 et L[3] par la somme des cases voisines L[2] et L[4]
affiche 12 fois la valeur du dernier terme de la liste

Exercice1:
Écrire un algorithme python pour afficher tous les éléments d'une liste donnée de deux
manières différentes.

Solution0 :

SIHAM YAQINE 12
Solution1 :

Exercice2 :
Écrire un algorithme Python permettant d'échanger le premier élément avec le dernier
élément d'une liste donnée.
Exemple: si

Solution2 :

SIHAM YAQINE 13
Exercice3 :
Étant donné une liste d'entiers L, écrire un programme en Python qui renvoie la somme des
éléments de la liste L.

Solution3 :

Tuple
Un tuple est une liste qui ne peut plus être modifiée.
C’est une suite d’objets de type hétérogène, délimitée par des parenthèses.

La syntaxe :
Nom_tuple = ()

Exemples :
>>>T0=tuple(); # ou bien T0=() Tuple vide
>>>T1=("ID",) #créer un tuple avec une seule valeur. On ajoute virgule à la fin
>>> T1 = (1, "ok", "toto") #créer un tuple avec des valeurs
>>>tuple1=1,7,9 #créer un tuple avec des valeurs, les () ne sont pas obligatoire
>>>tuple1
(1,7,9)

>>> T1 = (1, "ok", "toto", 6, 8)


>>>T1[0] #Accéder au premier élément du tuple
1
>>>T1[-1] #Accéder au dernier élément du tuple
8

>>>T1[1]= "A" #les tuples sont non modifiables.


TypeError: 'tuple' object does not support item assignment

SIHAM YAQINE 14
è On peut également créer un tuple par énumération, en utilisant la méthode tuple avec,
en paramètre, un objet itérable : T=tuple(iterable)
è La création de tuple par compréhension est également possible.
Exemple :

>>>T=tuple(’Bonjour’);T
(’B’, ’o’, ’n’, ’j’, ’o’, ’u’, ’r’)

>>>T=tuple(range(11));T
(0,1,2,3,4,5,6,7,8,9,10)

>>>T=tuple([1,6, [’Bonjour’, 65]]);T


(1,6,[’Bonjour’,65])

>>>T=tuple((i,i) for i in range(11) if i%2==0);T


((0,0), (2,2), (4,4), (6,6), (8,8), (10,10))

Conversion - Transtypage
• Les méthodes list(), str() et tuple() sont des méthodes de création respectivement de liste,
de chaine et de tuple.
• Ces méthodes peuvent également être considérées comme des méthodes de transtypage,
c’est-à-dire de conversion de types.

Exemple :
>>>T=(1, ’Bonjour’, 80 )
>>>L=list(T);L
[1,’Bonjour’,80]
>>>L=[’Bonjour’, 14, [’coucou’, 15], (67, ’salut’)]
>>>T=tuple(L);T
(’Bonjour’, 14, [’coucou’, 15], (67, ’salut’))

Booléen
Type de données avec l’une des deux valeurs intégrées, True ou False. Il est indiqué par la
classe bool.

Remarque – True et False avec les majuscules ‘T’ et ‘F’ sont des booléens valides, sinon
python générera une erreur.

SIHAM YAQINE 15
Ensemble
En Python, Set est une collection non ordonnée de type de données qui est itérable,
modifiable et ne contient aucun élément en double. L’ordre des éléments dans un ensemble
n’est pas défini bien qu’il puisse être composé de divers éléments.

Exemples : création
set1 = set()

Voyelles = set(["a", "e", "i", "o", "u", "y"])

ensemble1 = set({77, 23, 91, 271, 987, 852}) #Créer un ensemble à partir d’un ensemble

ensemble1 = set("123456abcdefghij") #Créer un ensemble à partir d’une chaîne

ensemble1 = set(['formation', 'site', 'apcpedagogie.com', 12, 12.12])


#Créer un ensemble à partir d’une liste

ensemble1 = set(('formation', 'site', 'apcpedagogie.com', 12, 12.12))


#Créer un ensemble à partir d’un tuple

Les dictionnaires

SIHAM YAQINE 16
SIHAM YAQINE 17

Vous aimerez peut-être aussi