Присоединиться Пути
Чтобы объединить два или более компонентов пути, сначала импортируйте модуль os из python, а затем используйте следующее:
import os
os.path.join('a', 'b', 'c')
Преимущество использования os.path заключается в том, что он позволяет коду оставаться совместимым со всеми операционными системами, поскольку при этом используется разделитель, соответствующий платформе, на которой он работает.
Например, результат этой команды в Windows будет:
>>> os.path.join('a', 'b', 'c')
'a\b\c'
В ОС Unix:
>>> os.path.join('a', 'b', 'c')
'a/b/c'
Абсолютный Путь От Относительного Пути
Используйте 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'
Управление компонентами пути
Чтобы отделить один компонент от пути:
>>> 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')
Получить родительский каталог
os.path.abspath(os.path.join(PATH_TO_GET_THE_PARENT, os.pardir))
Если данный путь существует.
проверить, существует ли данный путь
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
проверьте, является ли данный путь каталогом, файлом, символической ссылкой, точкой монтирования и т. д.
проверить, является ли данный путь каталогом
dirname = '/home/john/python'
os.path.isdir(dirname)
проверить, является ли данный путь файлом
filename = dirname + 'main.py'
os.path.isfile(filename)
чтобы проверить , если данный путь является символической ссылкой
symlink = dirname + 'some_sym_link'
os.path.islink(symlink)
чтобы проверить , если данный путь является точка монтирования
mount_path = '/home'
os.path.ismount(mount_path)