руководство по стилю python предлагает группировать импорт следующим образом:
Импорт должен быть сгруппирован в следующем порядке:
- импорт стандартной библиотеки
- Связанный импорт третьей стороны
- импорт локальных приложений/библиотек
Однако он не упоминает ничего о том, как должны быть выложены два разных способа импорта:
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, вероятно, просто делают то, что предпочитает разработчик этой функции.
Я ищу другого PEP, разъясняющего этот или соответствующий комментарий/электронную почту от BDFL (или другого основного разработчика Python). Пожалуйста, не публикуйте субъективные ответы с указанием ваших собственных предпочтений.