В чем разница между import modx и modx import *?

Если бы я должен был импортировать какой-то модуль под названием modx, как бы это отличалось от высказывания

from modx import * 

Разве не все содержимое будет импортировано из каждого в любом случае? Это в python просто для уточнения.

3 Solutions collect form web for “В чем разница между import modx и modx import *?”

Если вы import somemodule содержащиеся в нем глобальные значения будут доступны через somemodule.someglobal . Если вы from somemodule import * ВСЕ его глобальные (или те, что указаны в __all__ если они существуют) будут сделаны глобальными, т. someglobal Вы можете получить к ним доступ с помощью someglobal без имени модуля перед ним.

Использование from module import * не рекомендуется, поскольку оно загромождает глобальную область, и если вы импортируете материал из нескольких модулей, вы, вероятно, столкнетесь с конфликтами и перезапишете существующие классы / функции.

Если a определяет ab и ac

 import a ab() ac() 

против

 from a import b b() c() # fails because c isn't imported 

против

 from a import * b() c() 

Обратите внимание, что from foo import * как правило, неодобрительно, поскольку:

  1. Он помещает вещи в глобальное пространство имен, не давая вам тонкого контроля
  2. Это может вызвать столкновение из- за того, что все находится в глобальном пространстве имен
  3. Это делает неясным, что на самом деле определено в текущем файле, так как список его определений может варьироваться в зависимости от того, что импортировано.

Общий вопрос с большим количеством вопросов, чтобы ответить … вот один: http://effbot.org/zone/import-confusion.htm

По сути, чтобы ответить на ваш конкретный вопрос, вторая форма ( from modx import * ) вы получаете только публичные элементы в modx

  • Как я могу установить модуль Beautiful Soup на Mac?
  • Что может привести к тому, что модуль python будет импортирован дважды?
  • Colorama AssertionError в Python 3.2
  • Как выгрузить (перезагрузить) модуль Python?
  • Добавление или удаление виджетов tkinter из других модулей
  • Импорт модуля из подпапки
  • Как сделать мой Python-модуль доступным для системы в Linux?
  • проблемы с импортом модуля python
  • Python - лучший язык программирования в мире.