Простой Python. современный стиль программирования - читать онлайн бесплатно полную версию книги . Страница 217

</body>

</html>

5. Модифицируйте функцию home() вашего сервера, чтобы она использовала шаблон

home.html. Передайте ей три параметра для команды GET: thing, height и color.

10 СистемыЕсть одна вещь, которую может делать

компьютер, но не может большинство людей, —

они могут быть запечатаны в картонной

коробке и лежать на складе.

Джек Хэнди

Каждый день, когда вы используете компьютер, вы выводите в виде списка на

экран содержимое каталогов, создаете и удаляете файлы и выполняете другую

необходимую работу, даже если это не очень захватывает. Вы также можете вы-

полнить эти (и другие) задачи с помощью программ, написанных на Python.

Сможет ли эта сила свести вас с ума или заставить потерять сон? Поживем —

увидим.

Python предоставляет множество системных функций, содержащихся в модуле

os (сокращение от Operating System — операционная система), который мы будем

импортировать для большинства программ этой главы.

Файлы

Python, как и многие другие языки, создал свои файловые операции по шаблону

Unix. Некоторые функции вроде chown() и chmod() имеют такие же имена, но при

этом появились и некоторые новые функции.

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

В разделе «Ввод информации в файлы и ее вывод из них» главы 8 вы познакоми-

лись с функцией open(). В этом разделе также содержалась информация о том, как

использовать ее для открытия файла или его создания, если он не существует. Соз-

дадим текстовый файл, который называется oops.txt:

>>> fout = open('oops.txt', 'wt')

>>> print('Oops, I created a file.', file=fout)

>>> fout.close()

После этого выполним несколько проверок.

282

Глава 10. Системы

Проверяем существование файла

с помощью функции exists()

Для того чтобы убедиться, что файл или каталог действительно существуют,

а не являются плодом вашего воображения, можете воспользоваться функцией

exists(), передав ей относительное или абсолютное имя файла, как показано

здесь:

>>> import os

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

True

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

True

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

False

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

True

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

True