с помощью функции isfile()
Функции, показанные в этом разделе, проверяют, ссылается ли имя на файл, ката-
лог или символьную ссылку (см. примеры, которые располагаются после описания
ссылок).
Первой мы рассмотрим функцию isfile(). Она задает простой вопрос: перед
нами находится старый добрый законопослушный файл?
>>> name = 'oops.txt'
>>> os.path.isfile(name)
True
Вот так можно определить папку:
>>> os.path.isdir(name)
False
Одна точка (.) является сокращением для текущей папки, а две точки (..) —
для родительской. Эти папки существуют всегда, поэтому следу ющее выражение
вернет результат True:
>>> os.path.isdir('.')
True
Файлы
283
Модуль os содержит множество функций, работающих с путем к файлу
(полное имя файла, которое начинается с символа / и включает все каталоги).
Одна из таких функций, isabs(), определяет, является ли аргумент абсолютным
путем. Аргумент не обязательно должен быть именем реально существующего
файла:
>>> os.path.isabs(name)
False
>>> os.path.isabs('/big/fake/name')
True
>>> os.path.isabs('big/fake/name/without/a/leading/slash')
False
Копируем файлы
с помощью функции copy()
Функция copy() находится в другом модуле, shutil. В этом примере файл oops.txt
копируется в файл ohno.txt:
>>> import shutil
>>> shutil.copy('oops.txt', 'ohno.txt')
Функция shutil.move() копирует файл, а затем удаляет оригинал.
Изменяем имена файлов
с помощью функции rename()
Эта функция соответствует своему названию. В этом примере файл ohno.txt пере-
именовывается в ohwell.txt:
>>> import os
>>> os.rename('ohno.txt', 'ohwell.txt')
Создаем ссылки с помощью link()
или symlink()
В операционных системах семейства Unix файл существует в одном месте, но мо-
жет иметь несколько имен, которые называются ссылками. Среди низкоуровневых
жестких ссылок найти все имена заданного файла не так уж легко. Символьная
ссылка позволяет вам получить одновременно оба имени — оригинальное и новое.