From 78acdb581630d52ccdd78031d2a1ce4e580f667d Mon Sep 17 00:00:00 2001 From: gwen Date: Fri, 1 May 2015 10:32:46 +0200 Subject: [PATCH] config pour la version pdf --- python/formation/Makefile | 2 +- python/formation/conf.py | 10 +-- python/formation/getting-started.txt | 14 +++- python/formation/settings.txt | 101 ++++++++++++++------------- 4 files changed, 70 insertions(+), 57 deletions(-) diff --git a/python/formation/Makefile b/python/formation/Makefile index 43ebfce..d3614a9 100644 --- a/python/formation/Makefile +++ b/python/formation/Makefile @@ -3,7 +3,7 @@ # You can set these variables from the command line. SPHINXOPTS = -SPHINXBUILD = sphinx-build2 +SPHINXBUILD = sphinx-build PAPER = BUILDDIR = _build diff --git a/python/formation/conf.py b/python/formation/conf.py index 9511c60..3c439a6 100644 --- a/python/formation/conf.py +++ b/python/formation/conf.py @@ -40,8 +40,8 @@ source_suffix = '.txt' master_doc = 'index' # General information about the project. -project = u'python' -copyright = u'2012, cadoles (www.cadoles.com)' +project = u'Formation Python' +copyright = u'2015, cadoles (www.cadoles.com)' # The version info for the project you're documenting, acts as replacement for # |version| and |release|, also used in various other places throughout the @@ -50,7 +50,7 @@ copyright = u'2012, cadoles (www.cadoles.com)' # The short X.Y version. version = '1' # The full version, including alpha/beta/rc tags. -release = '0' +release = '1' # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. @@ -183,8 +183,8 @@ latex_elements = { # Grouping the document tree into LaTeX files. List of tuples # (source start file, target name, title, author, documentclass [howto/manual]). latex_documents = [ - ('index', 'python.tex', u'python Documentation', - u'gwen', 'manual'), + ('index', 'python.tex', u'Formation Python', + u'Gwen', 'manual'), ] # The name of an image file (relative to this directory) to place at the top of diff --git a/python/formation/getting-started.txt b/python/formation/getting-started.txt index 588099a..231c078 100644 --- a/python/formation/getting-started.txt +++ b/python/formation/getting-started.txt @@ -49,6 +49,16 @@ avec python : - lorsqu'on lance python sans spécifier de nom de fichier, c'est l'interpréteur python qui est lancé (le "prompt") + +En python, le dicton le plus répandu est "there must be an obvious way +to do it", (il y a certainement une manière évidente de le faire en +python), ``import this`` permet de se remémorer les +dictons de python. Ce dicton est très différent de l'approche du perl +par exemple, qui présuppose : "there is more than one way to do it", +c'est-à-dire que en gros en perl, on peut le faire n'importe comment, +mais pas en python, enfin en python c'est pas conseillé de le faire à sa +sauce, il y a en général une bonne pratique à découvrir et à mettre en place. + Taper "python" dans votre console :: @@ -86,7 +96,7 @@ de pdf en passant par le développement web et le développement rapide d'applic exemple : web server pour créer un serveur web simplement:: - + python -m SimpleHTTPServer 8000 localhost exemple : utiliser python pour faire un fichier de conf @@ -97,7 +107,7 @@ exemple : utiliser python pour faire un fichier de conf actions = [ ('call_view', 'com.next') ] - + .. _python: http://www.python.org .. _sphinx: http://sphinx.pocoo.org diff --git a/python/formation/settings.txt b/python/formation/settings.txt index e9549a5..acb75f0 100644 --- a/python/formation/settings.txt +++ b/python/formation/settings.txt @@ -3,39 +3,6 @@ Mettre en place son environnement de travail ============================================= -un framework de développement intégré : :term:`IDLE` - -.. glossary:: - - IDLE - IDLE_ est un IDE (environnement de développement intégré) mis à disposition - dans la :term:`librairie standard` de python - -.. _IDLE: http://docs.python.org/2/library/idle.html - -.. glossary:: - - librairie standard - - Une des règles de base de python est qu'il existe certainement une manière - conseillé de faire une tâche en python. Le premier réflexe est d'aller - voir dans la `librairie standard`_ - -.. _`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. - -la page d'accueil de la doc officielle python : - -.. image:: images/DocPython.png - -et surtout, une fois la librairie standard abordée, la page d'index des -modules : - -.. image:: images/ModuleIndex.png - - - Les éditeurs pour python ----------------------------- @@ -44,13 +11,13 @@ N'importe quel éditeur qui respecte les coding standards du pep8 convient : https://www.python.org/dev/peps/pep-0008/ d'une manière générale, de base un éditeur spartiate peut convenir du moment -que l'intentation de 4 espaces est respectée et que les tablulations sont -remplacées par des espaces, car le plus important en python c'est l'indentation, -et le fait de bien voir ou est le règlage de l'encodage (ça doit être en ``utf-8``) +que l'intentation de 4 espaces est respectée et que les tablulations sont +remplacées par des espaces, car le plus important en python c'est l'indentation, +et le fait de bien voir ou est le règlage de l'encodage (ça doit être en ``utf-8``) Pour voir si ton éditeur est bien configuré, tu prends n'importe quel fichier python que tu as créé, puis tu faire un :: - pep8 + pep8 et `pep` va dire ce qui ne va pas en termes de syntaxe. @@ -62,11 +29,22 @@ https://docs.python.org/2/library/idle.html Pour information, IDLE est un éditeur intégré (dans la lib standard de python) mais je te le déconseille (trop spartiate). +un framework de développement intégré : :term:`IDLE` + +.. glossary:: + + IDLE + IDLE_ est un IDE (environnement de développement intégré) mis à disposition + dans la :term:`librairie standard` de python + +.. _IDLE: http://docs.python.org/2/library/idle.html + + nano -------- -pour l'exemple, avec **nano**, voici comment faire une config qui permette -de coder en python. On configure nano avec le ``.nanorc`` +pour l'exemple, avec **nano**, voici comment faire une config qui permette +de coder en python. On configure nano avec le ``.nanorc`` Exemple de ``.nanorc`` :: @@ -77,13 +55,13 @@ Exemple de ``.nanorc`` :: set autoindent # la touche home renvoie en debut de code set smarthome - # ne met pas de retour chariot a la fin d'une ligne + # ne met pas de retour chariot a la fin d'une ligne # si elle depasse la largeur du terminal set nowrap unset softwrap # chargement de plusieur fichiers - set multibuffer + set multibuffer # coloration syntaxique ## Python @@ -92,23 +70,23 @@ Exemple de ``.nanorc`` :: Gedit --------- -Gedit c'est très bien pour coder en python, mais de base c'est pas sur un serveur, -il faut pouvoir être en mode graphique. +Gedit c'est très bien pour coder en python, mais de base c'est pas sur un serveur, +il faut pouvoir être en mode graphique. Il faut règler l'indentation à 4 espaces pour respecter le pep8. Et règler le replacement des tablulations par des espaces. -Mais surtout, très vite il faut installer les paquets additionnels, notamment +Mais surtout, très vite il faut installer les paquets additionnels, notamment pour que gedit supprime les espaces en fin de ligne par exemple. -Je l'utilise souvent mais il faut des plugins avec +Je l'utilise souvent mais il faut des plugins avec genre ceux-ci (si tu es sur ubuntu):: apt-get install gedit-plugins -dans ce paquet par exemple, l'outil pour commenter-décommenter le code est intéressant +dans ce paquet par exemple, l'outil pour commenter-décommenter le code est intéressant (sélection d'un paragraphe, puis Ctrl-M) tu peux régler après la complétion des parenthèses, etc. -il y a aussi le paquet developer plugins : +il y a aussi le paquet developer plugins : https://apps.ubuntu.com/cat/applications/gedit-developer-plugins/ @@ -117,7 +95,7 @@ Après avec les plugins gedit commence à bien tenir la route. Vi ---------- -Toujours la même problématiques (espaces, tablulation...) +Toujours la même problématiques (espaces, tablulation...) Donc voici une partie de ``.vimrc`` qui le fait:: "Pour le collage" @@ -136,7 +114,7 @@ Donc voici une partie de ``.vimrc`` qui le fait:: set showmatch " Affiche parenthese correspondante set softtabstop=4 " Largeur d'une tabulation "set fdm=indent " Repli selon l'indentation - + maintenant après il y a un python-mode assez avancé qui permet de faire pas mal de choses. (valider avec la syntaxe avec pylint, valider le pep8...) Mais il faut une config plus avancée. @@ -209,3 +187,28 @@ exemple de `.pystartup` # enhanced completion #import rlcompleter2 #rlcompleter2.setup() + + +Consulter la librairie standard +------------------------------------- + +.. glossary:: + + librairie standard + + Une des règles de base de python est qu'il existe certainement une manière + conseillé de faire une tâche en python. Le premier réflexe est d'aller + voir dans la `librairie standard`_ + +.. _`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. + +la page d'accueil de la doc officielle python : + +.. image:: images/DocPython.png + +et surtout, une fois la librairie standard abordée, la page d'index des +modules : + +.. image:: images/ModuleIndex.png