Генераторы словарей и модули Рython
Функции в языке Python Функции в языке PythonВсе функции в языке Python возвращают какое-либо значение, хотя вполне возможно (и часто так и делается) просто игнорировать это значение. Возвращаемое значение может быть единственным значением или кортежем значений,...
Реализация генераторов Реализация генераторовМы рассмотрели коллекции-последовательности, tuple, collections, na-medtuple и list, поддерживающие, как и строки, возможность извлечения срезов. Также было рассмотрено использование оператора распаковывания...
Парсинг документов XML Парсинг документов XMLXML: Для парсинга документов XML широко используются два основных подхода. Один из них основан на анализе DOM (Document Object Model -объектная модель документа), а другой - на использовании SAX (Simple API for XML - упрощенный...
Копирование коллекций Копирование коллекцийКопирование коллекций: Поскольку в языке Python повсюду используются ссылки на объекты, когда выполняется оператор присваивания (=), никакого копирования данных на самом деле не происходит. Если справа от оператора находится литерал,...
Модули
Здесь под importable подразумевается имя модуля, такое как collections, но точно так же это может быть пакет или модуль из пакета, и тогда все части имени отделяются друг от друга точками (.), например, os. path. Первые две конструкции мы используем на протяжении всей книги. В них нет ничего сложного, и они являются самыми безопасными, потому что позволяют избежать конфликтов имен, так как вынуждают программиста всегда использовать полные квалифицированные имена.

Третья конструкция позволяет давать импортируемому модулю или пакету имя по выбору - теоретически это может привести к конфликтам имен, но на практике синтаксис as обычно используется, чтобы как раз избежать их. Подобное переименование, в частности, удобно использовать при экспериментировании с различными реализациями одного и того же модуля.

Например, допустим, что у нас имеется два модуля MyModuleA и MyModuleB, которые имеют один и тот же API (Application Programming Interface - прикладной программный интерфейс); мы могли бы в программе записать инструкцию import MyModuleA as My-Module, а позднее легко переключиться на использование import MyModu-leB as MyModule. Где должна находиться инструкция import? Обычно все инструкции import помещаются в начало файла .ру, после строки "shebang" и после описания модуля.

Эти синтаксические конструкции могут приводить к конфликтам имен, поскольку они обеспечивают непосредственный доступ к импортируемым объектам (переменным, функциям, типам данных или модулям). Если для импортирования большого числа объектов необходимо использовать синтаксис from ... import, мы можем расположить инструкцию импорта в нескольких строках, либо экранируя каждый символ перевода строки, кроме последнего, либо заключая список имен объектов в круглые скобки, как показано в третьем примере.

Синтаксис from importable import используется для импортирования всех объектов из модуля (или из всех модулей пакета) - это могут быть сотни имен. В случае from os. path import будет импортировано почти 40 имен, включая имена dirname, exists и split, которые, вполне вероятно, мы могли бы использовать в качестве имен для наших собственных переменных или функций. Например, если записать инструкцию from os.path import dirname, мы получим удобную возможность вызывать функцию dirname , не указывая полное квалифицированное имя.
Навигация: 1 2 3
 
 
© Copyright