Bestandspaden op verschillende operating-systemen
Windows springt anders om met bestandspaden als andere operatingsystemen. Windows gebruikt backwardlsashes ipv forwardslashes tussen directories in bestandspaden. De backwardslash wordt o.a. in Python ook gebruikt als escape-teken. De eenvoudigste oplossing is om ook voor Windowsbestandslocaties forwardslashes te gebruiken in Python. Dankzij de pathlib bibliotheek is dit geen enkel probleem.
from pathlib import Path
# Path past de slashes aan aan het gebruikte operatingsyteem:
data_map = Path("mijn_data/teksten/")
# het pad verlengen kan gewoon met de forward slash:
te_openen_bestand = data_map / "mijn_data.txt"
# tekstbestand openen en meteen lezen:
print(te_openen_bestand.read_text())
De bestandsnaam geheel of gedeeltelijk opvragen
Bestandsnamen bestaan uit 2 gedeelten, de eigenlijke naam en de extensie die aangeeft om wat voor soort bestand het gaat.
from pathlib import Path
bestand = Path("mijn_data/teksten/mijn_data.txt")
# de volle naam:
print(bestand.name)
# geeft "mijn_data.txt"
# de extensie:
print(bestand.suffix)
# geeft "txt"
# de eigenlijke naam:
print(bestand.stem)
# geeft "mijn_data"
Controleren of een bestand bestaat
Als een bestand niet bestaat geeft dat een foutmelding, die wil je meestal vermijden.
from pathlib import Path
if not bestand.exists():
print("Dit bestand bestaat nog niet!")
else:
print("Dit bestand bestaat al!")
