Types de données Python

Dans ce didacticiel, vous découvrirez les différents types de données que vous pouvez utiliser en Python.

Types de données en Python

Chaque valeur en Python a un type de données. Puisque tout est un objet dans la programmation Python, les types de données sont en fait des classes et les variables sont des instances (objets) de ces classes.

Il existe différents types de données en Python. Certains des types importants sont énumérés ci-dessous.

Numéros Python

Les entiers, les nombres à virgule flottante et les nombres complexes relèvent de la catégorie des nombres Python. Ils sont définis comme int, floatet les complexclasses en Python.

Nous pouvons utiliser la type()fonction pour savoir à quelle classe appartient une variable ou une valeur. De même, la isinstance()fonction est utilisée pour vérifier si un objet appartient à une classe particulière.

 a = 5 print(a, "is of type", type(a)) a = 2.0 print(a, "is of type", type(a)) a = 1+2j print(a, "is complex number?", isinstance(1+2j,complex)) 

Production

5 est de type 2.0 est de type (1 + 2j) est un nombre complexe? Vrai

Les entiers peuvent être de n'importe quelle longueur, ils ne sont limités que par la mémoire disponible.

Un nombre à virgule flottante est précis jusqu'à 15 décimales. Les nombres entiers et les virgules flottantes sont séparés par des points décimaux. 1 est un entier, 1.0 est un nombre à virgule flottante.

Les nombres complexes sont écrits sous la forme x + yj,, où x est la partie réelle et y est la partie imaginaire. Voici quelques exemples.

 >>> a = 1234567890123456789 >>> a 1234567890123456789 >>> b = 0.1234567890123456789 >>> b 0.12345678901234568 >>> c = 1+2j >>> c (1+2j) 

Notez que la floatvariable b a été tronquée.

Liste Python

La liste est une séquence ordonnée d'éléments. C'est l'un des types de données les plus utilisés en Python et il est très flexible. Il n'est pas nécessaire que tous les éléments d'une liste soient du même type.

Déclarer une liste est assez simple. Les éléments séparés par des virgules sont placés entre crochets ( ).

 a = (1, 2.2, 'python') 

Nous pouvons utiliser l'opérateur de découpage ( )pour extraire un élément ou une plage d'éléments d'une liste. L'index commence à 0 en Python.

 a = (5,10,15,20,25,30,35,40) # a(2) = 15 print("a(2) = ", a(2)) # a(0:3) = (5, 10, 15) print("a(0:3) = ", a(0:3)) # a(5:) = (30, 35, 40) print("a(5:) = ", a(5:)) 

Production

 a (2) = 15 a (0: 3) = (5, 10, 15) a (5 :) = (30, 35, 40) 

Les listes sont modifiables, ce qui signifie que la valeur des éléments d'une liste peut être modifiée.

 a = (1, 2, 3) a(2) = 4 print(a) 

Production

 (1, 2, 4) 

Tuple Python

Tuple est une séquence ordonnée d'éléments identiques à une liste. La seule différence est que les tuples sont immuables. Les tuples une fois créés ne peuvent pas être modifiés.

Les tuples sont utilisés pour protéger les données en écriture et sont généralement plus rapides que les listes car ils ne peuvent pas changer dynamiquement.

Il est défini entre parenthèses ()où les éléments sont séparés par des virgules.

 t = (5,'program', 1+3j) 

Nous pouvons utiliser l'opérateur de découpage ()pour extraire des éléments mais nous ne pouvons pas changer sa valeur.

 t = (5,'program', 1+3j) # t(1) = 'program' print("t(1) = ", t(1)) # t(0:3) = (5, 'program', (1+3j)) print("t(0:3) = ", t(0:3)) # Generates error # Tuples are immutable t(0) = 10 

Production

 t (1) = programme t (0: 3) = (5, 'programme', (1 + 3j)) Traceback (dernier appel en dernier): Fichier "test.py", ligne 11, en t (0) = 10 TypeError: l'objet 'tuple' ne prend pas en charge l'attribution d'éléments 

Chaînes Python

La chaîne est une séquence de caractères Unicode. Nous pouvons utiliser des guillemets simples ou des guillemets doubles pour représenter des chaînes. Les chaînes multilignes peuvent être désignées par des guillemets triples, '''ou """.

 s = "This is a string" print(s) s = '''A multiline string''' print(s) 

Production

 Ceci est une chaîne Une chaîne multiligne 

Tout comme une liste et un tuple, l'opérateur de découpage ( )peut être utilisé avec des chaînes. Les chaînes, cependant, sont immuables.

 s = 'Hello world!' # s(4) = 'o' print("s(4) = ", s(4)) # s(6:11) = 'world' print("s(6:11) = ", s(6:11)) # Generates error # Strings are immutable in Python s(5) ='d' 

Production

 s (4) = os (6:11) = world Traceback (dernier appel en dernier): File "", ligne 11, dans TypeError: l'objet 'str' ne prend pas en charge l'attribution d'éléments 

Ensemble Python

Set est une collection non ordonnée d'objets uniques. L'ensemble est défini par des valeurs séparées par des virgules entre accolades ( ). Les articles d'un ensemble ne sont pas commandés.

 a = (5,2,3,1,4) # printing set variable print("a = ", a) # data type of variable a print(type(a)) 

Production

 a = (1, 2, 3, 4, 5) 

Nous pouvons effectuer des opérations d'ensemble comme l'union, l'intersection sur deux ensembles. Les ensembles ont des valeurs uniques. Ils éliminent les doublons.

 a = (1,2,2,3,3,3) print(a) 

Production

 (1, 2, 3) 

Puisque les ensembles sont des collections non ordonnées, l'indexation n'a aucune signification. Par conséquent, l'opérateur de tranchage ()ne fonctionne pas.

 >>> a = (1,2,3) >>> a(1) Traceback (most recent call last): File "", line 301, in runcode File "", line 1, in TypeError: 'set' object does not support indexing 

Dictionnaire Python

Dictionary est une collection non ordonnée de paires clé-valeur.

Il est généralement utilisé lorsque nous avons une énorme quantité de données. Les dictionnaires sont optimisés pour récupérer des données. Il faut connaître la clé pour récupérer la valeur.

En Python, les dictionnaires sont définis entre accolades, ()chaque élément étant une paire dans le formulaire key:value. La clé et la valeur peuvent être de n'importe quel type.

 >>> d = (1:'value','key':2) >>> type(d) 

Nous utilisons la clé pour récupérer la valeur respective. Mais pas l'inverse.

 d = (1:'value','key':2) print(type(d)) print("d(1) = ", d(1)); print("d('key') = ", d('key')); # Generates error print("d(2) = ", d(2)); 

Production

 d (1) = valeur d ('key') = 2 Traceback (dernier appel le plus récent): fichier "", ligne 9, dans KeyError: 2 

Conversion entre types de données

Nous pouvons convertir entre différents types de données en utilisant différentes fonctions de conversion de type comme int(), float(), str(), etc.

 >>> float(5) 5.0 

La conversion de float en int tronquera la valeur (la rendra plus proche de zéro).

 >>> int(10.6) 10 >>> int(-10.6) -10 

La conversion vers et depuis une chaîne doit contenir des valeurs compatibles.

 >>> float('2.5') 2.5 >>> str(25) '25' >>> int('1p') Traceback (most recent call last): File "", line 301, in runcode File "", line 1, in ValueError: invalid literal for int() with base 10: '1p' 

Nous pouvons même convertir une séquence en une autre.

 >>> set((1,2,3)) (1, 2, 3) >>> tuple((5,6,7)) (5, 6, 7) >>> list('hello') ('h', 'e', 'l', 'l', 'o') 

Pour convertir en dictionnaire, chaque élément doit être une paire:

 >>> dict(((1,2),(3,4))) (1: 2, 3: 4) >>> dict(((3,26),(4,44))) (3: 26, 4: 44) 

Articles intéressants...