TP 1 Exercices « Python, les variables et les fonctions ‘type’ et ‘print’ » à faire dans le cahier de SNT:
Définition : Un langage de programmation, tel que Python, peut être vu comme un moyen permettant à un programmeur
humain de faire exécuter à un ordinateur des tâches complexes.
Cette année, nous travaillerons dans un premier temps avec le site : https://basthon.fr
Ce site vous permettra d’écrire et d’exécuter des programmes Python 3 dans un ‘bac à sable’. Vous pouvez télé-charger
les programmes afin de les sauvegarder sur le réseau du Lycée.
Exercice 1, Notre premier programme sera le fameux « Hello World » qui permet d’afficher cette phrase :
1. Dans la console, entrez la commande : print("Hello World !") appuyer sur la touche « Exécuter »
Vérifier le résultat dans la console.
2. Créer un fichier Hello_votre_nom.py , stocker ce fichier dans votre classe de Seconde sur le disque Z:\20
Lycée\60 SNT\votre classe de 2nde
À la maison vous pouvez travailler avec un site de python-en-ligne: http://www.jaicompris.com/python.php
Sur ce site on suit le même déroulement des cours que pendant le cours d’SNT de cette année. Vous trouverez plein de
vidéos et d’exercices pour vous entraîner davantage si besoin.
Variables:
Une variable est une donnée de votre programme, définie par un nom unique, stockée dans l’ordinateur, elle contient
une valeur qui peut changer au cours du temps, elle a donc une dimension temporelle. Voyez la mémoire de votre
ordinateur comme une grosse armoire avec plein de tiroirs. Chaque tiroir peut contenir une donnée ; certaines de ces
données seront des variables de votre programme. En utilisant Scratch au collège, vous avez déjà initié les variables au
début des programmes.
En Python, pour donner une valeur à une variable, il suffit d'écrire nom_de_la_variable = valeur.
Le signe « = » en Python est un signe d’affectation. Il permet de donner une valeur à une variable.
La déclaration d’une variable : c’est le fait de lui donner un nom.
L’affectation d’une variable : c’est le fait de lui donner une valeur.
L'initialisation d’une variable : consiste à donner la valeur de la variable au moment même où on la déclare.
Exemple : a=3
La variable nommée « a » reçoit la valeur entière « 3 ». On nomme une case mémoire de l’ordinateur « a » et on lui met
la valeur « 3 ».
Une variable doit respecter quelques règles de syntaxe incontournables :
• Le nom de la variable ne peut être composé que de lettres, majuscules ou minuscules, de chiffres et du symbole
souligné « tiré du 8 » ou bien « _ » (appelé underscore en anglais).
• Le nom de la variable ne peut pas commencer par un chiffre.
• Le langage Python est sensible à la casse, ce qui signifie que des lettres majuscules et minuscules ne
constituent pas la même nom de variable (la variable « AGE » est différente de « Age », et différente de
« age »).
• Il faut donc éviter de mettre des espaces et des accents dans les noms de variables en Python, et on ne peut pas
utiliser les mots réservés en Python pour nommer des variables, à savoir:
False class from or None continue global pass True def if raise and del import
return as elif in try assert else is while async except lambda with await
finally nonlocal yield break for not
Exercice 2 :
1. Expliquer ce que fait chaque ligne dans le programme ci-dessous.
a=3
b=5
a=7
c=a+b
2. Indiquer les variables présentes dans le programme précédent et donner leur valeurs à la fin de l’exécution du
programme.
3. Expliquer ce qu’on entend par « dimension temporelle » d’une variable.
Contrairement à Scratch, dans toute langage informatique textuelle, on parle de typage de données. Ce qui veut dire que
pour une variable donnée un type lui est associé.
En Python, pour cette année de Seconde, on va distinguer 4 types de variables :
1. Les Entiers (integer - int)
Pour un ordinateur, les opérations que l'on effectue sur des nombres à virgule ne sont pas les mêmes que celles sur les
entiers, et cette distinction reste encore d'actualité de nos jours.
Le type entier se nomme « int » en Python (qui correspond à l'anglais « integer). La forme d'un entier est un nombre
sans virgule.
Exemple : a=10
2. Les Flottants (float)
Les flottants sont les nombres à virgule. Ils se nomment « float » en Python (ce qui signifie « flottant » en anglais). La
syntaxe d'un nombre flottant est celle d'un nombre à virgule (la virgule est un point). Si ce nombre n'a pas de partie
flottante mais que vous voulez qu'il soit considéré par le système comme un flottant, vous pouvez lui ajouter une partie
flottante de 0 (exemple 52.0).
Les nombres après la virgule ne sont pas infinis, puisque rien n'est infini en informatique. Mais la précision est assez
importante pour travailler sur des données très fines.
Exemple : b=5.02
3. Les Chaînes de caractères (string - str)
Ce type de donnée permet de stocker une série de lettres, et pourquoi pas une phrase. Ils se nomment « str» en Python
(pour « string » ce qui signifie « chaîne » en anglais).
On peut écrire une chaîne de caractères de différentes façons :
• entre guillemets, si il y a des apostrophes dans le texte ("ceci est une ‘chaîne’ de caractères") ;
• entre apostrophes, si il y a des guillemets dans le texte ('ceci est une « chaîne » de caractères') ;
• entre triples guillemets, si il y a des guillemets et des apostrophes dans le texte ("""ceci est « une » ‘chaîne’ de
caractères""") ; Les triples guillemets permettent également d’afficher un texte sur plusieurs lignes.
Exemple : c=’prénom’
4. Les Booléens (bool)
Un booléen est un type de variable à deux états généralement notés « True » (vrai) et « False » (faux). Ils sont destiné à
représenter les valeurs de vérité de la logique et l'algèbre booléenne. Il est nommé ainsi d'après George Boole, fondateur
dans le milieu du XIX e siècle de l'algèbre portant son nom.
Exemple : d=True
Remarque : « True » et « False » sont des mots clés réservés par Python ce qui veut dire que leur nom ne peut être
utilisé pour déclarer une variable. La ligne de commande : True = 3 déclenchera une erreur, alors que true = 3
n’en déclenchera pas.
Attention : Lorsque vous créerez des variables vous devrez toujours faire attention au type de chaque variable.
Ce typage peut être explicite : le type de variable apparaît de façon explicite dans la ligne de code.
Exemples :
a=int(3)
b=float(5.2)
c=str(‘prénom’)
d=bool(False)
Ce typage peut être implicite : le type de variable n’apparaît pas de façon explicite dans la ligne de code, il est sous-
entendu par la lecture de la valeur initiale donnée.
Exemples :
a=3
b=5.2
c=‘prénom’
d=False
Le script ci-dessous déclenchera une erreur !
a=3
b=‘5’
c=a+b
La variable a est de type Entier. La variable b est de type Chaîne de caractères. Python ne sait pas additionner ces deux
types qui sont différents, mais des entiers et des floats, si.
La fonction « type » (nom_de_variable) permet de connaître le type de variable attribué.
La fonction « print » permet d'afficher du texte / le résultat du programme « run » sur la console.
Exercice 3, Observer le code ci-dessous, est-ce que le type de variable est explicite ou implicite ? :
a=3
print(a, type(a))
b=3.0
print(b, type(b))
c='3'
print(c, type(c))
d=True
print(d, type(d))
Ainsi que les résultats dans la console, expliquer ces résultats dans votre cahier :
3 <class 'int'>
3.0 <class 'float'>
3 <class 'str'>
True <class 'bool'>
En Python la fonction « type » imprime le mot « class » dans la console, ce qui veut dire : « le type de variable ».
Pour modifier le type d’une variable on peut faire, ce que l’on appelle en anglais, un « cast ».
Exemples: x=int(3.0)donne 3 ou x =float(6) donne 6.0
Attention! Le résultat du « cast » x=int(4.6) donne 4 et la fonction mathématique x=round(4.6)donne 5. Les
deux résultats sont de type 'integer'.
Exercice 4, Observer le code ci-dessous, est ce que le type de variable est explicite ou implicite ? :
a=int(4.7)
print(a, type(a))
b=round(4.7)
print(b, type(b))
Ainsi que les résultats dans la console, expliquer ces résultats dans votre cahier :
4 <class 'int'>
5 <class 'int'>
Attention! Un nombre décimal (float) sépare la partie entière et la partie décimale par un point. On utilise la virgule en
Python pour séparer deux variables, voire deux valeurs, ainsi les deux écritures ci-dessous auront le même résultat:
a=5
b=3
équivaut:
a,b=5,3
Le module/ bibliothèque « maths » permet de faire des calculs mathématiques plus compliqués, style: sinus, cosinus,
racine carrée sqrt, pi .… Pour importer le module / bibliothèque "maths" (dans la totalité) il faut écrire:
from math import *
Exercice 5, Observer le code ci-dessous, est ce que cela génère une erreur, et si oui, pourquoi? :
a=3
e=sqrt(a)
print(e, type(e))
Ainsi que les résultats du programme ci-dessous dans la console, expliquer ce que fait ce programme dans votre cahier :
from math import *
a=3
e=sqrt(a)
print(e, type(e))
résultats dans la console:
1.7320508075688772 <class 'float'>
Exercice 6, Écrire les résultats de la fonction de « print » des lignes ci-dessous et expliquer :
a=3
b=5
print(a)
print(a+b)
print('a')
print('a'+'b')
print('a+b= ',a+b)
Exercice 7 :
• Que va afficher ce programme, quel type de variable est utilisée ? Est-ce que le type est explicite ou implicite ?
• Recopier et exécuter le code ci-dessous pour vérifier.
• Expliquer ce qu’on entend par ‘dimension temporelle’ d’une variable.
a=3
print(a)
a=a+3
b=a+2
print('a = ',a,'et b = ',b)