Mémo Python

Python par Repl.it


Notions de programmation


Ressouces Python

Avec Repl.it

Se rendre sur le site de repl.it.

L'interface se sépare en 2 parties:

interface replit

  • Zone Script: Éditeur de texte où l'on pourra écrire notre programme python. Pour executer son contenu, il faudra cliquer sur replit run
  • Zone Shell: Line de commande pour interagir avec python. Ici vous pouvez tester vos commandes python et presser la touche entrer pour l'executer. Par contre on ne peut pas écrire sur plusieurs lignes.

Il est conseillé d'utiliser en priorité la zone script car elle permet d'écrire sur plusieurs lignes et de corriger après l'execution. La zone shell servira à tester des commandes pour voir directement leurs effets.

Pour sauvergarder votre travail, vous cliquerez sur les 3 points à côté de Files puis sur download as zip.

replit save

Les variables

Les variables sont des enveloppes où l'on stockera des nombres, des mots, des phrases ou des choses plus compliqués.

In [1]:
un_nombre = 10

Ainsi dans l'enveloppe appelée un_nombre on y met le nombre 10.

C'est ce que l'on appelle assigner une valeur à une variable ou stocker une valeur dans une variable.

In [2]:
un_nombre = 10
print(un_nombre) 
10

Pour stocker des mots ou des phrases, il faut les mettre entre guillemets

In [3]:
un_mot = "Coucou"
une_phrase = "ceci est une phrase"

input

Contrairement à ce que l'on a fait hier on ne met plus rien dans les parenthèses d'un input.

input() est une commande qui va demander à l'utilisateur une information

In [4]:
print("Comment t'appelles tu?")
nom = input()
print("Ah! Tu t'appelles", nom)
Comment t'appelles tu?
bobo
Ah! Tu t'appelles bobo

Après avoir afficher la question, l'ordinateur se met en pose et attend que l'utilisateur réponde quelque chose. Une fois que l'utilisateur a répondu (a appuyé sur entrer) la réponse est stocké, ici, dans la variable nom.

Condition if

Pour différencier plusieurs cas, on utilisera la commande if (si), elif (sinon si) et else (sinon).

In [5]:
a = 2
b = 3

if a > b: # Si
    print("a plus grand que b")
elif a == b: # Sinon si
    print("a est égal à b")
else: # Sinon
    print("a est plus petit que b")
a est plus petit que b

Boucles for

Les boucles for permettent de répéter un certain nombre de fois la même action.

  • Générer plusieurs valeurs:
In [6]:
for x in range(10):
    print(x)
0
1
2
3
4
5
6
7
8
9

Python a créé une variable x puis lui a fait prendre toutes les valeurs entre 0 et 9.

  • Ajouter 5 fois 100 d'affilé
In [7]:
a = 2
print("Au debut a vaut", a)
for i in range(5):
    a = a + 100
    print("a vaut maintenant", a)
print("Finalement a vaut", a)
Au debut a vaut 2
a vaut maintenant 102
a vaut maintenant 202
a vaut maintenant 302
a vaut maintenant 402
a vaut maintenant 502
Finalement a vaut 502
  • On peut aussi parcourir les lettres d'un mot ou d'une phrase
In [8]:
phrase = "boujour toi"
print("On enumere >>> ", phrase)
for l in phrase:
    print(l)
print("Toutes les lettres ont été énumérées")
On enumere >>>  boujour toi
b
o
u
j
o
u
r
 
t
o
i
Toutes les lettres ont été énumérées
  • Ou encore tous les éléments d'une liste
In [9]:
liste = ["premier element", 2, "coucou", 1, "aie", 0]
print("On enumère >>>", liste)
for i in liste:
    print(i)
print("Tout a été énuméré")
On enumère >>> ['premier element', 2, 'coucou', 1, 'aie', 0]
premier element
2
coucou
1
aie
0
Tout a été énuméré

Boucles while

En anglais, while signifie tant que. On l'utilisera quand on veut refaire quelque plusieurs fois tant que quelque chose n'est pas vrais.

Ajouter 3 tant que que u n'a pas dépassé 19:

In [10]:
u = 2
while u < 19:
    u = u + 3
    print("u vaut ", u)
print("u a depassé 50 et vaut", u)
u vaut  5
u vaut  8
u vaut  11
u vaut  14
u vaut  17
u vaut  20
u a depassé 50 et vaut 20

Poser toujours la même question quand que l'utilisateur n'a pas bien répondu:

In [11]:
aPasTrouve = True # True signifie vrai en anglais.
while aPasTrouve:
    print("Quelle est la couleur du cheval blanc d'Henri 4?")
    rep = input()
    if rep == "blanc":
        print("Bravo!")
        aPasTrouve = False # False signifie faux en anglais
    else:
        print("Non! Recommence!")
print("Voila tu as réussi!")
Quelle est la couleur du cheval blanc d'Henri 4?
vert
Non! Recommence!
Quelle est la couleur du cheval blanc d'Henri 4?
rouge
Non! Recommence!
Quelle est la couleur du cheval blanc d'Henri 4?
blanc
Bravo!
Voila tu as réussi!

Fonctions

Une fonction est un morceau de programme qui évitera de coder plusieurs fois la même chose. Quand on programme on dit souvent Si c'est la 3e fois que l'on écrit ces lignes c'est qu'il faut en faire une fonction.

Voici différentes utilisations de fonctions.

Fonctions numériques

En math, on utilise les fonctions pour décrire les transformations (de nombres le plus souvent).

Par exemple: $$ f:x \mapsto 3x + 2$$ Cette fonction $f$ prend un nombre, le multiplie par 3 puis ajoute 2. On pourra la coder de la façon suivante:

In [12]:
def f(x):
    return 3*x+2

On vient de coder cette fonction, on peut ensuite l'utiliser

In [13]:
print(f(4))
print("L'image de 2.5 par la fonction f est ", f(2.5))
print("f(-2) = ", f(-2))
14
L'image de 2.5 par la fonction f est  9.5
f(-2) =  -4

Au collège, on a vu les "programmes de calculs". Ils peuvent eux aussi être codé avec des fonctions.

  • Choisir un nombre
  • Ajouter 5
  • Diviser par 10

Se code de la façon suivante:

In [14]:
def programme(nombre):
    reponse = nombre + 5
    reponse = reponse / 10
    return reponse
In [15]:
print(programme(60))
6.5

D'autres fonctions

Les fonctions numériques sont très utilisées en math mais en programmation, on manipule beaucoup d'autres types de fonctions.

On pourrait vouloir transformer un texte en un titre entouré de symboles #.

In [16]:
def entoure(titre):
    return '##### ' + titre + ' #####'
In [17]:
print(entoure('Mon titre'))
print(entoure("L'histoire du petit chaperon rouge"))
print(entoure('Fin'))
##### Mon titre #####
##### L'histoire du petit chaperon rouge #####
##### Fin #####

On peut même mettre un autre argument (en plus de titre) pour entourer avec autre chose que #.

In [18]:
def entoure(texte, symbole):
    return symbole*4 + ' ' + texte + ' ' + symbole*4
In [19]:
print(entoure('La belle au bois dormant', '-'))
---- La belle au bois dormant ----

Listes

In [20]:
L = [5, 2, 1, 2, 4, 5, 5]
  • max: valeur maximal de la liste
In [21]:
print(max(L))
5
  • min: valeur minimal de la liste
In [22]:
print(min(L))
1
  • len: calculer le nombre d'éléments dans la liste
In [23]:
print(len(L))
7
  • sum: calculer la somme des éléments de la liste
In [24]:
print(sum(L))
24
  • sorted: trier les éléments de la liste
In [25]:
print(sorted(L))
[1, 2, 2, 4, 5, 5, 5]
  • Récupérer le i-ième élément de la liste (/!\ on commence à compter à partir de 0)
In [26]:
# Le premier élément de la liste
print(L[0])
# le 3e élément de la liste
print(L[2])
5
1
  • Compter l'effectif d'une valeur
In [27]:
L.count(2)
Out[27]:
2
  • Faire une boucle sur tous les éléments de la liste
In [28]:
for x in L:
    print(x)
5
2
1
2
4
5
5

Graphiques

Pour faire des graphiques, il faut que la ligne suivante fasse partie des premières lignes de votre programme.

In [29]:
import matplotlib.pyplot as plt

Ensuite, on définit les abscisses et les ordonnées sous forme de listes (il faut que les 2 listes aient le même nombre d'éléments).

In [30]:
abscisses = [1, 2, 3, 4, 5, 6]
ordonnees = [4, 10, 1, -3, 6, 0]

On peut tracer une courbe:

In [31]:
plt.plot(abscisses, ordonnees)
Out[31]:
[<matplotlib.lines.Line2D at 0x7f0ad9c090b8>]

Un nuage de points

In [32]:
plt.plot(abscisses, ordonnees, '+')
Out[32]:
[<matplotlib.lines.Line2D at 0x7f0ad9b9d978>]

Un diagramme bar

In [33]:
plt.bar(abscisses, ordonnees)
Out[33]:
<BarContainer object of 6 artists>
In [ ]: