• Имена глобальных переменных (если таковые используются) лучше начинать с подчеркивания, чтобы они не импортировались из модуля оператором from–import
со звездочкой.
• Имена методов записываются по тем же правилам, что и имена функций.
• Имена констант (имен, которые не должны переопределяться) лучше записывать прописными буквами, например: RED
, GREEN
, BLUE
.
• При работе с языком Python необходимо учитывать, что интерпретатор считает некоторые классы имен специальными (обычно такие имена начинаются с подчеркивания).
Заключение
В этой лекции синтаксис языка показан на примерах, что в случае с Python оправдано, так как эта часть языка достаточна проста. Были рассмотрены основные операторы языка, выражения и многие из встроенных типов данных, кратко объяснены принципы работы Python с именами, приведены правила официального стиля программирования на Python.
Лекция #2: Основные стандартные модули Python.
Лекция знакомит с наиболее важными модулями и пакетами стандартных библиотек Python в мере, достаточной для свободного ориентирования в них.
Одним из важных преимуществ языка Python является наличие большой библиотеки модулей и пакетов, входящих в стандартную поставку. Как говорят, к Python «приложены батарейки».
Понятие модуля
Перед тем как приступить к изучению модулей стандартной библиотеки, необходимо определить то, что в Python называется модулем.
В соответствии с модульным подходом к программированию большая задача разбивается на несколько более мелких, каждую из которых (в идеале) решает отдельный модуль. В разных методологиях даются различные ограничения на размер модулей, однако при построении модульной структуры программы важнее составить такую композицию модулей, которая позволила бы свести к минимуму связи между ними. Набор классов и функций, имеющий множество связей между своими элементами, было бы логично расположить в одном модуле. Есть и еще одно полезное замечание: модули должно быть легче использовать, чем написать заново. Это значит, что модуль должен иметь удобный интерфейс: набор функций, классов и констант, который он предлагает своим пользователям.
В языке Python набор модулей, посвященных одной проблеме, можно поместить в пакет. Хорошим примером такого пакета является пакет xml
, в котором собраны модули для различных аспектов обработки XML.
В программе на Python модуль представлен объектом–модулем, атрибутами которого являются имена, определенные в модуле:
>>> import datetime
>>> d1 = datetime.date(2004, 11, 20)
В данном примере импортируется модуль datetime
. В результате работы оператора import
в текущем пространстве имен появляется объект с именем datetime
.
Модули для использования в программах на языке Python по своему происхождению делятся на обычные (написанные на Python) и модули расширения, написанные на другом языке программирования (как правило, на C). С точки зрения пользователя они могут отличаться разве что быстродействием. Бывает, что в стандартной библиотеке есть два варианта модуля: на Python и на C. Таковы, например, модули pickle
и cPickle
. Обычно модули на Python в чем–то гибче, чем модули расширения.
Модули в Python
Модуль оформляется в виде отдельного файла с исходным кодом. Стандартные модули находятся в каталоге, где их может найти соответствующий интерпретатор языка. Пути к каталогам, в которых Python ищет модули, можно увидеть в значении переменной sys.path
:
>>> sys.path
['', '/usr/local/lib/python23.zip', '/usr/local/lib/python2.3',
'/usr/local/lib/python2.3/plat–linux2', '/usr/local/lib/python2.3/lib–tk',
'/usr/local/lib/python2.3/lib–dynload',
'/usr/local/lib/python2.3/site–packages']
В последних версиях Python модули можно помещать и в zip–архивы для более компактного хранения (по аналогии с jar–архивами в Java).
При запуске программы поиск модулей также идет в текущем каталоге. (Нужно внимательно называть собственные модули, чтобы не было конфликта имен со стандартными или дополнительно установленными модулями.)
Подключение модуля к программе на Python осуществляется с помощью оператора import
. У него есть две формы: import
и from–import
:
import os
import pre as re
from sys import argv, environ