J'utilise le module Python 3 pathlib
, comme ceci:
from pathlib import Path
filename = Path(__file__).parent / "example.txt"
contents = open(filename, "r").read()
Mais je reçois cette erreur sur certaines machines:
TypeError: invalid file: PosixPath('example.txt')
Mais sur ma machine ça marche.
pathlib
s'intègre parfaitement avec open
uniquement dans Python 3.6 et versions ultérieures. De Notes de version de Python 3.6 :
La fonction
open()
intégrée a été mise à jour pour accepteros.PathLike
objets, comme toutes les fonctions pertinentes dans lesos
etos.path
modules et la plupart des autres fonctions et classes de la bibliothèque standard.
Pour le faire fonctionner dans Python 3.5 et Python 3.6, convertissez simplement l'objet en chaîne:
contents = open(str(filename), "r").read()