[英]How to list outdated pip packages only on anaconda?
我會列出所有僅在 anaconda 中使用 pip 安裝的過時 python 包。 不會顯示 Conda 包。
如果我運行pip list --outdated
,將顯示所有過時的包,包括 pip 和 conda。 我只想顯示過時的 pip 包。
我在 Windows 10 上使用 anaconda python v3.6 64 位。
答案不正確:“pip list --outdated”將返回所有過時的包,包括由 conda 安裝的包,即使你只是執行了“conda update --all”。 這是因為從“pip”存儲庫到“conda”存儲庫的包傳播有一些延遲。 一般來說,不建議通過 pip 更新 conda 安裝的包(除非你真的需要它並且知道你在做什么,但同樣最好等待幾周)。
與“conda list”相同——它將報告所有已安裝的包。 通道名稱“pypi”可能表明包是由“pip”安裝的,但它並不可靠,因為您可以在 pip 中使用其他通道並使用“Pypi”通道與 conda。
回到點子。 理論上,“pip list [--outdated]”中有選項“-v”可用。 它將提供附加列“安裝程序”,其中包含 pip/conda 文本。 實際上,此信息完全無關緊要,因為 conda 隨機放置“pip”或“conda”。
我確實在 github/pip 中創建了問題。 在那里查看更多詳細信息。 簡而言之:沒有人想以正確的方式修復它,所以我必須使用自己不完美的解決方法來為自己解決這個問題。 https://github.com/pypa/pip/issues/8415
您可以在以下兩者之間設置差異:
通過以下方式獲得的所有 pip 過時包:
$ pip list --outdated
以及通過以下方式獲得的所有 conda 安裝包:
$ conda list
這將從pip list --outdated
返回的列表中刪除以前使用 conda 安裝的過時軟件包,為您提供通過 pip 安裝的過時軟件包列表。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.