Python: Есть ли место, где я могу поставить импорт по умолчанию для всех моих модулей? - PullRequest
3 голосов
/ 29 августа 2009

Есть ли место, где я могу поставить импорт по умолчанию для всех своих модулей?

Ответы [ 2 ]

4 голосов
/ 22 октября 2015

Если вы хотите импортировать по умолчанию при использовании оболочки python, вы также можете установить переменную окружения PYTHONSTARTUP, чтобы она указывала на файл python, который будет выполняться при каждом запуске оболочки. Поместите все ваши импорты по умолчанию в этот файл.

3 голосов
/ 29 августа 2009

Да, просто создайте отдельный модуль и импортируйте его в свой.

Пример:

# my_imports.py
'''Here go all of my imports'''
import sys
import functools
from contextlib import contextmanager  # This is a long name, no chance to confuse it.
....


# something1.py
'''One of my project files.'''
from my_imports import * 
....

# something2.py
'''Another project file.'''
from my_imports import * 
....

Обратите внимание, что в соответствии со стандартными рекомендациями, from module import * следует избегать . Если вы управляете небольшим проектом с несколькими файлами, которые нуждаются в общем импорте, я думаю, что вы будете в порядке с from module import *, но все равно будет лучшей идеей реорганизовать ваш код так, чтобы разные файлы нужен другой импорт.

Так сделайте это так:

# something1.py
'''One of my project files. Takes care of main cycle.'''
import sys
....

# something2.py
'''Another project file. Main program logic.'''
import functools
from contextlib import contextmanager  # This is a long name, no chance to confuse it.
....
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...