top of page

Chapitre 1 :  Python, les variables et les fonctions ‘type’, ‘print’  et 'input'

 

On présente ici les bases du langage Python : calculs, variables, affichage, saisie, type de données. Les fonctionnalités un peu plus avancées telles que les instructions conditionnelles, les boucles, les fonctions ou les listes seront étudiées dans les chapitres suivants.

Python-logo-notext.svg.png

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 print

​​​

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 d'abord 3 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’

​​

​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)


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’

​​

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.

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 bibliothèque « maths » permet de faire des calculs mathématiques plus compliqués, style: sinus, cosinus, racine carrée sqrt, pi, round pour arrondir .… Pour importer le module / bibliothèque "maths" (dans la totalité) il faut écrire: 

from math import *

Le bibliothèque « random » permet de générer des nombres aléatoires. Pour importer le module / bibliothèque "random" (dans la totalité) il faut écrire: 

 

from random import *

​​​

La fonction « type » (nom_de_variable) permet de connaître le type de variable attribué.

​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'.

 

Quelques opérateurs mathématiques sous Python : 

*    est le symbole pour une multiplication

**    est le symbole pour une puissance par exemple 2**3 donne 2x2x2= 2³ = 8

/    est le symbole pour la division décimale, le résultat est un float (même si le résultat est entier!!)

//    est le symbole pour le quotient de la division euclidienne, le résultat est un integer (la partie entière)

%    est le symbole pour le modulo, le reste de la division euclidienne

La fonction « print » permet d'afficher du texte / le résultat du programme sur la console.

Grâce à la fonction « input », on peut récupérer une donnée saisie par l’utilisateur. 

Par défaut, si ce n’est pas défini autrement, la fonction « input » capte une chaîne de caractère.

Dans le programme suivant, l’utilisateur entre la valeur 3. La variable devient donc « chaîne de caractère » et contient la valeur « 3 ». On ne pourra pas faire de calcul avec cette variable.

a=input("entrer le nombre 3:")
b=a+5


résultats dans la console:

entrer le nombre 3:3
Traceback (most recent call last):
  File "<input>", line 2, in <module>
TypeError: can only concatenate str (not "int") to str

Ce qui veut dire que Python peut additionner des strings ensemble ‘1’+’2’ donne ‘12’ par exemple, mais on ne peut pas additionner des strings et des integer ou bien des strings avec des float ou booléens.

Une solution : Avec l’instruction a= int(input("entrer un nombre : "))  on définit la variable « a » comme un entier est le programme ne fonctionnera que si l’utilisateur entre un entier.

a=int(input("entrer le nombre 3:"))
b=a+5
print(a,b)


résultats dans la console:

entrer le nombre 3:3
3 8


Le symbole  #  en Python indique que ce qui suit ne sera pas interprété par Python. Cela permet de commenter une ligne du programme pour pouvoir expliquer un fonctionnement.

Exemple : 

a=int(input("entrer le nombre 3:"))
b=a+5 # ceci est un commentaire
print(a,b) # on renvoie le résultat dans la console

Résume du chapitre 1:

Opérations mathématiques

Multiplication : *
Division ordinaire : /
Division entière : //
Reste (modulo) : %
Puissance : ** (exemple : 2**3 pour "2 au cube")

Types de variables

int (integer) : nombre entier
float (flottant) : nombre à virgule
str (string) : chaîne de caractères

Incrémenter une variable

a = a + 1
Syntaxe abrégée : a += 1
Concaténation de chaînes : "bon" + "jour" donne "bonjour"

Affichage

Fonction print()
On peut rajouter des paramètres sep (séparateur) et end (fin).
Exemple : print("a","b","cd",sep="-",end="@") donne a-b-cd@

Saisie utilisateur

réponse = input("Saisissez une valeur : ")
(la réponse est une chaîne de caractères)

Changer le type d'une variable

int(chaine) : transforme une chaîne de caractère en int
float(chaine) : transforme une chaîne en float
str(nombre) : transforme un nombre en chaîne de caractères

Nombres aléatoires

module random
randint(a,b) : renvoie un nombre entier aléatoire entre a et b (inclus).

Exercices à faire à la maison:

Cette année, nous travaillerons pour les devoirs avec le site : https://basthon.fr Ce site vous permettra d’écrire et d’exécuter des programmes Python 3 dans un ‘bac à sable’.


Exercice 1 : Que va afficher ce programme, quel type de variable est utilisée ? Est-ce que le type est explicite ou implicite ?

a=3
print(a)
a=a+3
b=a+2
print('a = ',a,'et b = ',b)


Exercice 2 : Observer le code ci-dessous, quoi représente le mot "math" dans ce programme? Expliquer les résultats  dans votre cahier .

from math import * 
a=3
e=sqrt(a)
print(e, type(e))


Exercice 3 : Exécuter le code ci-dessous. La fonction ‘input’ prend quelle type de variable par défaut ?

prenom=input("Entrer votré prénom: ")
print("Bonjour", prenom)


Exercice 4 : Exécuter le code ci-dessous. 
    • Donner les types de variables a et b ci-dessous.
    • Expliquer ce que fait la fonction Python « type ».
    • Expliquer à quoi sert la fonction Python « int ».

a=input("Entrer un nombre entier: ")
print(a, type (a))
b=int(input("Entrer un nombre entier: "))
print(b, type (b))


Exercice 5 : Exécuter le code ci-dessous. Entrer la valeur 3.2 dans la fenêtre qui s’ouvre suite à cette instruction. Que se passe-t-il ? Expliquer. 

c=int(input("Entrer la valeur 3.2: "))
print(c, type (c))


Exercice 6 : Observer les 2 programmes ci-dessous, quel va-être le résultat de la fonction ‘print’ ? Puis exécuter les programmes pour les vérifier avec des valeurs proposées. Expliquer à quoi servent ces 2 programmes : 

Entrer t=10 et d=50  pour tester:
t=float(input('entrez le temps en secondes'))
d=float(input('entrez la distance en mètres'))
print('la vitesse en km/hr est ',d/t*3.6)


Entrer TC=22 pour tester:
TC=float(input('entrez la température en degrés Celcius '))
print('la température en degrés Fahrenheit est: ',1.8*TC+32)


Exercice 7 : Donner l’expression mathématique correspondante à ce programme :

x = input('Saisir un nombre ')
x = float(x)
x = x + 4
x = x**2
x = x * 3
x = x + 2
print(x)


Vérifiez la cohérence du résultat en faisant le calcul pour 𝑥 = 1 et 𝑥 = 2

Exercice 8 : En utilisant le programme suivant avec différentes valeurs, donner son rôle.

a = input('saisir une valeur entière ')
a = int(a)
b = input('saisir une valeur entière ')
b = int(b)
a = a + b
b = a - b
a = a - b
print(a,b)


Exercice 9 : Pour donner accès à une bibliothèque on utilise l’instruction import nom_bibliothèque en début de programme. Pour utiliser, une fonction ou une variable de la bibliothèque on utilisera l’instruction nom_bibliothèque.fonction. Essayer les instructions suivantes, expliquez les résultats :

import math
print(math.pi)
print(math.sqrt(25))


Exercice 10 : Écrire un programme qui demande à l’utilisateur d’entrer le rayon d’un disque et qui lui affiche l’aire et le périmètre de ce disque.

Exercice 11 : recopier le programme suivant et l’exécuter plusieurs fois de manière à comprendre ce que font les fonctions utilisées, expliquez les résultats, rédiger ensuite une ligne de code qui donne un nombre flottant aléatoire entre 0 et 8.

import random
print(random.randint(1,6))
print(random.random())

Exercices de révision Python Chapitre 1, suite au TP 1 sur CAPYTALE

© 2026 TECHNOLOGIE - RODAT

bottom of page