На этом шаге мы рассмотрим некоторые возможности модуля os.path.
Вам нужно манипулировать путями к файлам, чтобы найти имя файла, название каталога, абсолютный путь и т. д.
Для работы с файловыми путями используйте функции из модуля os.path. Вот пример, который иллюстрирует несколько ключевых возможностей:
>>> import os >>> path = '/Users/beazley/Data/data.csv' >>> # Получение последнего компонента пути >>> os.path.basename(path) 'data.csv' >>> # Получение имени каталога >>> os.path.dirname(path) '/Users/beazley/Data' >>> # Соединение компонентов пути >>> os.path.join('tmp', 'data', os.path.basename(path)) 'tmp/data/data.csv' >>> # Раскрытие домашнего каталога пользователя >>> path = '~/Data/data.csv' >>> os.path.expanduser(path) '/Users/beazley/Data/data.csv' >>> # Отделение расширения файла >>> os.path.splitext(path) ('~/Data/data', '.csv') >>>
Для любых манипуляций с именами файлов вы должны использовать модуль os.path, а не изобретать собственный код из стандартных строковых операций. Во-первых, это важно для переносимости. Модуль os.path понимает различия между Unix и Windows и может надежно работать с именами типа Data/data.csv и Data\data.csv. Во-вторых, вы не должны тратить время на изобретение колеса. Обычно лучше использовать готовые решения.
Стоит отметить, что в модуле os.path намного больше возможностей, чем показано в этом рецепте. Обратитесь к документации, чтобы узнать о функциях для тестирования файлов, работы с символическими ссылками и т. д.
На следующем шаге мы рассмотрим проверку существования файла.