</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