Как правильно сортировать Python `import x` и` из x import y`?
руководство по питону предлагает группировать импорт следующим образом:
Импорт должен быть сгруппирован в следующем порядке:
импорт стандартной библиотекисвязанный сторонний импортлокальный импорт приложений / библиотекОднако в нем ничего не говорится о том, как должны быть изложены два различных способа импорта:
from foo import bar
import foo
Существует несколько способов их сортировки (предположим, что все эти импортные файлы принадлежат одной и той же группе):
первыйfrom..import
, тогдаimport
from g import gg
from x import xx
import abc
import def
import x
первыйimport
, тогдаfrom..import
import abc
import def
import x
from g import gg
from x import xx
алфавитный порядок по имени модуля, игнорируя вид импорта
import abc
import def
from g import gg
import x
from xx import xx
В PEP8 не упоминается предпочтительный порядок для этого, а функции «очистки импорта» некоторые IDE, вероятно, просто делают так, как предпочитает разработчик этой функции.
Я ищу другого ПКП, поясняющего этот или соответствующий комментарий / электронное письмо отBDFL (или другой разработчик ядра Python).Пожалуйста, не публикуйте субъективные ответы с указанием собственных предпочтений.