Python - имеет ли значение, если я импортирую модули до или после определения функций? Newb Ques
Я пишу программу управления паролями, которая шифрует пароли и сохраняет хеши в документе. Должен ли я импортировать данные перед определением функций, импортировать в функции, которые они используют, или импортировать после определения функций, но до запуска функций. Я пытаюсь сделать мой код максимально аккуратным. В настоящее время я импортирую passlib.hash, sha256_crypt, os.path, time. Извините, если не ясно, я новичок и пытаюсь учить себя. Любой совет помогает.
3 ответа
Обычно все операции импорта выполняются сверху, в основном для удобства чтения: вам не нужно просматривать весь код, чтобы найти импорт. Конечно, вы должны импортировать символ, прежде чем сможете его использовать.
В любом случае, в Python не всегда неправильно импортировать внутри функций или классов, это из-за того, как Python интерпретирует импорт. Когда вы импортируете модуль, вы на самом деле запускаете его код, то есть, в большинстве случаев, просто определяете новые символы, но также можете вызвать некоторый побочный эффект; таким образом, иногда имеет смысл импортировать внутренние функции, чтобы импортированный код выполнялся только при вызове функции.
Это хороший стиль для импорта в самом начале кода. Таким образом, у вас есть обзор и вы можете избежать нескольких импортов.
Обычно импорт идет первым в любом шаблоне дизайна, который я видел. Импорт> переменные большого объема> функции.