Initiation à l’utilisation du logiciel Python en sciences physiques
I Introduction
Python est un langage de programmation dont le développement a commencé dans les années
90 avec le hollandais Guido van Rossum. Python est un langage qui peut être utilisé dans le domaine
du traitement de l’information.
Quelques avantages de python :
- Python est gratuit, téléchargeable sur internet : http ://www.pyzo.org/downloads.html
- Python est multiplate-forme : il fonctionne sous Windows, Mac OS, Linux, Android, ...
- Python permet de faire du calcul scientifique (bibliothèque Scipy), du calcul matriciel (biblio-
thèque Numpy), le tracé de graphiques (bibliothèque Matplotlib), etc.. Il permet de faire du traite-
ment d’image (bibliothèque PIL) et du traitement de son.
II Installation et lancement de Python
II.1. Installation de Python
1. Sous windows ou Mac OS : copier le dossier PyzoScilab sur votre ordinateur (depuis la clé
USB, ou le CD). Il contient les dossiers pyzo2014a, windows 64(32), Mac etc.
2. Double-cliquer sur le dossier (copié) PyzoScilab puis sur l’un des sous dossiers : Windows
64 (ou 32), ou sur Mac (cliquer sur pyzo-distro... .dmg).
3. Installer le logiciel Python à l’aide du dossier : pyzodistro2014awin32, et se laisser guider...
II.2. Lancement d’une session Python (sous pyzo)
On clique sur l’application pyzo (raccourci sur le bureau ou dans le dossier Pyzo2014a). On
obtient la page d’accueil (de travail) qui contient les (trois) éléments suivants :
Figure 1 – Page d’accueuil Python
D.Belkheiri C.C.I.R en s.physiques 1 / 16 Tournez la page SVP
Initiation à l’utilisation du logiciel Python en sciences physiques
1. Barre de menus (et sous menus) : File (new, Open, Save...)-Edit( Copy, Paste....)-...-Run ( Run
file as script,... )
2. La fenêtre shell, elle contient deux éléments :
- Le texte (version, messages d’erreurs.....) : Python 3.4.1 |Continuum Analytics, ...Error...
- Les lignes d’invites In[i] : taper ici l’instruction du programme, numéro i=1,2..., demandée
à python puis valider par enter.
- Chaque ligne est suivie d’une ligne de résultat Out[i] :résultat de l’instruction i.
3. La fenêtre script : c’est un texte-programme (langage Python) formé d’instructions écrites
sur des lignes; après écriture, on l’enregistre ( Ctrl+S) le fichier sous la forme : nomfichier.py
(chemin...). On l’exécute à l’aide de l’icone Exécuter (ou Ctrl+Maj+E) de la barre des menus
et les résultats s’affichent dans le shell. On pourra ouvrir un (ce) fichier à l’aide de File de la
barre des menus.
Dans la suite, on préfère travailler (et sauver) les scripts écrits dans les lignes de l’éditeur; car ce qui
est écrit dans le shell (fenêtre du dessus) est exécuté mais ne pourra être sauvé pour les utilisations
ultérieures. Les scripts sont proposés en texte de format (verbatim) différent de celui du texte, ces
exemples peuvent être copiés puis améliorés...
II.3. Quelques règles de syntaxe et d’utilisation de Python
Les types de bases de Python sont les nombres (entiers : int, réels : float, ...), les listes (array,
lists, tuples...) et les mots (string : str)...
Python fait les opérations de calculs usuelles (sur les réels) : +, -, * , /, et a//b (ex :10 // 3 =
3, et le modulo a%b (ex : 10%3 = 1) . La virgule est notée par un point ’.’ (exemple : 3.14).
Avec Python, les opérateurs de comparaison (supérieur, inférieur,etc...) sont : < , > <=, >=,
== (égal), x!=y (x différent de y). L’affectaion est : nom-de-la-variable = valeur.
Les nombres complexes, j est l’imaginaire tel que j2=1. On écrit : z=3+5j et non z=3+5*j.
Les mots-clés réservés de Python sont : and, as, break, class, del, else, for, if, etc...
Les commentaires sont débutés par le caractère # (dièse : #) et se terminent par un saut de
ligne : ce sont des textes explicatifs ignorés par Python.
Les blocs sont identifiés par l’indentation, au lieu d’accolades comme en C/C++, ou de Begin
... End comme en Pascal.
La fonction print(...) permet d’afficher .... : on peut lui demander d’afficher une ou plusieurs
variables et aussi du texte et celui-ci est écrit entre deux quotes ’texte’.
La fonction y=input(quelqueChose) : cette instruction interrompt le programme et attend
que l’utilisateur saisisse (tape),dans le shell : quelqueChose ( ’texte’ ou variable), puis il va-
lider en appuyant sur entrée, alors Python affecte quelqueChose à y.
Pour exécuter une partie du script, on la sélectionne, puis on appuie sur alt+enter.
III Exemples élémentaires d’utilisation de Python
III.1. Premier exemple d’écriture directe dans le shell
Uniquement dans cet exemple, on écrit les instructions élémentaires directement dans les lignes du shell et on
obtient les résultats après enter.
D.Belkheiri C.C.I.R en s.physiques 2 / 16 Tournez la page SVP
Initiation à l’utilisation du logiciel Python en sciences physiques
Dans la suite on écrira les exemples étudiés (copier et améliorer) sous forme de scripts (fenêtre
du bas); après sauvegarde (sous nom.py) et exécution (ctrl +E) les résultats seront affichés dans le
shell avec print ou par appel de la variable à afficher : x,t etc.. Pour obtenir de l’aide : help (mot),
et sur internet, www.python.org/doc.
III.2. L’affectation et la commande print (... )
III.3. La commande input (... ) : Python attend qu’on tape (saisisse) quelque chose au clavier dans
le shell, et qu’on valide par enter.
IV Quelques bibliothèques : numpy, scipy, simpy,...
IV.1. Fonctions mathématiques usuelles : log, sin ...et bibiothèque numpy
Problème! Python affiche le message : NameError : log, sqrt, .. not defined!
Pour utiliser ces fonctions usuelles et d’autres utilisations, il est nécessaire d’importer la biblio-
thèque numpy ( à suivre ).
Dans la première ligne du script on écrit l’instruction : import numpy as np et alors il faut pré-
céder ( ) la fonction souhaitée par le préfixe np.NomDeLaFonction, par exemple : np.cos(np.pi).
Remarque : si on utilise l’instruction from numpy import *, on peut utiliser directement cos(3.14)
IV.2. Exemples de fonctions usuelles sur les réels et les complexes
D.Belkheiri C.C.I.R en s.physiques 3 / 16 Tournez la page SVP
Initiation à l’utilisation du logiciel Python en sciences physiques
Résultats affichés :
IV.3. Manipulation de listes et tuples
Les listes et les tuples sont vus comme des tableaux : les éléments d’une liste sont écrits entre
crochets [a,b], alors que ceux d’un tuple sont écrits entre parenthèses (a,b).
IV.4. Manipulation de vecteurs (array) et matrices
D.Belkheiri C.C.I.R en s.physiques 4 / 16 Tournez la page SVP
Initiation à l’utilisation du logiciel Python en sciences physiques
IV.5. Création d’une fonctions de variable(s) f(x)
Syntaxe d’écriture (à respecter), avec l’indentation (décalage de la 2eme ligne)
def nomdefonction (x1, x2,...,xn) :
return expression en fonction de x1,...,xn
— Exemple
IV.6. Bibliothèque scipy : résolution d’équation f(x) = 0. Exemple : loi de Wien.
On a choisi d’utiliser le programme brentq(f,xi,xf) qui permet de déterminer x0vérifiant f(x0=
0 sachant que x0est compris entre xiet xf.
Remarque : on peut aussi faire une résolution graphique par détermination du point d’intersec-
tion avec l’axe X’X de f(x) = ex1+x
5
IV.7. Bibliothèque sympy (calculs symboliques)
1. Exemple 1 : résolution de systèmes d’équations.
Exercice
On étudie la mise en solution d’un acide faible AH dans l’eau. Faire l’inventaire des espèces
présentes dans l’eau et écrire le système d’équations permettant de déterminer les différentes
concentrations. En déduire la valeur du pH. Données : concentration c, constante d’acidité
Kaet produit ionique de l’eau Ka.
2. Exemple 2 : le développement limité de sin(x) (ou de log(1+x)) pour x voisin de 0.
D.Belkheiri C.C.I.R en s.physiques 5 / 16 Tournez la page SVP
1 / 16 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !