Noriu gauti dabartinio failo katalogo kelią. Bandžiau:
>>> os.path.abspath(__file__)
'C:\\python27\\test.py'
Bet kaip gauti katalogo kelią?
Pavyzdžiui:
'C:\\python27\\'
Jei turite omenyje paleidžiamo scenarijaus katalogą:
import os
os.path.dirname(os.path.abspath(__file__))
Jei turite omenyje dabartinį darbinį katalogą:
import os
os.getcwd()
Atkreipkite dėmesį, kad prieš ir po file
yra ne vienas, o du pabraukimai.
Taip pat atkreipkite dėmesį, kad jei paleidžiate interaktyviai arba kodą įkėlėte ne iš failo (pvz., duomenų bazės ar internetinio šaltinio), `file`` gali būti nenustatytas, nes nėra sąvokos "dabartinis failas". Pirmiau pateiktame atsakyme daroma prielaida, kad dažniausiai pasitaikantis scenarijus - paleidžiamas "Python" scenarijus, esantis faile.
Galite lengvai naudoti os
ir os.path
biblioteką taip
import os
os.chdir(os.path.dirname(os.getcwd()))
os.path.dirname
grąžina viršutinį katalogą iš dabartinio.
Ji leidžia mums pereiti į aukštesnį lygį nepateikiant jokio failo argumento ir nežinant absoliutaus kelio.