簡體   English   中英

pip 在沒有 Conda 包的情況下凍結

[英]pip freeze without Conda packages

我已經使用 Conda 一段時間了,它非常有幫助。 但是,最近發生在我身上的是,當我運行命令時

pip freeze > requirements.txt

將我的項目傳遞到另一台筆記本電腦, requirements.txt文件充滿了 Conda 包,這樣當我嘗試使用命令恢復它們時

pip install -r requirements.txt

它找不到它們並且失敗了。

我的問題是,是否可以在 pip 命令不考慮 Conda 包的情況下執行pip freeze

在一天結束時,我只使用 Conda 創建了單獨的 Python 個工作區。

conda list命令將在Channel列中指示帶有pypi的 PyPI 包。 因此,一種快速的方法是對此進行過濾,例如,

conda list | awk '$4 ~ /pypi/ { print $1 "==" $2 }'

應該提到的是,共享環境的更慣用的工作流程是使用conda env export ,它還從 PyPI 中捕獲(和分離)包。 有關詳細信息,請參閱有關共享環境的 Conda 文檔

如果你很確定 Anaconda 對於這個項目來說不是必需的,你可以從 requirements.txt 中手動刪除它的包。

Conda 包通常用 @ 定義。

這是刪除它們的代碼:

Linux:

pip freeze | grep -v "@" > requirements.txt

Windows

pip freeze | findstr /v "@" > requirements.txt

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM