Types de données et opérateurs en Python

PythonBeginner
Pratiquer maintenant

Introduction

Bienvenue dans le monde de Python ! Dans ce laboratoire, vous allez découvrir les briques de base de la programmation Python : les types de données et les opérateurs. Nous explorerons les nombres, le texte et les valeurs vrai/faux. Vous apprendrez également à effectuer des calculs et des comparaisons. Ce laboratoire est conçu pour les débutants, nous avancerons donc étape par étape. Ne vous inquiétez pas si tout cela est nouveau pour vous, nous sommes là pour vous guider. Commençons !

Comprendre les nombres en Python

Dans cette étape, nous allons examiner les deux principaux types de nombres en Python : les entiers (integers) et les nombres à virgule flottante (floats).

Tout d'abord, ouvrez l'interpréteur Python. Il s'agit d'un outil qui vous permet d'exécuter du code Python ligne par ligne. Pour les débutants, l'interface de bureau est plus conviviale. Si vous êtes à l'aise avec le terminal, vous pouvez passer à l'onglet Terminal séparé dans le coin supérieur gauche pour une utilisation plus fluide. Les deux approches mènent au même résultat.

Terminal Tab

Tapez ceci dans votre terminal :

python

Vous devriez voir >>>. Cela signifie que Python est prêt à recevoir vos commandes.

Python Interpreter

Commençons par les entiers (integers). Les entiers sont des nombres entiers, comme -1, 0 et 100.

books = 5
print(f"I have {books} books.")
type(books)

Sortie :

I have 5 books.
<class 'int'>

Ici, nous avons créé une variable nommée books et lui avons donné la valeur 5. Une variable est comme une boîte où vous pouvez stocker des informations. La fonction print() affiche le résultat à l'écran. Nous avons utilisé une f-string (remarquez le f avant les guillemets) pour inclure facilement la valeur de notre variable books dans le texte. La fonction type() nous indique que books contient un int (entier).

Ensuite, explorons les nombres à virgule flottante, ou floats. Ce sont des nombres avec une virgule décimale.

price = 19.99
print(f"This book costs ${price}.")
type(price)

Sortie :

This book costs $19.99.
<class 'float'>

La variable price est un float car elle comporte une virgule décimale.

Maintenant, effectuons un calcul simple. Python peut être utilisé comme une calculatrice !

quantity = 3
total_cost = price * quantity  ## Let's calculate the total cost
print(f"The total cost for {quantity} books is ${total_cost:.2f}.")

Sortie :

The total cost for 3 books is $59.97.

Nous avons utilisé l'opérateur * pour multiplier price et quantity. Le .2f dans la f-string formate le nombre avec deux décimales. Le symbole # commence un commentaire. Les commentaires sont des notes destinées aux humains que Python ignore.

N'hésitez pas à essayer vos propres calculs ! Vous pouvez redéfinir des variables avec de nouvelles valeurs et voir ce qui se passe.

Travailler avec du texte (chaînes de caractères)

Dans cette étape, vous allez découvrir les chaînes de caractères (strings), qui sont utilisées pour représenter du texte en Python.

Créons une variable de chaîne dans l'interpréteur Python. Les chaînes sont toujours entourées de guillemets simples (') ou doubles (").

name = "Alice"
print(f"Hello, {name}!")
type(name)

Sortie :

Hello, Alice!
<class 'str'>

Le type de données str représente une chaîne de caractères en Python.

Les chaînes peuvent être combinées ou manipulées de nombreuses manières. Essayons quelques opérations courantes.

## Joining two strings together (concatenation)
first_name = "John"
last_name = "Doe"
full_name = first_name + " " + last_name
print(full_name)

Sortie :

John Doe
## Repeating a string
cheer = "Go! " * 3
print(cheer)

Sortie :

Go! Go! Go!
## Finding the length of a string
print(len(full_name))

Sortie :

8
## Accessing individual characters
print(full_name[0])  ## Get the first character
print(full_name[-1]) ## Get the last character

Sortie :

J
e

Important : Python commence à compter à partir de 0. Ainsi, le premier caractère est à l'index 0. L'index -1 est un raccourci pratique pour le dernier caractère.

Les chaînes en Python sont immuables, ce qui signifie qu'elles ne peuvent pas être modifiées après leur création. Vous ne pouvez pas changer un seul caractère dans une chaîne. Cependant, vous pouvez créer de nouvelles chaînes à partir d'une chaîne existante.

message = "Hello World"
uppercase_message = message.upper()
print(uppercase_message)

Sortie :

HELLO WORLD
lowercase_message = message.lower()
print(lowercase_message)

Sortie :

hello world

Les méthodes .upper() et .lower() créent de nouvelles chaînes. La variable message originale reste inchangée.

Vrai ou Faux ? (Booléens)

Dans cette étape, vous allez découvrir les valeurs booléennes, qui ne peuvent être que True (Vrai) ou False (Faux). Elles sont essentielles pour prendre des décisions dans votre code.

Créons quelques variables booléennes. Notez que True et False commencent par une majuscule en Python.

is_learning = True
is_finished = False
print(f"Are we learning Python? {is_learning}")
type(is_learning)

Sortie :

Are we learning Python? True
<class 'bool'>

Le type de données bool représente les valeurs booléennes.

Les opérateurs de comparaison sont utilisés pour comparer deux valeurs, et ils aboutissent toujours à un booléen (True ou False).

x = 5
y = 10
print(x < y)   ## Is x less than y?
print(x == y)  ## Is x equal to y?
print(x != y)  ## Is x not equal to y?

Sortie :

True
False
True

Voici les opérateurs de comparaison courants : == (égal à), != (différent de), < (inférieur à), > (supérieur à), <= (inférieur ou égal à), >= (supérieur ou égal à).

Vous pouvez également comparer des chaînes. Python les compare par ordre alphabétique.

name1 = "Alice"
name2 = "Bob"
print(name1 < name2)  ## "Alice" comes before "Bob" alphabetically

Sortie :

True

Les opérateurs booléens (and, or, not) sont utilisés pour combiner des expressions booléennes.

a = True
b = False
print(a and b)  ## True only if both a AND b are True
print(a or b)   ## True if either a OR b (or both) are True
print(not a)    ## The opposite of a

Sortie :

False
True
False

Ces opérateurs vous aident à créer des conditions plus complexes pour vos programmes.

Conversion entre types de données

Parfois, vous devez convertir une valeur d'un type de données à un autre. C'est ce qu'on appelle la conversion de type ou « transtypage » (casting).

Convertissons une chaîne en nombre. C'est très courant lorsque vous obtenez une entrée de la part d'un utilisateur, car l'entrée est toujours lue comme une chaîne.

age_string = "25"
age_number = int(age_string) ## Convert string to integer
print(age_number + 5)

Sortie :

30
price_string = "1.99"
price_float = float(price_string) ## Convert string to float
print(price_float * 2)

Sortie :

3.98

Nous utilisons int() pour convertir en entier et float() pour convertir en nombre à virgule flottante. Soyez prudent ! Si vous essayez de convertir une chaîne qui ne ressemble pas à un nombre (par exemple, int("hello")), Python affichera une erreur.

Vous pouvez également convertir des nombres en chaînes en utilisant la fonction str().

count = 50
count_string = str(count)
print("The count is " + count_string)

Sortie :

The count is 50

Enfin, vous pouvez convertir des valeurs en booléens en utilisant bool(). Les règles sont simples :

  • 0, les chaînes vides ("") et certains objets vides spéciaux sont False.
  • Presque tout le reste est True (tout nombre non nul, toute chaîne non vide).
print(bool(100))      ## Non-zero number
print(bool(0))        ## Zero
print(bool("Hello"))  ## Non-empty string
print(bool(""))       ## Empty string

Sortie :

True
False
True
False

La conversion de type est un outil puissant pour faire fonctionner différents types de données ensemble.

Mettre tout cela en pratique

Dans cette dernière étape, écrivons un petit programme qui utilise tout ce que nous avons appris.

Passez à l'onglet WebIDE dans la machine virtuelle LabEx. Le WebIDE est un éditeur de code en ligne où vous pouvez écrire et enregistrer vos scripts Python.

WebIDE online code editor

Pour plus d'informations détaillées sur l'interface WebIDE, veuillez consulter la documentation LabEx VM WebIDE.

Créez un nouveau fichier nommé user_info.py dans le répertoire ~/project avec cette commande :

touch ~/project/user_info.py

Cliquez sur le nouveau fichier dans l'explorateur de fichiers sur la gauche pour l'ouvrir dans l'éditeur.

Copiez et collez le code suivant dans le fichier :

## A simple program to practice data types

## Get user input (input is always a string)
name = input("Enter your name: ")
age_str = input("Enter your age: ")

## Convert age to an integer
age = int(age_str)

## Perform a simple calculation
years_to_100 = 100 - age
is_adult = age >= 18

## Create an output message using an f-string
output = f"""
--- User Information ---
Hello, {name}!
You are {age} years old.
You will be 100 years old in {years_to_100} years.
Are you an adult? {is_adult}
--- End of Report ---
"""

## Print the final result
print(output)

Ce script utilise la fonction input() pour demander un nom et un âge. input() nous donne toujours l'entrée de l'utilisateur sous forme de chaîne, c'est pourquoi nous devons convertir l'âge en nombre en utilisant int(). Le script crée ensuite une f-string multiligne pour la sortie, en utilisant des triples guillemets ("""). C'est un moyen élégant de formater du texte qui s'étend sur plusieurs lignes. Enfin, il effectue quelques calculs et imprime le résumé formaté.

Enregistrez le fichier (il devrait s'enregistrer automatiquement) et exécutez-le depuis le terminal avec cette commande :

python ~/project/user_info.py

Le programme vous demandera votre nom et votre âge. Une fois que vous les aurez fournis, il imprimera le résumé.

Enter your name: Alice
Enter your age: 25

--- User Information ---
Hello, Alice!
You are 25 years old.
You will be 100 years old in 75 years.
Are you an adult? True
--- End of Report ---

Program output example

N'hésitez pas à exécuter le script plusieurs fois avec des entrées différentes pour voir comment la sortie change !

Résumé

Félicitations pour avoir terminé ce laboratoire ! Vous avez fait un grand premier pas dans le monde de la programmation Python.

Dans ce laboratoire, vous avez découvert les briques fondamentales de Python :

  • Types numériques : Vous avez travaillé avec des entiers (int) pour les nombres entiers et des flottants (float) pour les nombres décimaux.
  • Chaînes de caractères (str) : Vous avez appris à créer et à manipuler du texte.
  • Booléens (bool) : Vous avez exploré les valeurs True et False et les avez utilisées pour des comparaisons.
  • Opérateurs : Vous avez utilisé des opérateurs arithmétiques (*), de comparaison (==, <) et booléens (and, or).
  • Conversion de type : Vous vous êtes exercé à convertir entre différents types de données, comme transformer une chaîne en nombre.

Ces concepts sont la base de tout ce que vous ferez en Python. Continuez à pratiquer et n'ayez pas peur d'expérimenter dans l'interpréteur Python — c'est l'un des meilleurs moyens d'apprendre. Bravo, et bon codage !