{{tag>dev python fichier file}}
====== Manipulation des fichiers en python ======
Pour manipuler aisément les fichiers il faut avoir abordé 3 notions:
* l'encodage
*... context manager
===== Écrire du texte dans un fichier =====
Pour lire et écrire du texte dans les fich
construire un module python il suffit de créer un fichier d'extension ''.py'' contenant du code Python.
<c... 'a'
* une fonction foo;
* Une Classe Foo.
Le fichier ''mod.py'' devra être positionné dans un répertoi... exécute l'instruction ''import'' il recherche le fichier ''mod.py'' dans une liste particulière de dossier... e python>
import sys
print(sys.path)
</code>
Le fichier doit être dans un de ces dossiers pour être retro
{{tag>dev python flask web upload download file fichier}}
====== Flask : Upload/Download de fichiers ======
Les fichiers transmis sont placés dans un espace temporaire en mémoire ou dans un dossier (qui pe... ''). Par défaut Flask ne limite pas la taille des fichiers transmis par l'utilisateur mais on peut la défin
r un mot de passe en amont. Il est stocké dans un fichier de configuration au format JSON
<code bash>
# Création d'un conteneur temporaire pour générer un fichier de configuration
docker run --name jupyter -it --... h
jupyter notebook password
</code>
Récupérer le fichier de configuration généré:
<code bash>
docker conta... créer un conteneur en montant en lecture seule le fichier de configuration:
<code bash>
docker container ru
nv'') dans le dépôt;
* On crée ou on modifie le fichier **.gitignore** pour désactiver le suivi sur l'ens... es dépendances via la commande pip freeze dans un fichier ''requirements.txt''.
<code bash>
# Avant de mo... enregistre la liste des modules installés dans un fichier texte
pip3 freeze > requirements.txt
# On ajoute le fichier à l'index et on le pousse dans le dépot
git add
i un ensemble de formats lisible.
En général les fichiers texte en entrées utilisent le formatage **reStru... omme PDF, ePub, man etc.
* Sphinx a besoin d'un fichier de configuration (conf.py)
* Sphinx est modulai... eractive et se charge de créer ces répertoires et fichiers.
Par défaut la commande crée un dossier nommée ... .
===== Ajouter un document =====
* Créer un fichier .rst dans le dossier de la documentation ;
* Ré
riables d'environnement en Python :
- Créer un fichier .env ;
- Éditer le fichier ''activate'' de l'environnement virtuel Python ;
- Utiliser le Dockerfile si le projet s'appuie sur Docker.
===== Le fichier .env =====
Ajouter un fichier .env à la racine du projet :
<file txt .env>
# Environnement
# Paquetage
vant que la première conversion ait lieu) dans le fichier la ligne suivante:
<code python>
# coding: utf8
</code>
L'encodage utilisé pour écrire le fichier de script est à paramétrer dans l'éditeur ou l'ED... codage universel unicode).
Généralement pour un fichier script l’entête comprend également le chemin de l... placer dans le dossier ~/dev/python contenant le fichier compte.py et lancer l’interpréteur python
<code p
ion}}
====== Sphinx : Utiliser les variables du fichier de configuration dans la documentation ======
Le fichier de configuration de Sphinx définit un ensemble de... pouvoir utiliser ces variables présentes dans le fichier de configuration de Sphinx dans les pages de documentation il faut
En bas du fichier de configuration, ajouter le code suivant :
<cod
====
Python permet d'organiser une collection de fichiers modules à l’intérieur d'un espace de nom appelé **package**. Si un répertoire du système de fichier se trouve dans le **sys.path** et qu'il contient un fichier nommé **%%__init__%%.py**, il est considéré comme... t une unité logique disponible pour l'installation au travers d'une toolchain et du fichier **setup.py**.
-> ''doc'' : Pour sphinx ''source'' contient les fichiers sources de la documentation mais dans un projet ... la documentation.
Il faudra ensuite modifier le fichier Makefile:
<code bash>
mv source doc
mkdir build/... rgé mais il n'est pas encore utilisé. Modifier le fichier de configuration ''**doc/conf.py**'' :
<code pyt... aduction des éléments de l'interface. Modifier le fichier conf.py
</note>
<code python>
...
extensions = [
d'extraction des messages produit un ensemble de fichiers d'extension ''*.pot''. Ce sont des fichiers catalogues ne contenant que les messages en langue originale.
Ces fichiers peuvent être fournis aux traducteurs qui les transforment en fichiers ''*.po''
Ajouter le module
<code bash>
pip3 in
ask.
Pour que Flask soit en mesure de servir les fichiers, on configurera Sphinx pour qu'il génère les fichiers de documentation dans un sous-répertoire du dossier... faut un dossier nommé "source" pour regrouper les fichiers sources permettant de produire la documentation... s" :
<code bash>
mv source docs
</code>
Dans le fichier ''Makefile'' à la racine du projet, modifier les
é précisé via la directive **coding** en début de fichier:
<code>
python mon_script.py
File "mon_script.... exécution du script python utilisant en entrée un fichier texte, un message de la forme suivante est retour... )). Utiliser la syntaxe suivante à l'ouverture du fichier:
<code python>
with open("data/file.txt", "r",
{{tag>dev python file fichier word doc docx}}
:TODO_DOCUPDATE:
====== Python3 : Modifier un fichier au format docx ======
<note>
Si le fichier est au format .doc, il faudra en amont le [[software:formats:c