The OpenNET Project
Хинт: Для быстрого перемещения к разделам можно обращаться как: news.opennet.ru, forum.opennet.ru, man.opennet.ru, docs.opennet.ru и т.д.
 
bsd, linux, cisco, web, palm, unix, ...
Поиск (ключи):  ПРОГРАММЫ СТАТЬИ СОВЕТЫ ФОРУМ
ССЫЛКИ НОВОСТИ (+) MAN'ы ДОКУМЕНТАЦИЯ
OpenSource.com.ua – Диски с Linux, FreeBSD, документация, атрибутика. CD от 5 грн, DVD от 17.95 грн!
ASPLinux 9.2 3CD - 15 грн.
SUSE 9.2 DVD - 24.95 грн.
Debian Sarge 13 CD - 52 грн.
Fedora Core 3 4CD - 20 грн.
Linux XP Pro 4CD - 20 грн.
Mandrake 10.1 4CD - 25 грн.
FreeBSD 5.3 3CD - 15 грн.
Кружка "Linux" белая - 19.95 грн.

Поиск:  Каталог документации / Русская документация / Программирование, языки / Python

3.2. Импортирование модулей инструкцией from module import

В языке Python есть два способа импортировать модули. Оба из них полезны, и вы должны знать, когда каждый из них лучше использовать. С одним способом, import module, вы уже ознакомились в главе 1. Второй способ делает примерно то же самое, но в его работе есть несколько важных отличий.

Пример 3.3. Синтаксис from module import


from UserDict import UserDict

Синтакис очень похож на уже знакомый вам ситаксис import module, но есть одно важное отличие: атрибуты модуля types импортируются непосредственно в локальное пространство имен и, поэтому, становятся доступными напрямую, без указания имени модуля.

Замечание
from module import in Python is like use module in Perl; import module in Python is like require module in Perl.
Замечание
from module import in Python is like import module.* in Java; import module in Python is like import module in Java.

Пример 3.4. import module vs. from module import

>>> import types
>>> types.FunctionType             1
<type 'function'>
>>> FunctionType                   2
Traceback (innermost last):
  File "<interactive input>", line 1, in ?
NameError: There is no variable named 'FunctionType'
>>> from types import FunctionType 3
>>> FunctionType                   4
<type 'function'>
1 Модуль types содержит объекты-типы для объектов всех встроенных типов языка Python. Обратите внимание, что имя объекта, FunctionType, должно быть указано с использованием имени модуля, types.
2 Имя FunctionType не определено в этом пространстве имен, оно доступно только в контексте types.
3 Используя такой синтаксис вы импортируете FunctionType из модуля types непосредственно в локальное пространство имен.
4 Теперь объект FunctionType доступен напрямую, без указания имени модуля.

Когда следует использовать from module import?

Во всех остальных случаях — это дело вкуса. Вы увидите код на языке Python с использованием обоих вариантов.

Дополнительная литература


Закажи себе дистрибутив! Linux и BSD почтой от ЛинуксЦентра:
 1. Mandrakelinux 10.1 Official LC Edition - download version (1DVD) - 250 руб.
 2. Java для Linux (1CD) - 80 руб.
 3. Knoppix 3.7 Russian Edition (1CD) - 90 руб.
 4. Журнал "Системный администратор", 2004 год, декабрь. - 145 руб.
 5. LinuxCenter Games Collection vol.2 (1DVD) - 295 руб.
 6. ASPLinux v10 Express (3CD) - 300 руб.
 7. GoboLinux v. 011 (1CD) - 95 руб.
 8. TheOpenCD v2.0 - лучшее свободное ПО для Windows (1CD) - 95 руб.
 9. Debian GNU/Linux Sarge, октябрь 2004 (2DVD) - 500 руб.
 10. FreeBSD PORTS Winter 2004 Update DVD (1 DVD) - 250 руб.

Закладки на сайте
Проследить за страницей
Created 1996-2005 by Maxim Chirkov  
ДобавитьРекламаВебмастеруЦУПГИД  
RUNNet TopList