Python Language
os.path
Ricerca…
introduzione
Questo modulo implementa alcune utili funzioni sui percorsi. I parametri del percorso possono essere passati come stringhe o byte. Le applicazioni sono incoraggiate a rappresentare i nomi dei file come stringhe di caratteri (Unicode).
Sintassi
- os.path.join (a, * p)
- os.path.basename (p)
- os.path.dirname (p)
- os.path.split (p)
- os.path.splitext (p)
Join Paths
Per unire due o più componenti del percorso, prima importa il modulo os di python e poi usa:
import os
os.path.join('a', 'b', 'c')
Il vantaggio dell'utilizzo di os.path è che consente al codice di rimanere compatibile su tutti i sistemi operativi, in quanto utilizza il separatore appropriato per la piattaforma su cui è in esecuzione.
Ad esempio, il risultato di questo comando su Windows sarà:
>>> os.path.join('a', 'b', 'c')
'a\b\c'
In un sistema operativo Unix:
>>> os.path.join('a', 'b', 'c')
'a/b/c'
Percorso assoluto dal percorso relativo
Usa 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'
Manipolazione dei componenti del percorso
Per dividere un componente fuori dal percorso:
>>> 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')
Ottieni la directory principale
os.path.abspath(os.path.join(PATH_TO_GET_THE_PARENT, os.pardir))
Se il percorso specificato esiste.
per verificare se il percorso specificato esiste
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
controlla se il percorso dato è una directory, un file, un link simbolico, un punto di mount ecc.
per verificare se il percorso indicato è una directory
dirname = '/home/john/python'
os.path.isdir(dirname)
per verificare se il percorso indicato è un file
filename = dirname + 'main.py'
os.path.isfile(filename)
per verificare se il percorso indicato è un collegamento simbolico
symlink = dirname + 'some_sym_link'
os.path.islink(symlink)
per verificare se il percorso indicato è un punto di montaggio
mount_path = '/home'
os.path.ismount(mount_path)