Python Pip安装的软件包不会显示在Anaconda Navigator中

Python Pip安装的软件包不会显示在Anaconda Navigator中,python,pip,anaconda,conda,Python,Pip,Anaconda,Conda,许多Python软件包没有预先构建的conda软件包,因此Anaconda用户经常被迫使用pip来安装软件包。我必须经常这样做,因为很多软件包没有康达软件包,甚至在康达福吉或bio conda等最常见的替代渠道中也没有 这一未决问题已在Anaconda github支持回购协议中报告。然而,在将近一年的时间里没有得到任何答案。我在这里发问是因为与单个产品的支持论坛相比,响应通常更快,共享范围更广 我讨厌重新安装Anaconda(尤其是长期安装)会导致生产力损失,因为备份和导出现有的environ

许多Python软件包没有预先构建的conda软件包,因此Anaconda用户经常被迫使用pip来安装软件包。我必须经常这样做,因为很多软件包没有康达软件包,甚至在康达福吉或bio conda等最常见的替代渠道中也没有

这一未决问题已在Anaconda github支持回购协议中报告。然而,在将近一年的时间里没有得到任何答案。我在这里发问是因为与单个产品的支持论坛相比,响应通常更快,共享范围更广

我讨厌重新安装Anaconda(尤其是长期安装)会导致生产力损失,因为备份和导出现有的environment build文件(如requirements.txt)、删除现有的Anaconda安装、清理Windows注册表、搜索Windows文件系统中的剩余碎片可能需要3-4个小时,然后一次重建一个环境

是否有人知道一个诀窍,或者有Python脚本或其他解决方法来刷新conda环境中的包索引,或者刷新由Anaconda Navigator GUI创建和管理的所有环境的包索引。如果Anaconda Navigator GUI中有一个updater小部件,允许用户选择要更新包索引的虚拟环境,那就太棒了

我试过的 在Anaconda Navigator GUI环境选项卡中,单击更新索引。。。按钮不会通过Anaconda命令提示符更新后台安装的软件包列表

我得到的结果 安装了pip的软件包不包括在Anaconda软件包索引更新过程中。在Anaconda3根目录内外安装的环境中找不到包。它甚至找不到\envs文件夹下的所有包。这使我认为软件包未安装到当前选定的环境中,因此需要时间来验证它们在C:\ProgramData\Anaconda3\envs、C:\Users\username\AppData\Local或其他位置中的位置

我还尝试了什么:在安装了一个损坏的Anaconda和Spyder之后,我在各种支持论坛上发布了帮助请求。我得到的答案没有多大帮助,比如不要混合使用pip和conda软件包,使用其中一种。这是不实际的,因为很多Python包都没有conda包格式。过去,我从Anaconda和Spyder开发者那里得到了不切实际的建议

严重性和影响 这是一个重要的问题,因为可能会使用/误用conda和pip,并在不经意间严重损坏Anaconda,因此需要痛苦而耗时地拆除和重新安装整个Anaconda分发版


一个可能的解决方案超出了我目前的电缆牵引。。。如果有人能够在PyPi、Anaconda Cloud、Conda forge和其他渠道中构建一个智能透明的转换器,从而使这种转换实现自动化和验证,那么这种对话可能就不需要了

这篇文章似乎与此相关:。许多Python软件包没有预先构建的conda软件包,因此Anaconda用户经常被迫使用pip来安装软件包。我必须经常这样做,因为很多包都没有康达包,甚至在康达福吉或bio conda等最常见的替代渠道中也没有。。。这是不实际的,因为很多Python包都没有conda包格式。你能给出一些流行的例子吗?另外,这里似乎有许多不同的问题,可能值得进一步组织。@AMC感谢你的回答。它解决了一些问题,并提供了避免腐蚀conda envs的指导。太多的包以pip格式存在,没有conda等价物;每次在没有conda版本的情况下更新pip包时,都会出现这个问题。你在这里链接的文章本质上说,对待康达环境就像对待它们是无菌的一样。仅添加conda包以保持环境清洁。但在你成功后,就再也没有康达了,否则你就有腐败的风险。一旦使用了pip,康达将不知道这些变化。康达指数不会反映pip的变化。不要交叉使用conda和pip。最佳实践清单非常有用。1首先使用康达,时间越长越好。2然后使用pip,知道你可以/不应该回去。3康达环境使事情变得更小、更易于管理。4不要破坏你的“根”环境;如果您认为必须这样做,请尽可能自己构建conda包。5不要使用–user参数,避免所有“用户”安装。一旦pip被使用,康达将不知道这些变化。将conda和pip要求存储在文本文件中,以记录您的更改。我不知道您是否已经看到这一点:。