config pour la version pdf

This commit is contained in:
gwen 2015-05-01 10:32:46 +02:00 committed by Benjamin Bohard
parent 122ae1e085
commit 78acdb5816
4 changed files with 70 additions and 57 deletions

View File

@ -3,7 +3,7 @@
# You can set these variables from the command line. # You can set these variables from the command line.
SPHINXOPTS = SPHINXOPTS =
SPHINXBUILD = sphinx-build2 SPHINXBUILD = sphinx-build
PAPER = PAPER =
BUILDDIR = _build BUILDDIR = _build

View File

@ -40,8 +40,8 @@ source_suffix = '.txt'
master_doc = 'index' master_doc = 'index'
# General information about the project. # General information about the project.
project = u'python' project = u'Formation Python'
copyright = u'2012, cadoles (www.cadoles.com)' copyright = u'2015, cadoles (www.cadoles.com)'
# The version info for the project you're documenting, acts as replacement for # The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the # |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. # The short X.Y version.
version = '1' version = '1'
# The full version, including alpha/beta/rc tags. # The full version, including alpha/beta/rc tags.
release = '0' release = '1'
# The language for content autogenerated by Sphinx. Refer to documentation # The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages. # for a list of supported languages.
@ -183,8 +183,8 @@ latex_elements = {
# Grouping the document tree into LaTeX files. List of tuples # Grouping the document tree into LaTeX files. List of tuples
# (source start file, target name, title, author, documentclass [howto/manual]). # (source start file, target name, title, author, documentclass [howto/manual]).
latex_documents = [ latex_documents = [
('index', 'python.tex', u'python Documentation', ('index', 'python.tex', u'Formation Python',
u'gwen', 'manual'), u'Gwen', 'manual'),
] ]
# The name of an image file (relative to this directory) to place at the top of # The name of an image file (relative to this directory) to place at the top of

View File

@ -49,6 +49,16 @@ avec python :
- lorsqu'on lance python sans spécifier de nom de fichier, c'est l'interpréteur - lorsqu'on lance python sans spécifier de nom de fichier, c'est l'interpréteur
python qui est lancé (le "prompt") 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 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 exemple : web server
pour créer un serveur web simplement:: pour créer un serveur web simplement::
python -m SimpleHTTPServer 8000 localhost python -m SimpleHTTPServer 8000 localhost
exemple : utiliser python pour faire un fichier de conf exemple : utiliser python pour faire un fichier de conf
@ -97,7 +107,7 @@ exemple : utiliser python pour faire un fichier de conf
actions = [ actions = [
('call_view', 'com.next') ('call_view', 'com.next')
] ]
.. _python: http://www.python.org .. _python: http://www.python.org
.. _sphinx: http://sphinx.pocoo.org .. _sphinx: http://sphinx.pocoo.org

View File

@ -3,39 +3,6 @@
Mettre en place son environnement de travail 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 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/ https://www.python.org/dev/peps/pep-0008/
d'une manière générale, de base un éditeur spartiate peut convenir du moment 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 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, 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``) 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 Pour voir si ton éditeur est bien configuré, tu prends n'importe quel fichier python
que tu as créé, puis tu faire un :: que tu as créé, puis tu faire un ::
pep8 <mon_fichier.py> pep8 <mon_fichier.py>
et `pep` va dire ce qui ne va pas en termes de syntaxe. 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) Pour information, IDLE est un éditeur intégré (dans la lib standard de python)
mais je te le déconseille (trop spartiate). 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 nano
-------- --------
pour l'exemple, avec **nano**, voici comment faire une config qui permette pour l'exemple, avec **nano**, voici comment faire une config qui permette
de coder en python. On configure nano avec le ``.nanorc`` de coder en python. On configure nano avec le ``.nanorc``
Exemple de ``.nanorc`` :: Exemple de ``.nanorc`` ::
@ -77,13 +55,13 @@ Exemple de ``.nanorc`` ::
set autoindent set autoindent
# la touche home renvoie en debut de code # la touche home renvoie en debut de code
set smarthome 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 # si elle depasse la largeur du terminal
set nowrap set nowrap
unset softwrap unset softwrap
# chargement de plusieur fichiers # chargement de plusieur fichiers
set multibuffer set multibuffer
# coloration syntaxique # coloration syntaxique
## Python ## Python
@ -92,23 +70,23 @@ Exemple de ``.nanorc`` ::
Gedit Gedit
--------- ---------
Gedit c'est très bien pour coder en python, mais de base c'est pas sur un serveur, 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 pouvoir être en mode graphique.
Il faut règler l'indentation à 4 espaces pour respecter le pep8. Il faut règler l'indentation à 4 espaces pour respecter le pep8.
Et règler le replacement des tablulations par des espaces. 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. 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):: genre ceux-ci (si tu es sur ubuntu)::
apt-get install gedit-plugins 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) (sélection d'un paragraphe, puis Ctrl-M)
tu peux régler après la complétion des parenthèses, etc. 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/ 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 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:: Donc voici une partie de ``.vimrc`` qui le fait::
"Pour le collage" "Pour le collage"
@ -136,7 +114,7 @@ Donc voici une partie de ``.vimrc`` qui le fait::
set showmatch " Affiche parenthese correspondante set showmatch " Affiche parenthese correspondante
set softtabstop=4 " Largeur d'une tabulation set softtabstop=4 " Largeur d'une tabulation
"set fdm=indent " Repli selon l'indentation "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. 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...) (valider avec la syntaxe avec pylint, valider le pep8...)
Mais il faut une config plus avancée. Mais il faut une config plus avancée.
@ -209,3 +187,28 @@ exemple de `.pystartup`
# enhanced completion # enhanced completion
#import rlcompleter2 #import rlcompleter2
#rlcompleter2.setup() #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