Note Avant toute chose, veuillez choisir votre langue dans le menu Langs
(attention à ne pas avoir les 2 langues en même temps).
Note First of all, please choose your language from the Langs
menu (be careful not to have both languages at the same time).
La calculatrice Python¶
Le langage de programmation Python peut être utilisé de facon interactive à savoir que lorsqu'on tape une commande, Python l'exécute immédiatement et affiche la réponse :
1+1
2
Notes sur l'environnement Jupyter¶
- Une cellule peut avoir 3 états :
- pas sélectionnée (pas de cadre autour de la cellule)
- sélectionnée (cadre bleu)
- sélectionnée et en mode édition (cadre vert)
- Cliquer selectionne une cellule (voire la passe directement en mode édition pour les cellules de calcul)
- Double cliquer selectionne et passe en mode édition (sur une zone de texte, la syntaxe Markdown apparait)
- Enter comme cliquer permet de descendre dans les états quand Esc permet d'en remonter.
- Pour que Python recalcule le résultat d'une cellule, faire Shift+Enter (permet de voir la mise en forme d'une cellule de texte).
Exercice : modifier la cellule de calcul ci-dessus pour calculer 1+2
print(1 + 7*2)
print(49**0.5)
print(7 % 5)
15 7.0 2
La commande print
permet d'afficher un résultat, ce qui est différent du résultat de la cellule qui ne serait que la dernière commande (d'ailleurs la celle ci-dessus n'a pas de Out
).
Python propose par défaut les opérateurs de base (dont les opérateurs **
pour la puissance et %
pour le modulo).
Pour des fonctions mathématiques plus avancées il faut importer des bibliothèques (on verra plus tard ce que sont les bibliothèques). On commence avec la bibliothèque scientifique NumPy
:
from numpy import *
print(sin(3.14))
print(sin(pi))
print(log(e))
0.0015926529164868282 1.2246467991473532e-16 1.0
log2(16)
4.0
Pour avoir la documentation sur une fonction utilisez ?
(spécifique à iPython). En simple Python on fait help(log)
. Il faut lancer la cellule (Shift+Enter) pour voir le résultat dans une sous-fenêtre en bas de la page (cliquer sur la croix pour la fermer ou taper Esc sur une cellule en mode édition).
?log
Les nombres complexes¶
Les complexes existent mais le nombre imaginaire est j
et il faut écrire 1j
et non simplement j
:
1j**2
(-1+0j)
sqrt(1j)
(0.7071067811865476+0.7071067811865476j)
e**(pi*1j)
(-1+1.2246467991473532e-16j)
On notera l'erreur d'arrondi dans le calcul d'$e^{i \pi}$ pour la partie imaginaire.
L'ordre de priorité des opérateurs¶
L'ordre de priorité des opérateurs est :
**
la puissance-x
,+x
l'opérateur unitaire moins ou plus*
,/
,//
,%
(//
étant la division entière et%
le modulo)+
,-
En cas d'égalité de priorité, les opérations se font de gauche à droite. Il est bien sûr possible d'utiliser les parenthèses pour préciser la priorité.
print( -3**2 )
print( 9/3*3 )
print( 9/(3*3) )
-9 9.0 1.0
Les messages d'erreurs¶
Comme tous les langages, Python essaie d'aider au mieux l'utilisateur lorsqu'il détecte une erreur. Pour cela il indique la ligne où se trouve l'erreur et son type. Le plus souvent le message est suffisamment clair, parfois il faut chercher de l'aide sur le web...
print("Let divide by zero:")
x = 1/0
print("This line is not going to be printed because the error breaks the run")
Let divide by zero:
--------------------------------------------------------------------------- ZeroDivisionError Traceback (most recent call last) <ipython-input-10-f5ef62ef1fa7> in <module>() 1 print("Let divide by zero:") ----> 2 x = 1/0 3 print("This line is not going to be printed because the error breaks the run") ZeroDivisionError: division by zero
{{ PreviousNext("../lesson0 Introduction/Introduction.ipynb", "01 - Les variables.ipynb") }}