Как правильно сортировать операторы Python `import x` и `from x import y`? ⇐ Python

Программы на Python
Anonymous
Как правильно сортировать операторы Python `import x` и `from x import y`?

Сообщение Anonymous »

Руководство по стилю Python предлагает группировать импорт следующим образом:


Импорт следует группировать в следующем порядке:
  • импорт стандартной библиотеки
  • связанный импорт третьих сторон
  • локальное приложение/библиотека конкретный импорт

Однако в нем ничего не упоминается о том, как следует прокладывать два разных способа импорта выход:

Код: Выделить всё

from foo import bar
import foo
Есть несколько способов их сортировки (предположим, что все импортированные элементы принадлежат к одной группе):
  • сначала из..импортировать, затем импортировать

    Код: Выделить всё

    from g import gg
    from x import xx
    import abc
    import def
    import x
    
  • сначала импортировать, затем из..импортировать

    Код: Выделить всё

    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). Пожалуйста, не публикуйте субъективные ответы, в которых говорится о ваших предпочтениях.

Подробнее здесь: https://stackoverflow.com/questions/207 ... -statement

Вернуться в «Python»