Как импортировать функцию, содержащуюся в яйце Python, без установки модуля? - PullRequest
1 голос
/ 18 апреля 2019

Добавление файла Python .egg в мой PYTHONPATH не предоставляет функции в .egg.

Структура файла выглядит следующим образом

eggtest/
├── prime
│   ├── __init__.py
│   └── prime.py
├── primetest.py
└── setup.py
  • prime.py содержит одну функцию - prime -, которая возвращает истину, если ее аргумент является простым и ложным, в противном случае
  • primetest.py импортирует prime и проверяет несколько целых чисел

После запуска

python setup.py bdist_egg

prime-0.0.0-py2.7.egg отображается во вновь сформированном каталоге dist.

.egg должен использоваться без явного импорта:

PYTHONPATH=dist/prime-0.0.0-py2.7.egg python primetest.py

Но вместо этого возникают следующие ошибки:

AttributeError: 'module' object has no attribute 'prime'

Функция включена в .egg.Почему внешний скрипт Python не может импортировать его, если .egg находится на пути?

...