Я отправил вопрос в библиотеку Python с открытым исходным кодом и получил ответ, что разработчики не смогли воспроизвести ошибку. Я установил пакет в среду conda, и я хочу выяснить, в какие среды я установил пакет, чтобы попытаться воспроизвести проблему в исходной среде. Проблема в том, что у меня есть несколько conda envs, чтобы проследить, и моя текущая стратегия "активировать среду -> запустить интерпретатор python -> попытаться импортировать пакет -> выйти из интерпретатора -> деактивировать среду" устарела.
Есть ли простой способ перечислить все среды, которые содержат определенный пакет? Что-то вроде:
conda info --envs --package=PackageName
РЕДАКТИРОВАТЬ: я выяснил, как проверить, установлен ли пакет в любой моей среде. По-прежнему не предупреждает, в какой среде находится пакет, просто показывает мне, если пакет существует:
Continuum/anaconda3/condabin/conda.bat info --envs | awk '{print $1}' | xargs -ix Continuum/anaconda3/condabin/conda.bat list -n x | grep packagename
Это на машине с Windows, с использованием оболочки git bash, с установленным рабочим каталогом. на /c/Users/userName/AppData/Local
РЕДАКТИРОВАНИЕ2: Вот мое окончательное решение:
echo Continuum/anaconda3/envs/*/lib/site-packages/PACKAGENAME | sed -E 's/[^ ]+envs\/([^/]+)\/lib[^ ]+/\1/g' | tr " " "\n"