Types de variables Python : Comprendre et utiliser les types de données
Les variables ne sont rien d'autre que des emplacements mémoire réservés pour stocker des valeurs. Cela signifie que lorsque vous créez une variable, vous réservez de l'espace en mémoire.
En fonction du type de données d'une variable, l'interpréteur alloue la mémoire et décide de ce qui peut être stocké dans la mémoire réservée. Par conséquent, en assignant différents types de données aux variables, vous pouvez stocker des entiers, des décimaux ou des caractères dans ces variables.
Affectation de valeurs aux variables
Les variables Python n'ont pas besoin de déclaration explicite pour réserver de l'espace mémoire. La déclaration se fait automatiquement lorsque vous affectez une valeur à une variable. Le signe égal (=) est utilisé pour affecter des valeurs aux variables.
L'opérande à gauche de l'opérateur = est le nom de la variable et l'opérande à droite de l'opérateur = est la valeur stockée dans la variable. Par exemple :
Démonstration en direct#!/usr/bin/python counter = 100 # Affectation d'un entier miles = 1000.0 # Un nombre à virgule flottante name = "John" # Une chaîne print counter print miles print name
Ici, 100, 1000.0 et "John" sont les valeurs affectées aux variables counter, miles et name respectivement. Cela produit le résultat suivant :
100 1000.0 John
Affectation multiple
Python vous permet d'affecter une seule valeur à plusieurs variables simultanément. Par exemple :
a = b = c = 1
Ici, un objet entier est créé avec la valeur 1, et les trois variables sont affectées au même emplacement mémoire. Vous pouvez également affecter plusieurs objets à plusieurs variables. Par exemple :
a,b,c = 1,2,"john"
Ici, deux objets entiers avec les valeurs 1 et 2 sont affectés aux variables a et b respectivement, et un objet chaîne avec la valeur "john" est affecté à la variable c.
Types de données standards
Les données stockées en mémoire peuvent être de nombreux types. Par exemple, l'âge d'une personne est stocké comme une valeur numérique et son adresse est stockée comme des caractères alphanumériques. Python a divers types de données standards qui sont utilisés pour définir les opérations possibles sur eux et la méthode de stockage pour chacun d'eux.
Python a cinq types de données standards :
- Nombres (Numbers)
- Chaîne (String)
- Liste (List)
- Tuple
- Dictionnaire (Dictionary)
Nombres Python
Les types de données numériques stockent des valeurs numériques. Les objets Number sont créés lorsque vous affectez une valeur à ceux-ci. Par exemple :
var1 = 1 var2 = 10
Vous pouvez également supprimer la référence à un objet nombre en utilisant l'instruction del. La syntaxe de l'instruction del est :
del var1[,var2[,var3[....,varN]]]]
Vous pouvez supprimer un seul objet ou plusieurs objets en utilisant l'instruction del. Par exemple :
del var del var_a, var_b
Python prend en charge quatre types numériques différents :
- int (entiers signés)
- long (entiers longs, ils peuvent aussi être représentés en octal et hexadécimal)
- float (valeurs réelles à virgule flottante)
- complex (nombres complexes)
Exemples
Voici quelques exemples de nombres :
| int | long | float | complex |
|---|---|---|---|
| 10 | 51924361L | 0.0 | 3.14j |
| 100 | -0x19323L | 15.20 | 45.j |
| -786 | 0122L | -21.9 | 9.322e-36j |
| 080 | 0xDEFABCECBDAECBFBAEl | 32.3+e18 | .876j |
| -0490 | 535633629843L | -90. | -.6545+0J |
| -0x260 | -052318172735L | -32.54e100 | 3e+26J |
| 0x69 | -4721885298529L | 70.2-E12 | 4.53e-7j |
Python vous permet d'utiliser un l minuscule avec long, mais il est recommandé d'utiliser uniquement un L majuscule pour éviter la confusion avec le chiffre 1. Python affiche les entiers longs avec un L majuscule.
Un nombre complexe se compose d'un couple ordonné de nombres réels à virgule flottante dénotés par x + yj, où x et y sont les nombres réels et j est l'unité imaginaire.
Chaînes Python
Les chaînes en Python sont identifiées comme un ensemble contigu de caractères représentés entre guillemets. Python autorise les paires de guillemets simples ou doubles. Les sous-ensembles de chaînes peuvent être pris en utilisant l'opérateur de tranche ([ ] et [:] ) avec des index commençant à 0 au début de la chaîne et allant jusqu'à -1 à la fin.
Le signe plus (+) est l'opérateur de concaténation de chaînes et l'astérisque (*) est l'opérateur de répétition. Par exemple :
Démonstration en direct#!/usr/bin/python str = 'Hello World!' print str # Affiche la chaîne complète print str[0] # Affiche le premier caractère de la chaîne print str[2:5] # Affiche les caractères du 3ème au 5ème print str[2:] # Affiche la chaîne à partir du 3ème caractère print str * 2 # Affiche la chaîne deux fois print str + "TEST" # Affiche la chaîne concaténée
Cela produira le résultat suivant :
Hello World! H llo llo World! Hello World!Hello World! Hello World!TEST
Listes Python
Les listes sont le type de données composé le plus polyvalent de Python. Une liste contient des éléments séparés par des virgules et enfermés entre crochets ([]). Dans une certaine mesure, les listes sont similaires aux tableaux en C. Une différence entre eux est que tous les éléments appartenant à une liste peuvent être de types de données différents.
Les valeurs stockées dans une liste peuvent être accessibles en utilisant l'opérateur de tranche ([ ] et [:]) avec des index commençant à 0 au début de la liste et allant jusqu'à la fin -1. Le signe plus (+) est l'opérateur de concaténation de listes, et l'astérisque (*) est l'opérateur de répétition. Par exemple :
#!/usr/bin/python list = [ 'abcd', 786 , 2.23, 'john', 70.2 ] tinylist = [123, 'john'] print list # Affiche la liste complète print list[0] # Affiche le premier élément de la liste print list[1:3] # Affiche les éléments du 2ème au 3ème print list[2:] # Affiche les éléments à partir du 3ème élément print tinylist * 2 # Affiche la liste deux fois print list + tinylist # Affiche les listes concaténées
Cela produit le résultat suivant :
['abcd', 786, 2.23, 'john', 70.2] abcd [786, 2.23] [2.23, 'john', 70.2] [123, 'john', 123, 'john'] ['abcd', 786, 2.23, 'john', 70.2, 123, 'john']
Tuples Python
Un tuple est un autre type de données de séquence qui est similaire à la liste. Un tuple se compose d'un certain nombre de valeurs séparées par des virgules. Contrairement aux listes, cependant, les tuples sont enfermés entre parenthèses.
Les principales différences entre les listes et les tuples sont : Les listes sont enfermées dans des crochets ( [ ] ) et leurs éléments et leur taille peuvent être modifiés, tandis que les tuples sont enfermés dans des parenthèses ( ( ) ) et ne peuvent pas être mis à jour. Les tuples peuvent être considérés comme des listes en lecture seule. Par exemple :
Démonstration en direct#!/usr/bin/python tuple = ( 'abcd', 786 , 2.23, 'john', 70.2 ) tinytuple = (123, 'john') print tuple # Affiche le tuple complet print tuple[0] # Affiche le premier élément du tuple print tuple[1:3] # Affiche les éléments du tuple du 2ème au 3ème print tuple[2:] # Affiche les éléments du tuple à partir du 3ème print tinytuple * 2 # Affiche le contenu du tuple deux fois print tuple + tinytuple # Affiche les tuples concaténés
Cela produit le résultat suivant :
('abcd', 786, 2.23, 'john', 70.2)
abcd
(786, 2.23)
(2.23, 'john', 70.2)
(123, 'john', 123, 'john')
('abcd', 786, 2.23, 'john', 70.2, 123, 'john')
Le code suivant est invalide avec un tuple, car nous avons tenté de mettre à jour un tuple, ce qui n'est pas autorisé. Le cas similaire est possible avec les listes :
#!/usr/bin/python tuple = ( 'abcd', 786 , 2.23, 'john', 70.2 ) list = [ 'abcd', 786 , 2.23, 'john', 70.2 ] tuple[2] = 1000 # Syntaxe invalide avec tuple list[2] = 1000 # Syntaxe valide avec liste
Dictionnaire Python
Les dictionnaires de Python sont une sorte de type table de hachage. Ils fonctionnent comme des tableaux associatifs ou des hachages trouvés en Perl et consistent en paires clé-valeur. Une clé de dictionnaire peut être presque n'importe quel type Python, mais sont généralement des nombres ou des chaînes. Les valeurs, d'autre part, peuvent être n'importe quel objet Python arbitraire.
Les dictionnaires sont enfermés par des accolades ({ }) et les valeurs peuvent être affectées et accessibles en utilisant des crochets ([]). Par exemple :
Démonstration en direct#!/usr/bin/python
dict = {}
dict['one'] = "This is one"
dict[2] = "This is two"
tinydict = {'name': 'john','code':6734, 'dept': 'sales'}
print dict['one'] # Affiche la valeur pour la clé 'one'
print dict[2] # Affiche la valeur pour la clé 2
print tinydict # Affiche le dictionnaire complet
print tinydict.keys() # Affiche toutes les clés
print tinydict.values() # Affiche toutes les valeurs
Cela produit le résultat suivant :
This is one
This is two
{'dept': 'sales', 'code': 6734, 'name': 'john'}
['dept', 'code', 'name']
['sales', 6734, 'john']
Les dictionnaires n'ont pas de concept d'ordre parmi les éléments. Il est incorrect de dire que les éléments sont "hors ordre" ; ils sont simplement non ordonnés.
Conversion de type de données
Parfois, vous devrez peut-être effectuer des conversions entre les types intégrés. Pour convertir entre types, vous utilisez simplement le nom du type comme une fonction.
Il existe plusieurs fonctions intégrées pour effectuer la conversion d'un type de données à un autre. Ces fonctions retournent un nouvel objet représentant la valeur convertie.
| N° | Fonction et description |
|---|---|
| 1 | int(x [,base]) Convertit x en entier. base spécifie la base si x est une chaîne. |
| 2 | long(x [,base]) Convertit x en entier long. base spécifie la base si x est une chaîne. |
| 3 | float(x) Convertit x en nombre à virgule flottante. |
| 4 | complex(real [,imag]) Crée un nombre complexe. |
| 5 | str(x) Convertit l'objet x en représentation de chaîne. |
| 6 | repr(x) Convertit l'objet x en chaîne d'expression. |
| 7 | eval(str) Évalue une chaîne et retourne un objet. |
| 8 | tuple(s) Convertit s en tuple. |
| 9 | list(s) Convertit s en liste. |
| 10 | set(s) Convertit s en ensemble (set). |
| 11 | dict(d) Crée un dictionnaire. d doit être une séquence de tuples (clé,valeur). |
| 12 | frozenset(s) Convertit s en ensemble gelé (frozen set). |
| 13 | chr(x) Convertit un entier en caractère. |
| 14 | unichr(x) Convertit un entier en caractère Unicode. |
| 15 | ord(x) Convertit un seul caractère en sa valeur entière. |
| 16 | hex(x) Convertit un entier en chaîne hexadécimale. |
| 17 | oct(x) Convertit un entier en chaîne octale. |
Python
- Maîtriser les variables C# et types de données primitifs : guide complet
- Maîtriser les variables, littéraux et constantes en C++ : Guide complet
- Variables, constantes et littéraux en C : Guide complet
- Comprendre les classes de stockage en C : Portée, durée de vie et performance
- Variables, constantes et littéraux en Python – Guide complet
- Maîtriser les types de données Python : Guide pratique
- Maîtriser les opérateurs Python : Guide complet
- Comprendre les variables globales, locales et non locales en Python
- Maîtriser le mot-clé global en Python : Comment et quand l'utiliser