relecture de la formation python
This commit is contained in:
parent
76c321feb6
commit
dfa5883b0f
@ -32,10 +32,10 @@ Une interface décrit un ensemble de comportements.
|
||||
on peut considérer une interface comme un protocole d'utilisation d'un objet
|
||||
dans un contexte donné.
|
||||
|
||||
on peut alors créer des outils qui sauront traiter n'importe quel objet
|
||||
pourvu qu'il respecte une ensemble d'interfaces.
|
||||
On peut alors créer des outils qui sauront traiter n'importe quel objet
|
||||
pourvu qu'il respecte un ensemble d'interfaces.
|
||||
|
||||
.. todo:: travailler l'héritage, l'aggrégation, la délégation
|
||||
.. todo:: travailler l'héritage, l'agrégation, la délégation
|
||||
|
||||
Voici un exemple de classe `Voiture` :
|
||||
|
||||
|
@ -7,19 +7,19 @@ L'objectif de ce cours est de vous apprendre à programmer en
|
||||
:term:`python`. Ce cours a été fait avec :term:`sphinx`, l'outil de
|
||||
gestion de documentation en python utilisé pour documenter python lui-même.
|
||||
|
||||
avec python :
|
||||
Avec python :
|
||||
|
||||
- vous n'avez pas grand chose à savoir pour arriver à faire beaucoup de choses,
|
||||
- vous n'avez pas grand chose à savoir pour arriver à faire beaucoup de choses ;
|
||||
|
||||
- vous allez pouvoir travailler de manière
|
||||
- vous allez pouvoir travailler de manière :
|
||||
|
||||
- entièrement autonome
|
||||
- rapide
|
||||
- agile (au sens des méthodes agiles)
|
||||
- entièrement autonome ;
|
||||
- rapide ;
|
||||
- agile (au sens des méthodes agiles) ;
|
||||
|
||||
- vous allez progresser rapidement
|
||||
- vous allez progresser rapidement ;
|
||||
|
||||
- aucune connaissance préalable en programmation n'est requise
|
||||
- aucune connaissance préalable en programmation n'est requise ;
|
||||
|
||||
- le hello world en une ligne::
|
||||
|
||||
@ -49,7 +49,7 @@ avec python :
|
||||
- lorsqu'on lance python sans spécifier de nom de fichier, c'est l'interpréteur
|
||||
python qui est lancé (le "prompt")
|
||||
|
||||
Taper "python" dans votre console
|
||||
Taper "python" dans votre console.
|
||||
|
||||
::
|
||||
|
||||
@ -72,20 +72,20 @@ Taper "python" dans votre console
|
||||
les modules, :ref:`namespaces` et la librairie standard
|
||||
:doc:`stdlib`
|
||||
|
||||
pour avoir de l'aide, taper dans le prompt :
|
||||
Pour avoir de l'aide, taper dans le prompt :
|
||||
|
||||
>>> help(function)
|
||||
|
||||
usage de python
|
||||
Usage de python
|
||||
------------------
|
||||
|
||||
à peu près tous les domaines de l'informatique, du scripting système à la génération
|
||||
À peu près tous les domaines de l'informatique, du scripting système à la génération
|
||||
de pdf en passant par le développement web et le développement rapide d'applications.
|
||||
|
||||
|
||||
exemple : web server
|
||||
|
||||
pour créer un serveur web simplement::
|
||||
Pour créer un serveur web simplement::
|
||||
|
||||
python -m SimpleHTTPServer 8000 localhost
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
Interactions avec l'utilisateur
|
||||
===============================
|
||||
|
||||
les prompts
|
||||
Les prompts
|
||||
--------------
|
||||
|
||||
`raw_input` ou `input`
|
||||
@ -14,10 +14,10 @@ les prompts
|
||||
|
||||
.. _cmdlabel:
|
||||
|
||||
le module :mod:`cmd` et les interpréteurs
|
||||
Le module :mod:`cmd` et les interpréteurs
|
||||
--------------------------------------------
|
||||
|
||||
le monde des interpréteur ligne de commande...
|
||||
Le monde des interpréteur ligne de commande...
|
||||
|
||||
Peu après l'âge de bronze vint le temps de l'interpréteur ligne de commande,
|
||||
c'est-à-dire quelque chose de plus spécifique que **l'application ligne de commande**,
|
||||
@ -26,18 +26,18 @@ ou que l'utilitaire ligne de commande.
|
||||
|
||||
Un interpréteur ligne de commande est un programme qui :
|
||||
|
||||
- est forcément plein texte
|
||||
- vous donne un prompt
|
||||
- prends toutes ses entrées d'un coup
|
||||
- produit une sortie (typiquement des lignes de texte)
|
||||
- vous redonne un prompt
|
||||
- est forcément plein texte ;
|
||||
- vous donne un prompt ;
|
||||
- prend toutes ses entrées d'un coup ;
|
||||
- produit une sortie (typiquement des lignes de texte) ;
|
||||
- vous redonne un prompt.
|
||||
|
||||
Le shell unix est un bon exemple d'interpréteur ligne de commande.
|
||||
|
||||
Un utilitaire ligne de commande est un programme unix-like qui prend toutes
|
||||
les entrées d'un coup, et qui vous renvoie une sortie d'un coup.
|
||||
|
||||
le module :mod:`cmd` : exemple d'utilisation
|
||||
Le module :mod:`cmd` : exemple d'utilisation
|
||||
|
||||
.. module:: cmd
|
||||
:synopsis: interpréteur ligne de commande
|
||||
@ -65,7 +65,7 @@ le module :mod:`cmd` : exemple d'utilisation
|
||||
|
||||
#Prompt>
|
||||
|
||||
to add a command, just use inheritance::
|
||||
Pour ajouter une commande, utilisez juste l'héritage::
|
||||
|
||||
|
||||
>>> from cli import Cli
|
||||
@ -92,10 +92,10 @@ to add a command, just use inheritance::
|
||||
|
||||
.. todo:: faire un petit projet d'interpréteur ligne de commande du jeu C+/C-
|
||||
|
||||
lire et écrire dans un fichier
|
||||
Lire et écrire dans un fichier
|
||||
-------------------------------
|
||||
|
||||
les **handle de fichier** (file handles)
|
||||
Les **handle de fichier** (file handles)
|
||||
|
||||
|
||||
>>>
|
||||
|
@ -1,7 +1,7 @@
|
||||
Mettre en place son environnement de travail
|
||||
=============================================
|
||||
|
||||
un framework de développement intégré : :term:`IDLE`
|
||||
Un framework de développement intégré : :term:`IDLE`
|
||||
|
||||
.. glossary::
|
||||
|
||||
@ -21,9 +21,9 @@ un framework de développement intégré : :term:`IDLE`
|
||||
|
||||
.. _`librairie standard`: http://docs.python.org/2.7/library/index.html
|
||||
|
||||
Premier réflexe : la doc en ligne ou bien installée sur votre disque dur.
|
||||
Premier réflexe : consulter la doc en ligne ou bien installée sur votre disque dur.
|
||||
|
||||
la page d'accueil de la doc officielle python :
|
||||
La page d'accueil de la doc officielle python :
|
||||
|
||||
.. image:: images/DocPython.png
|
||||
|
||||
@ -32,7 +32,7 @@ modules :
|
||||
|
||||
.. image:: images/ModuleIndex.png
|
||||
|
||||
configurer son éditeur
|
||||
Configurer son éditeur
|
||||
----------------------
|
||||
|
||||
- les fichiers sources ont l'extenstion `.py`
|
||||
@ -40,7 +40,7 @@ configurer son éditeur
|
||||
- les blocs sont marqués par l'indentation (utilser 4 espaces), règler
|
||||
l'éditeur pour transformer les tabulations en espaces
|
||||
|
||||
configurer son prompt python
|
||||
Configurer son prompt python
|
||||
-------------------------------
|
||||
|
||||
.. envvar:: PYTHONPATH
|
||||
@ -48,7 +48,7 @@ configurer son prompt python
|
||||
pointe par défaut sur le répertoire courant, il est possible d'ajouter
|
||||
un path
|
||||
|
||||
à mettre dans votre `.bashrc` :
|
||||
À mettre dans votre `.bashrc` :
|
||||
|
||||
::
|
||||
|
||||
|
@ -21,7 +21,7 @@ python est un langage dynamiquement typé. qu'est-ce que cela signifie ?
|
||||
|
||||
- ouvrir l'interpréteur python
|
||||
- dans la console créer un objet de type integer, float, string, liste, dictionnaire
|
||||
- vérifier les types à l'aide de la fonction
|
||||
- vérifier les types à l'aide de la fonction `type()`
|
||||
- vérifier que en python tout est objet
|
||||
- type de base et types conteneurs
|
||||
- types mutables et types immutables
|
||||
@ -118,13 +118,11 @@ index(), find(), replace()
|
||||
|
||||
- enlever les accents
|
||||
|
||||
>>> import unicodedata
|
||||
>>> s = u"un été même pas chaud"
|
||||
>>> import unicodedata as U
|
||||
>>> s2 = ''.join(U.normalize('NFD', x)[0] for x in s)
|
||||
>>> s2
|
||||
u'un ete meme pas chaud'
|
||||
>>>
|
||||
|
||||
- enlever la ponctuation
|
||||
|
||||
@ -134,7 +132,7 @@ u'un ete meme pas chaud'
|
||||
>>> string.punctuation
|
||||
'!"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~'
|
||||
|
||||
- l'encodage (unicode):
|
||||
- l'encodage (unicode et la compression utf-8):
|
||||
|
||||
>>> u = u"éèà bla"
|
||||
>>> u
|
||||
@ -143,7 +141,6 @@ u'\xe9\xe8\xe0 bla'
|
||||
'\xc3\xa9\xc3\xa8\xc3\xa0 bla'
|
||||
>>> print u.encode("utf-8")
|
||||
éèà bla
|
||||
>>>
|
||||
|
||||
manips importantes de traitement unicode (si on n'est pas en python 3)
|
||||
|
||||
@ -169,7 +166,6 @@ ordinal not in range(128)
|
||||
>>> s = u.encode("utf-8")
|
||||
>>> type(s)
|
||||
<type 'str'>
|
||||
>>>
|
||||
|
||||
# il faut utiliser .encode(), et pas .decode()...
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user