Должен ли я объявлять импорт в начале файла или где-то еще?

Я прочитал статью об AsyncIO и кое-что заметил. Вот код из этой статьи:

#!/usr/bin/env python3
# countasync.py

import asyncio

async def count():
    print("One")
    await asyncio.sleep(1)
    print("Two")

async def main():
    await asyncio.gather(count(), count(), count())

if __name__ == "__main__":
    import time
    s = time.perf_counter()
    asyncio.run(main())
    elapsed = time.perf_counter() - s
    print(f"{__file__} executed in {elapsed:0.2f} seconds.")

Почему import time объявлено после if __name__ == "__main__"не в начале документа? Согласно PEP8 "Импорт всегда помещается в начало файла, сразу после любых комментариев и строк документации, но перед глобальными переменными и константами модуля". Насколько я знаю, есть несколько странных пакетов (например, в Twisted), которые вы должны импортировать в какое-то особое место. Но почему автор поместилimport timeВот? Есть ли смысл?

0 ответов

Другие вопросы по тегам