Эквивалентность stdafx.h в разработке программного обеспечения Python - PullRequest
2 голосов
/ 24 октября 2019

Когда программное обеспечение становится все больше и больше, может быть трудно иметь чистый список импорта для каждого файла .py. Поэтому возникает вопрос: есть ли для этого наилучшая практика? Чтобы пролить больше света на эту проблему, предположим, что у нас есть 5 файлов, которые они используют sklearn, numpy и так далее. Теперь можно создать файл с именем stdafx.py, похожий на то, что мы делаем в C ++, и вместо того, чтобы импортировать каждый из этих пакетов в верхние строки кода из 5 файлов, используя from stdafx import *, в которомstdafx.py является партией всех этих пакетов. Другими словами, он будет содержать:

        -----------------------------stdafx.py------------------------------------
import numpy as np
import pandas as pd
from tensorflow import keras
from X import Y
.
.
.

1 Ответ

0 голосов
/ 31 октября 2019

Использование чего-то вроде from stdafx import * почти всегда не лучшая идея, поскольку модули, как правило, периодически импортируются, и всегда следует помнить о том, что импортируется, поскольку могут быть конфликты между импортируемыми объектами, особенно еслитаких импортов несколько.

«Текущее» пространство имен, в которое можно было бы выполнить импорт, не должно содержать вещи, которые не используются, особенно то, для которого его содержимое не указано полностью (*). Это облегчает чтение кода и понимание логики импорта и того, как он организован в рамках проекта.

...