Ответ 1
Проверьте файл ~/.ipython/ipythonrc
- вы можете перечислить все модули, которые вы хотите загрузить при запуске.
Я хочу, чтобы IPython или интерпретатор Python автоматически загружали модуль при запуске.
Возможно ли это?
Например, когда я запускаю IPython:
$ ipython
...
>>> from __future__ import division
>>> from mymodule import *
In [1]:
Что-то вроде текущая оболочка SymPy, найденная на страницах учебника.
Проверьте файл ~/.ipython/ipythonrc
- вы можете перечислить все модули, которые вы хотите загрузить при запуске.
У вас есть .pythonstartup
в вашем домашнем каталоге и загрузите там модули и укажите PYTHONSTARTUP
env в этот файл.
Команды Python в этом файле выполняются до отображения первого приглашения в интерактивном режиме.
Я использую его для включения завершения командной строки в оболочке интерпретатора python
Если параметр -S
не передан в двоичный файл python
, специальный модуль site импортируется по умолчанию перед выполнением передан вашему script или интерактивному интерпретатору. Помимо прочего, модуль ищет файлы *.pth
. В каждой строке файлы *.pth
должны содержать либо путь для включения в sys.path
, либо команду для выполнения. Модуль также импортирует sitecustomize
и usercustomize
(который может содержать произвольный код, хороший способ заставить ваших коллег сходить с ума, если они возникают, чтобы вызвать ошибки), если они существуют где-то в sys.path
.
Проблема заключается в том, что текущий каталог не находится в sys.path
, когда импортируется модуль site
, то есть трудно настроить конкретный script.
Я иногда добавляю следующую строку в начале моих сценариев, так что script начнется с поиска в файлах .pth
в текущем каталоге и добавит недостающие пути в sys.path
:
# search for *.pth files in the current directory
import site; site.addsitedir('')