Простой Python. Современный стиль программирования (Любанович) - страница 167

>>>> os.path.abspath('oops.txt')

>'/usr/gaberlunzie/oops.txt'

Получаем символьную ссылку с помощью функции realpath()

В одном из предыдущих разделов мы создавали символьную ссылку на файл oops.txt из нового файла jeepers.txt. При похожих обстоятельствах вы можете получить имя файла oops.txt из файла jeepers.txt с помощью функции realpath(), как показано здесь:

>>>> os.path.realpath('jeepers.txt')

>'/usr/gaberlunzie/oops.txt'

Удаляем файл с помощью функции remove()

В этом сниппете мы используем функцию remove() и попрощаемся с файлом oops.txt:

>>>> os.remove('oops.txt')

>>>> os.path.exists('oops.txt')

>False

Каталоги

В большинстве операционных систем файлы существуют в рамках иерархии каталогов (иначе их еще называют папками). Контейнером для всех этих файлов и каталогов служит файловая система (иногда ее называют томом). Стандартный модуль os работает с такими особенностями и предоставляет функции, с помощью которых вы можете ими манипулировать.

Создаем каталог с помощью функции mkdir()

В этом примере показывается, как создать каталог poems, в котором мы сохраним предыдущее стихотворение:

>>>> os.mkdir('poems')

>>>> os.path.exists('poems')

>True

Удаляем каталог с помощью функции rmdir()

Немного подумав, вы решили, что этот каталог вам не нужен. Удалить его можно вот так:

>>>> os.rmdir('poems')

>>>> os.path.exists('poems')

>False

Выводим на экран содержимое каталога с помощью функции listdir()

О’кей, дубль два: снова создадим файл poems и что-нибудь в него запишем:

>>>> os.mkdir('poems')

Теперь получим список всех файлов, содержащихся в этом каталоге (которых пока нет):

>>>> os.listdir('poems')

>[]

Далее создадим подкаталог:

>>>> os.mkdir('poems/mcintyre')

>>>> os.listdir('poems')

>['mcintyre']

Создайте в подкаталоге файл (не вводите все эти строки, если только не хотите почувствовать себя поэтом, просто убедитесь, что закрыли все одинарные или тройные кавычки):

>>>> fout = open('poems/mcintyre/the_good_man', 'wt')

>>>> fout.write('''Cheerful and happy was his mood,

>… He to the poor was kind and good,

>… And he oft' times did find them food,

>… Also supplies of coal and wood,

>… He never spake a word was rude,

>… And cheer'd those did o'er sorrows brood,

>… He passed away not understood,

>… Because no poet in his lays

>… Had penned a sonnet in his praise,

>… 'Tis sad, but such is world's ways.

>… ''')

>344

>>>> fout.close()

Наконец, проверим, что у нас получилось. Лучше бы ему там быть:

>>>> os.listdir('poems/mcintyre')

>['the_good_man']

Изменяем текущий каталог с помощью функции chdir()

С помощью этой функции вы можете переходить из одной папки в другие. Покинем текущую папку и проведем немного времени в каталоге poems: