Jeg ønsker at få den aktuelle fil's mappesti. Jeg har prøvet:
>>> os.path.abspath(__file__)
'C:\\python27\\test.py'
Men hvordan kan jeg hente mappen's sti?
For eksempel:
'C:\\python27\\'
Hvis du mener mappen for det script, der skal køres:
import os
os.path.dirname(os.path.abspath(__file__))
Hvis du mener den aktuelle arbejdsmappe:
import os
os.getcwd()
Bemærk, at før og efter file
er der to understregninger, ikke kun én.
Bemærk også, at hvis du kører interaktivt eller har indlæst kode fra noget andet end en fil (f.eks. en database eller en online ressource), er __file__
måske ikke sat, da der ikke er noget begreb om "aktuel fil". Ovenstående svar forudsætter det mest almindelige scenarie med kørsel af et python-script, der er i en fil.
Du kan nemt bruge biblioteket os
og os.path
på følgende måde
import os
os.chdir(os.path.dirname(os.getcwd()))
os.path.dirname
returnerer den øverste mappe fra den aktuelle mappe.
Det giver os mulighed for at skifte til et højere niveau uden at overgive et filargument og uden at kende den absolutte sti.