Python 2.7 (tutoriel)


Introduction

Logo Python (<a href=image source)">
Logo Python (image source)

C'est quoi python ?: Python est un langage de programmation dont le développement a commencé dans les années 90 avec un hollandais nommé Guido van Rossum. La version actuelle de python est la 3.3, mais la version 2.7 est encore très largement utilisée, principalement pour des raisons de compatibilités avec certaines bibliothèques. La particularité principale de python est d'être un langage interprété et non pas compilé contrairement à d'autres langages de programmation (comme. C, C++, fortran, etc). Python est un langage qui excelle particulièrement dans le domaine du traitement de l'information (pour consulter la page officielle de python cliquez sur ce lien externe: python site officiel).

Quels sont les avantages de python ?:

  • Python est gratuit
  • Python est open source
  • Python est Multiplate-forme (fonctionne sous Windows, Mac OS, Linux, Unix, Mac OS, Android, iOS, etc)
  • Python permet de faire du calcul scientifique (bibliothèque Scipy)
  • Python permet de faire du calcul matriciel (bibliothèque Numpy)
  • Python dispose d'une bibliothèque de tracer (bibliothèque Matplotlib)
  • Python permet de faire du traitement d'image (bibliothèque PIL)
  • Python permet de faire du traitement de son
  • Python permet de créer des interfaces graphiques: GUI pour Graphical User Interface (bibliothèque Tkinter, wxPython, etc)
  • Python permet de créer des applications Web (par exemple le web framework Django)
  • Python permet de créer des interfaces pour la gestion de base de données (bibliothèque MySQLdb
  • Python permet de communiquer avec des ports série RS232, Bluetooth... (bibliothèque PySerial
  • etc

Pourquoi python 2.7 et pas python 3.3 ?:

Tout dépend de vos besoins !. Si vous utilisez python tout seul, ce qui est rarement le cas, alors cela n'a pas vraiment d'importance. Cependant, les difficultés apparaissent souvent quand on veut importer des bibliothèques python (pour tracer des graphes, pour faire du traitement d'image, etc) car certaines bibliothèques ne marchent bien (pour l'instant) qu'avec la version 2.7 de python. Autrement-dit, souvent la difficulté est d'avoir une version de python et un ensemble de bibliothèques qui marchent bien ensemble et de pouvoir facilement les mettre à jour. Si vous avez une idée des bibliothèques python dont vous allez avoir besoin, il est recommandé de vérifier au préalable la version python nécessaire au bon fonctionnement de celles-ci. Il est également intéressant de savoir qu'il existe des packages proposant d'installer directement python et un ensemble de bibliothèques (voir par exemple le package gratuit de la société enthought)

Installation de python

Comment installer python ?: Vérifiez au préalable qu'une version de python n'est pas déjà installée sur votre système. Pour cela lancez le terminal (sous Mac) ou le programme cmd (sous Windows) et tapez le mot "python" (voir figure 1). Si cette commande ne retourne pas " command not found" cela signifie que python est déjà installé sur votre système. Dans ce cas veuillez vérifier la version de python. Si python n'est pas installé ou que la version est inférieure à la 2.7 allez sur la page (externe) suivante: installer python puis téléchargez le package d'installation correspondant à votre système. Une fois le package complètement téléchargé cliquez simplement dessus, l'installation doit alors se faire automatiquement. Quand l'installation est terminée relancez le terminal ou redémarrez votre ordinateur.

Les bases (QuickStart)

Comment débuter avec python ?: Python est un langage de programmation
relativement simple à apprendre, avec lequel vous pouvez rapidement réaliser
de simples programmes. Cependant, python est aussi un langage de programmation orientée objet (POO), ce paradigme de programmation est pour une débutant légèrement plus difficile à aborder. Néanmoins une fois ce paradigme compris et maîtrisé la programmation avec python devient tout de suite beaucoup plus facile (de plus comprendre le paradigme de la POO peut aussi vous être utile pour apprendre d'autres langages de programmation comme le C++, Java, etc qui sont aussi basés sur la POO). L'objectif de cet article d'introduction à python est de présenter les éléments de base de ce langage sans donner trop de détails (dans les tutoriels en anglais on rencontre souvent cette approche sous les termes: "quick-start", "head first" ou encore "nutshell"). Dans les articles sous-jacents nous introduirons progressivement des notions de plus en plus avancées et donnerons des exemples concrets d'utilisation de python qui est une manière plus ludique d'apprendre et de découvrir ce langage.

Lancer python

Il existe plusieurs façons de lancer python. Pour lancer directement python, il faut aller dans terminal (sous Mac) ou cmd (sous Windows) puis
taper tout simplement python comme dans cet exemple:

Lancer l'interpréteur de commandes Python (exemple sous Mac)
Lancer l'interpréteur de commandes Python (exemple sous Mac)

new-host:~ toto$ python
Enthought Python Distribution -- www.enthought.com
Version: 7.3-2 (64-bit)

Python 2.7.3 |EPD 7.3-2 (64-bit)| (default, Apr 12 2012, 11:14:05) 
[GCC 4.0.1 (Apple Inc. build 5493)] on darwin
Type "credits", "demo" or "enthought" for more information. 
>>> print 'Hello Python !'
Hello Python !
>>>> 
>>>>
>>>>
>>>

Apres avoir tapé le mot python vous devez alors obtenir des informations comme la version python utilisée (dans cet exemple python provient de la distribution Enthought) puis enfin le signe >>> qui est l'invite de commande python. Vous pouvez alors tester votre première commande: "print 'Hello python'" puis tapez sur entrer. (Remarque: pour débuter avec python et tester vos premières commandes il existe aussi ce lien: tester python en ligne. Maintenant que nous savons comment lancer python nous allons voir les bases essentielles de tous programmes python.

Les variables

Une variable, en programmation, peut être vu comme un conteneur permettant de stocker une valeur. Avec python il n'y a pas de déclaration de type (integer, float, etc). Python attribue automatiquement un type à une variable à chaque fois que vous assignez une valeur. Pour connaitre alors le type d'une variable il faut utiliser la fonction: 'type(ma variable)' comme dans cet exemple:

Les variables avec python
Les variables avec python

>>> i = 2
>>> x = 7.0
>>> name = 'toto'
>>> print i, x, name
2 7.0 toto
>>> print type(i), type(x), type(name)
<type 'int'> <type 'float'> <type 'str'>
>>>

Attention, le type d'une variable n'est pas définitif en python. Le type peut en effet changer à chaque fois que vous assignez une nouvelle valeur:

Les variables avec python (Attention le type n'est pas définitif)
Les variables avec python (Attention le type n'est pas définitif)

>>> i = 2
>>> type(i)
<type 'int'>
>>> i = 2.0
>>> type(i)
<type 'float'>
>>>

Règles sur les noms de variables en python: (1) Doit commencer avec la lettre (a - z, A - B) ou un underscore (_); (2) Les lettres suivantes peuvent être uniquement des lettres, des nombres ou _; (3) Les noms de variables sont "Case Sensitive' (voir définition: lien externe vers wikipedia); (4) Il existe des mots réservés qui ne peuvent pas être utilisés comme: and,del,from,not,while,as,elif,global,or,with,assert,else,if,pass,yield,break,except,import,print,break,except,import,
print,class,exec,in,raise,class,exec,in,raise,continue,finally,is,return,continue,finally,is,return,def,for,lambda,try.

Les opérateurs

Connaissant les variables la prochaine étape est d'introduire les opérateurs. On va ici uniquement voir les opérateurs usuels en python.
Vous connaissez déjà au moins un opérateur: l'opérateur égale = qui permet d'assigner une valeur à une variable.

Les opérateurs arithmétiques

Commençons tout d'abord avec les opérateurs arithmétiques qui permettent de modifier la valeur d'une variable de type int, float, etc. Ce tableau présente les opérateurs arithmétiques en python en prenant comme variable d'exemple = 2.0 et b = 3.0:

Opérateur Description Exemple
+ addition a + b donne 5.0
- soustraction a - b donne -1.0
* multiplication a * b donne 6.0
/ division a / b donne 0.6666666666666666
% modulo b % a donne 1.0
** exponentielle a**b donne 8.0
// quotient b // a donne 1.0

Essayez alors de manipuler les opérateurs arithmétiques comme dans ce simple exemple:

Les opérateurs arithmétiques avec python
Les opérateurs arithmétiques avec python

>>> a = 2.0
>>> b = 3.0
>>> a + b
5.0
>>> a - b
-1.0
>>> a * b
6.0
>>> a / b
0.6666666666666666
>>> b % a
1.0
>>> a**b
8.0
>>> b // a
1.0
>>>

Les opérateurs de comparaisons

L'autre type d'opérateurs qui va nous être très utile par la suite (surtout pour les boucles if, for, etc) ce sont les opérateurs de comparaisons. Comme leur nom l'indique ces opérateurs permettent de comparer deux choses et retourne vrai (True) ou faux (False). Ce tableau présente les opérateurs de comparaisons en python en prenant comme variable d'exemple x = 21:

Opérateur Description Exemple
== Vérifie si deux variables sont égales , si oui alors la condition est vérifiée x == 18 donne False
!= Vérifie si deux variables sont différentes, si oui alors la condition est vérifiée x != 18 donne True
> Vérifie si la première variable est plus grande que la deuxième, si oui alors la condition est vérifiée x > 18 donne True
< Vérifie si la première variable est plus petite que la deuxième, si oui alors la condition est vérifiée x < 18 donne False
>= Vérifie si la première variable est plus grande ou égale à la deuxième, si oui alors la condition est vérifiée x >= 18 donne True
<= Vérifie si la première variable est plus petite ou égale à la deuxième, si oui alors la condition est vérifiée x <= 18 donne False

Essayez alors de manipuler les opérateurs de comparaisons comme dans ce simple exemple:

Les opérateurs de comparaisons avec python
Les opérateurs de comparaisons avec python

>>> x = 21
>>> x == 18
False
>>> x != 18
True
>>> x > 18
True
>>> x < 18
False
>>> x >= 18
True
>>> x <= 18
False
>>>

La condition "if"

Syntaxe

if condition est vrai:
    faire quelquechose

Exemple:

La condition
La condition "if" avec python

>>> x = -2.0
>>> if x > 0:
...     print "Value is positive"
... else:
...     print "Value is negative"
... 
Value is negative
>>>

Les boucles "For" et "while"

La Boucle "For"

for i in iterable object :
    do something

Exemple

La Boucle
La Boucle "For" avec python

>>> for i in [1,2,3,4,5,6]:
...     print i
... 
1
2
3
4
5
6
>>>

La Boucle "while"

while condition is true:
    do something

Exemple

La Boucle
La Boucle "while" avec python

>>> i = 1
>>> while i < 7:
...     print i
...     i = i + 1
... 
1
2
3
4
5
6
>>>

Références

Internet regorge de sites de qualité sur le langage python (souvent dans la langue anglaise):

Liens Description
Lien (externe) 1 Tutorials Point python
Lien (externe) 2 Cours python sur developpez.com
Lien (externe) 3 The Python Tutorial
Lien (externe) 4 Tester python en ligne
Image

of