Python Language
os.path
Sök…
Introduktion
Den här modulen implementerar några användbara funktioner på sökväg. Banparametrarna kan skickas som antingen strängar eller som byte. Program uppmuntras att representera filnamn som (Unicode) teckensträngar.
Syntax
- os.path.join (a, * p)
- os.path.basename (p)
- os.path.dirname (p)
- os.path.split (p)
- os.path.splitext (p)
Gå med på vägar
För att koppla ihop två eller flera bankomponenter, importera först OS-modulen för Python och använd sedan följande:
import os
os.path.join('a', 'b', 'c')
Fördelen med att använda os.path är att den tillåter kod att förbli kompatibel över alla operativsystem, eftersom den använder separatorn som är lämplig för den plattform den körs på.
Till exempel kommer resultatet av detta kommando på Windows att vara:
>>> os.path.join('a', 'b', 'c')
'a\b\c'
I ett Unix OS:
>>> os.path.join('a', 'b', 'c')
'a/b/c'
Absolut väg från relativ väg
Använd os.path.abspath
:
>>> os.getcwd()
'/Users/csaftoiu/tmp'
>>> os.path.abspath('foo')
'/Users/csaftoiu/tmp/foo'
>>> os.path.abspath('../foo')
'/Users/csaftoiu/foo'
>>> os.path.abspath('/foo')
'/foo'
Sökvägskomponentmanipulering
Så här delar du upp en komponent från vägen:
>>> p = os.path.join(os.getcwd(), 'foo.txt')
>>> p
'/Users/csaftoiu/tmp/foo.txt'
>>> os.path.dirname(p)
'/Users/csaftoiu/tmp'
>>> os.path.basename(p)
'foo.txt'
>>> os.path.split(os.getcwd())
('/Users/csaftoiu/tmp', 'foo.txt')
>>> os.path.splitext(os.path.basename(p))
('foo', '.txt')
Hämta överkatalogen
os.path.abspath(os.path.join(PATH_TO_GET_THE_PARENT, os.pardir))
Om den givna sökvägen finns.
för att kontrollera om den givna sökvägen finns
path = '/home/john/temp'
os.path.exists(path)
#this returns false if path doesn't exist or if the path is a broken symbolic link
kontrollera om den givna sökvägen är en katalog, fil, symbolisk länk, monteringspunkt etc.
för att kontrollera om den givna sökvägen är en katalog
dirname = '/home/john/python'
os.path.isdir(dirname)
för att kontrollera om den givna sökvägen är en fil
filename = dirname + 'main.py'
os.path.isfile(filename)
för att kontrollera om den givna sökvägen är en symbolisk länk
symlink = dirname + 'some_sym_link'
os.path.islink(symlink)
för att kontrollera om den givna banan är en monteringspunkt
mount_path = '/home'
os.path.ismount(mount_path)