2015-05-17 3 views
16

Я работаю над проектом и нуждаюсь в немного другой функциональности от пакета sklearn. Я разветвил репо и подтолкнул мои изменения. Я знаю, что я могу установить из GitHub через пип:Pip install forked github-repo

pip install git+git://github.com/wdonahoe/[email protected] 

, а затем я могу установить пакет с setup.py:

python setup.py install 

Однако, я запутался о том, что делать после этого шага. Запуск setup.py создает некоторые .egg-info папки и .egg-links файлы в .../dist-packages /, но я не уверен, что с ними делать. В идеале, я хотел бы пойти в мой проект в .../проектов/my_project и сказать что-то вроде

from sklearn-my-version import <stuff> 

или переключить его с только

from sklearn import <stuff> 

Я также немного смущен, потому что много ресурсов по этой проблеме упоминает использование easy_install, которое, как я думал, заменил pip.

+1

-первых, вы не хотите, чтобы сделать оба устанавливаются в одном пакете. Либо «pip install git + ...», либо «python setup.py install» (или 'pip install .'), а не оба. – abarnert

+0

Между тем, один из них установит пакет в ваши (системные, пользовательские или виртуальные) dist-пакеты или пакеты сайтов. (Это не происходит нигде внутри вашего проекта. Если это то, что вы считаете нужным, скорее всего, что вы действительно хотите, это virtualenv.) Вы можете просто «импортировать» пакет так же, как и любой другой пакет. Предполагая, что он установлен как «sklearn», вы можете просто сделать «из sklearn import ', который звучит точно так, как вы хотите, так что в чем проблема? – abarnert

+1

Наконец, причина, по которой «много ресурсов» упоминает «easy_install», заключается в том, что многие ресурсы устарели. Если вы читаете старые ответы StackOverflow, сообщения в блогах, печатные книги и т. Д., Они вряд ли будут обновлены, так как они были изначально написаны. – abarnert

ответ