Utilisez pathlib au lieu d’os.path ou glob
par Vincent Poulailleau - 3 minutes de lecture - 457 mots
Régulièrement, en programmant en Python, nous sommes amenés à utiliser des chemins de fichiers, de dossiers, et à les manipuler. Python fournit de quoi les manipuler simplement. Contrairement à de la vieille documentation (et sauf raisons valables), vous n’êtes censés utiliser que la nouvelle API fournie par pathlib
.
À noter aussi que vous n’avez plus à vous préoccuper des slashs ou anti-slashs selon les systèmes d’exploitation, mettez ce que vous voulez, pathlib
s’occupe du reste !
« Un exemple de code » me direz-vous ? Hé bien voici :
|
|
Devient avec pathlib
:
|
|
Ceci a le mérite d’être facile à lire, et fonctionne grâce à la surcharge de l’opérateur de division.
Et si, par exemple, vous avez des projets django, vous avez dû écrire des configurations comme :
|
|
En utilisant pathlib
, ce code devient plus lisible :
|
|
De plus pathlib
fournit les différentes fonctions très pratiques.
|
|
Devient
|
|
Ou encore
|
|
Devient
|
|
Ou encore
|
|
Devient
|
|
Enfin, plein de bonnes choses sont accessibles, par exemple :
|
|
Bref, je vous conseille de jeter un coup d’œil à ce fameux pathlib
.
Il m’intriguait depuis longtemps. Un bon moyen de savoir ce qu’il fait a été, pour moi, de traduire la documentation en français. Elle est maintenant accessible à cette adresse : https://docs.python.org/fr/3/library/pathlib.html.
Vous pourrez en savoir plus en lisant :
- https://docs.python.org/fr/3/library/pathlib.html#correspondence-to-tools-in-the-os-module
- https://docs.python.org/fr/3/library/pathlib.html
- https://realpython.com/python-pathlib/
- https://treyhunner.com/2018/12/why-you-should-be-using-pathlib/
- https://jefftriplett.com/2017/pathlib-is-wonderful/
- http://pbpython.com/pathlib-intro.html
L’idée de ce billet me vient de https://pythonbytes.fm/episodes/show/111/loguru-python-logging-made-simple.