Почему импорт прерывается без точки? [Дубликат]

Или просто выполните изображение через оболочку, как в

  подпроцесс импорта subprocess.call ([fname], shell = True)  

и любая программа, установленная для обработки изображений, будет запущена.

86
задан Vlad the Impala 2 September 2011 в 07:12
поделиться

2 ответа

Это новый синтаксис для явного относительного импорта . Это означает импорт из текущего пакета.

78
ответ дан Keith 16 August 2018 в 01:54
поделиться
  • 1
    Что определяет, что «текущий пакет» является? – fraxture 3 December 2015 в 23:31
  • 2
    Он должен сказать , откуда импортирующий пакет . Это в основном означает текущее пространство имен или каталог пакета. – Keith 5 December 2015 в 20:05
  • 3
    Спасибо, я думаю, я знаю, что вы имеете в виду. Чтобы быть ясным, не могли бы вы привести пример? – fraxture 12 December 2015 в 13:05
  • 4
    Вы можете делать такие вещи, как: from . import peermodule from .. import parentpackagemodule – Keith 15 December 2015 в 06:24

Точка в имени модуля используется для относительного импорта модуля (см. здесь и здесь , раздел 6.4.2).

Вы можете использовать более одной точки, ссылаясь не на пакет curent, а на его родительский элемент. Это должно использоваться только в пакетах, в основном модуле всегда должны использоваться абсолютные имена модулей.

19
ответ дан Martin Gunia 16 August 2018 в 01:54
поделиться
Другие вопросы по тегам:

Похожие вопросы: