La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Présentation python : Épisode 1 ● Introduction à Python ● Les types de base et leur manipulation ● Les structures de contrôle ● Les fonctions Étienne Loks.

Présentations similaires


Présentation au sujet: "Présentation python : Épisode 1 ● Introduction à Python ● Les types de base et leur manipulation ● Les structures de contrôle ● Les fonctions Étienne Loks."— Transcription de la présentation:

1 Présentation python : Épisode 1 ● Introduction à Python ● Les types de base et leur manipulation ● Les structures de contrôle ● Les fonctions Étienne Loks et David Mentré - 14 janvier 2008

2 Pourquoi python ? ● Apprentissage rapide ● Portable ● Adapté à des projets de petite et grande envergure ● Langage mature qui évolue toujours ● Richesse des bibliothèques disponibles ● Utilisé pour enrichir des applications existantes ● C'est beau !

3 Pourquoi pas ? ● Performances moyennes ● Ne fais pas la une de 01 Informatique ;) ● Manque d'utilisateurs dans certains domaines

4 Deux mots d'histoire ● Créé en 1990 par Guido Van Rossum pour des besoins de recherche interne mais aussi pour l'enseignement ● Licence compatible GPL depuis la version 1.6.1 ● Développement d'une communauté importante et structurée (fondation PSF, les PEPs...)

5 Exemples de réalisation ● Langage d'extension pour The Gimp, Blender, grass ● Utilitaires d'administration Ubuntu ● Frameworks web : Turbogears, Django, etc. ● Gestion de projet : Trac

6 Plongeons nous dedans ! ● Disponible de base sur de nombreux systèmes d'exploitation (GNU/Linux, OS X) ● Installable facilement si ce n'est pas le cas ● paquet python sur Debian, Ubuntu ● executable Windows disponible ● Éditeurs : eric, Emacs avec python-mode, vim, Eclipse avec PyDEV, ipython

7 Un langage de haut niveau ● Un langage interpreté (avec génération de pseudo- code) : ● utilisation interactive ● gestion automatique de la mémoire ● à typage dynamique ● à typage fort ● programmation impérative et objet (et même un peu de fonctionnel)

8 Ce que vous allez apprendre ● Entier, flottants ● utilisation comme une calculette ● Chaîne de caractères ● Liste d'éléments, tableaux ● Tuples ● Dictionnaire ● Fonctions

9 Au boulot ! ● Lancer l'interpréteur $ python Python 2.5.1 (r251:54863, Oct 5 2007, 13:36:32) [GCC 4.1.3 20070929 (prerelease) (Ubuntu 4.1.2-16ubuntu2)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> ● Utilisons le comme une calculette >>> 5+3 8 >>> 2 - 9 -7 >>> 20/3 6 >>> 20.0/3 6.666666666666667

10 L'affectation ● Quelques exemples >>> n=7 >>> message = "Quoi de neuf ?" >>> pi =3.14159 >>> n 7 >>> message 'Quoi de neuf ?' >>> pi 3.1415899999999999 ● Récupérer des données de l'utilisateur >>> a=input('') 34 >>> a 34 >>> a=input('> ') > "toto" >>> a 'toto'

11 Les types de base ● Entiers ● Flottants ● Chaînes de caractères >>> a="tati" >>> len(a) 4 >>> a[3] 'i' >>> a[3]='j' Traceback (most recent call last): File " ", line 1, in TypeError: 'str' object does not support item assignment

12 Listes et tableaux ● Definir une liste >>> a = ['spam', 'eggs', 100, 1234] >>> a ['spam', 'eggs', 100, 1234] ● Quelques opérations >>>> a[0] 'spam' >>> a[3] 1234 >>> a[-2] 100 >>> a[1:-1] ['eggs', 100] >>> a[:2] + ['bacon', 2*2] ['spam', 'eggs', 'bacon', 4] >>> 3*a[:3] + ['Boo!'] ['spam', 'eggs', 100, 'spam', 'eggs', 100, 'spam', 'eggs', 100, 'Boo!']

13 Listes et tableaux (II) ● Les listes sont mutables >>> a ['spam', 'eggs', 100, 1234] >>> a[2] = a[2] + 23 >>> a ['spam', 'eggs', 123, 1234] ● Longueur et listes imbriquées >>> q = [2, 3] >>> p = [1, q, 4] >>> len(p) 3 >>> p[1] [2, 3] >>> p[1][0] 2 >>> p[1].append('xtra') # See section 5.1 >>> p [1, [2, 3, 'xtra'], 4] >>> q [2, 3, 'xtra']

14 Tuples ● Quelques exemples de tuples >>> t = 12345, 54321, 'Salut !' >>> t[0] 12345 >>> t (12345, 54321, 'hello!') >>> # Les tuples peuvent aussi être imbriqués :... u = t, (1, 2, 3, 4, 5) >>> u ((12345, 54321, 'Salut !'), (1, 2, 3, 4, 5))

15 Dictionnaires ● Créer un dictionnaire >>> tel = {'jack': 4098, 'sape': 4139} >>> tel['guido'] = 4127 >>> tel {'sape': 4139, 'guido': 4127, 'jack': 4098} ● Utiliser un dictionnaire ● >>> tel['jack'] 4098 >>> del tel['sape'] >>> tel['irv'] = 4127 >>> tel {'guido': 4127, 'irv': 4127, 'jack': 4098} >>> tel.keys() ['guido', 'irv', 'jack'] >>> tel.has_key('guido') True >>> 'guido' in tel True

16 Structures de contrôle ● Tests booléens ● if ● for ● while

17 Petite pause ● Avec tout ce que vous avez vu jusqu'à maintenant, vous pouvez écrire des scripts

18 Fonctions ● Définition d'une fonction >>> def carre(x):... return x*x... ● Passage des paramètres >>> carre (2) 4 >>> carre (pi) 9.8695877280999991 ● Visibilité des variables ● Paramètres et arguments

19 Fonctions (II) ● Visibilité des variables >>> a = 4 >>> def f(x):... a=5... return x*a... >>> a 4 >>> f(4) 20 ● Paramètres et arguments >>> a=4 >>> def f(b):... b = b + 3... return b... >>> a 4 >>> f(a) 7 >>> a 4

20 En guise de conclusion ● Avec tout ce que vous avez vu (et un peu de lecture de documentation) vous pouvez faire des programmes (impératifs) ● Un exemple >>> for line in urllib2.urlopen('http://gulliver.eu.org/'):... if line.find('http') != -1:... print line,... "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> href="http://gulliver.eu.org/" class="header">Association Gulliver http://gulliver.eu.org/http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd ● Prochain épisode : les objets

21 Références ● Pour apprendre la programmation et Python http://www.python-fr.org/uploads/files/python_notes.pdf http://www.python-fr.org/uploads/files/python_notes.pdf ● La documentation de référence (en Anglais) http://docs.python.org http://docs.python.org ● Une communauté française http://python-fr.org/ http://python-fr.org/


Télécharger ppt "Présentation python : Épisode 1 ● Introduction à Python ● Les types de base et leur manipulation ● Les structures de contrôle ● Les fonctions Étienne Loks."

Présentations similaires


Annonces Google