Conversion de Type (Type Casting)

Définition

  • En Python, la conversion de type (ou type casting) désigne le processus de conversion explicite d'une valeur d'un type de données en un autre. Python propose plusieurs fonctions intégrées pour effectuer des conversions de type.

Méthode

Fonctions de Conversion Courantes :

  • int(valeur) : Construit un nombre entier à partir d'un littéral entier, d'un littéral flottant (en supprimant/tronquant toutes les décimales), ou d'une chaîne littérale (à condition que la chaîne représente un nombre entier valide).

  • float(valeur) : Construit un nombre flottant à partir d'un littéral entier, d'un littéral flottant, ou d'une chaîne littérale (à condition que la chaîne représente un flottant ou un entier valide).

  • str(valeur) : Convertit une valeur (de presque n'importe quel type) en une chaîne de caractères.

  • bool(valeur) : Convertit une valeur en un booléen (True ou False). En général, 0, 0.0, les séquences vides (chaîne "", liste [], tuple (), etc.), les dictionnaires vides {} et None sont convertis en False. La plupart des autres valeurs sont converties en True.

  • list(iterable) : Convertit un itérable (par exemple, une chaîne, un tuple, un ensemble) en une liste.

  • tuple(iterable) : Convertit un itérable en un tuple.

  • dict(iterable_de_paires) : Convertit un itérable de paires clé-valeur (par exemple, une liste de tuples) en un dictionnaire.

  • set(iterable) : Convertit un itérable en un ensemble, en supprimant les doublons.

  • ord(caractere) : Permet de retourner la valeur Unicode (ou le code Unicode sous forme d'entier) d'un caractère donné.

  • chr(entier_unicode) : Effectue l'opération inverse de la fonction ord(). Elle prend en entrée un entier représentant une valeur Unicode et renvoie le caractère correspondant.

ExempleExemples de Conversions :

1
x = int("42")         # x = 42 (entier)
2
b = int(2.8)          # b = 2 (entier, partie décimale tronquée)
3
4
y = float("3.14")     # y = 3.14 (flottant)
5
c = float(1)          # c = 1.0 (flottant)
6
7
z = str(42)           # z = "42" (chaîne)
8
d = str(3.0)          # d = "3.0" (chaîne)
9
10
est_vrai = bool(1)    # est_vrai = True
11
est_faux = bool(0)    # est_faux = False
12
est_vrai_aussi = bool("texte non vide") # est_vrai_aussi = True
13
est_faux_aussi = bool("") # est_faux_aussi = False
14
15
ma_liste = list("hello")  # ma_liste = ['h', 'e', 'l', 'l', 'o']
16
mon_tuple = tuple([1, 2, 3]) # mon_tuple = (1, 2, 3)
17
mon_dict = dict([('cle1', 'valeur1'), ('cle2', 'valeur2')]) # mon_dict = {'cle1': 'valeur1', 'cle2': 'valeur2'}
18
19
unicode_valeur = ord('A') # unicode_valeur = 65
20
caractere_correspondant = chr(65) # caractere_correspondant = 'A'
21
22
mon_set = set([1, 2, 2, 3, 1]) # mon_set = {1, 2, 3} (les doublons sont supprimés)
23
24
print(x, type(x))
25
print(b, type(b))
26
print(y, type(y))
27
print(est_vrai, type(est_vrai))
28
print(ma_liste, type(ma_liste))