2014-12-17 13 views
12

Sto usando due pacchetti python che hanno lo stesso nome.Come gestire i pacchetti Python con nomi in conflitto?

Esiste un modo canonica o divinatorio per gestire l'installazione di due pacchetti con nomi in conflitto? Finora, ho solo occasionalmente bisogno di uno dei pacchetti durante lo sviluppo/creazione, quindi ho usato una virtualenv separata per gestire il conflitto, ma rende il passaggio di costruzione più complesso e mi chiedo se non ci sia un modo migliore per gestirlo.

+2

Virtualenv è il modo migliore, penso. –

risposta

2

è possibile utilizzare l'opzione --target per pip e l'installazione in un percorso alternativo:

pip install --target=/tmp/test/lib/python3.6/site-packages/alt_alembic alembic 

Poi, quando si importano in python, fare il primo come al solito e per l'alt fare un importazione da quel namespace in questo modo:

import alembic # alembic.io version 
from alt_alembic import alembic as alt_alembic # pip version 

Poi, quando si sta facendo le chiamate a quella che si può chiamare alt_alembic.fu nction() e a quello che non è in PyPi, alembic.function() Il mio percorso di destinazione ha/tmp/test mentre stavo usando un env virtuale. Dovresti sostituire quel percorso con quello corretto per la tua installazione python.

Problemi correlati