Python/Учебник Python 3.1: различия между версиями

Содержимое удалено Содержимое добавлено
м →‎Пакеты: орфография
Строка 1769:
=== Пакеты ===
 
Пакеты — способ структурирования ''пространств имён'' (<tt>namespaces</tt>) модулей Python за счёт использования имён модулей, разделённых точками («<tt>dotted module names</tt>»). Например, имя модуля <code>A.B</code> означает — подмодуль<ref>''(Прим. перев.)'' ''подмодуль'' (<tt>submodule</tt>), ''зд.'' — модуль, находящийся в пакете. ''подпакет'' (<tt>subpackage</tt>), ''зд.'' — пакет, расположенный в пакете.</ref> с именем <code>B</code> в пакете с именем <code>A</code>. ТакжеТак же как использование модулей позволяет авторам различных модулей не заботиться о пересекающихся именах среди глобальных переменных, использование именования через точку позволяет авторам многомодульных пакетов (таких как <tt>NumPy</tt> или <tt>Python Imaging Library</tt>) не заботиться о конфликтах имён модулей.
 
Допустим, вы собираетесь разработать набор модулей (''пакет'', <tt>package</tt>) для унифицированной работы со звуковыми файлами и звуковыми данными. Существует множество форматов звуковых файлов (обычно их можно распознать по расширению, например: <tt>.wav</tt>, <tt>.aiff</tt>, <tt>.au</tt>). Таким образом, вам может понадобиться создать и поддерживать разрастающуюся коллекцию модулей для конвертирования между различными форматами файлов. Также вам наверняка захочется иметь побольше операций для обработки звуковых данных (таких как смешивание, добавление эха, применение функции эквалайзера, создание искусственного стерео-эффекта), поэтому в дополнение к этому вы будете писать нескончаемый поток модулей для исполнения этих операций. Вот возможная структура вашего пакета (выраженная в терминологии иерархической файловой системы):