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
ouFalse
). En général,0
,0.0
, les séquences vides (chaîne""
, liste[]
, tuple()
, etc.), les dictionnaires vides{}
etNone
sont convertis enFalse
. La plupart des autres valeurs sont converties enTrue
.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 fonctionord()
. Elle prend en entrée un entier représentant une valeur Unicode et renvoie le caractère correspondant.
Exemple : Exemples de Conversions :
x = int("42") # x = 42 (entier)
b = int(2.8) # b = 2 (entier, partie décimale tronquée)
y = float("3.14") # y = 3.14 (flottant)
c = float(1) # c = 1.0 (flottant)
z = str(42) # z = "42" (chaîne)
d = str(3.0) # d = "3.0" (chaîne)
est_vrai = bool(1) # est_vrai = True
est_faux = bool(0) # est_faux = False
est_vrai_aussi = bool("texte non vide") # est_vrai_aussi = True
est_faux_aussi = bool("") # est_faux_aussi = False
ma_liste = list("hello") # ma_liste = ['h', 'e', 'l', 'l', 'o']
mon_tuple = tuple([1, 2, 3]) # mon_tuple = (1, 2, 3)
mon_dict = dict([('cle1', 'valeur1'), ('cle2', 'valeur2')]) # mon_dict = {'cle1': 'valeur1', 'cle2': 'valeur2'}
unicode_valeur = ord('A') # unicode_valeur = 65
caractere_correspondant = chr(65) # caractere_correspondant = 'A'
mon_set = set([1, 2, 2, 3, 1]) # mon_set = {1, 2, 3} (les doublons sont supprimés)
print(x, type(x))
print(b, type(b))
print(y, type(y))
print(est_vrai, type(est_vrai))
print(ma_liste, type(ma_liste))