我現在使用python 2.7現在添加了python 3.4。在pip3中安裝與pip相同的軟件包
我如何輕鬆地將通過pip安裝的軟件包遷移到pip3?
未來的後續:有沒有辦法將軟件包安裝到2.7和3.4版本的Python?
編輯1:合併答案。 編輯2:將解決方案移至答案。
我現在使用python 2.7現在添加了python 3.4。在pip3中安裝與pip相同的軟件包
我如何輕鬆地將通過pip安裝的軟件包遷移到pip3?
未來的後續:有沒有辦法將軟件包安裝到2.7和3.4版本的Python?
編輯1:合併答案。 編輯2:將解決方案移至答案。
移至雙位煉金術士建議的答案。
首先更新所有的包
pip freeze --local | grep -v '^\-e' | cut -d = -f 1 | xargs pip install -U
然後我 「重新安裝」 到Python 3
brew install pip3
cd /usr/local/bin
ln -sfnv ../Cellar/python3/3.4.2_1/bin/python3 python
unset PYTHONPATH
eval 'export PYTHONPATH=/usr/local/lib/python3.4/site-packages'
,然後重新安裝到Python 3
pip freeze --local | grep -v '^\-e' | cut -d = -f 1 | xargs pip3 install
我裝這一切在一bash功能,現在它全部自動化,以便將來使用!感謝你們!
pip是一個爲x和y的某些值安裝適當版本的python軟件包(使用其元數據)到pythonx.y/lib/site-packages的程序。在* nix上,默認的x.y是python2的最新版本。 pip3是一個別名,它將默認值更改爲最新版本的python3。
pip -h
列出了pip命令和常規選項。
pip command -h
列出的選項command
,如install
。
從字面上看,遷移到「pip3」沒有意義。當然,獲得安裝的相同的軟件包爲3.4,你已經安裝了2.7。 Two-Bit Alchemist給出的方法應該適用於與3.x兼容的每個包,但我相信需求文件是用於將pythonx.y安裝複製到另一個pythonx.y安裝(可能在虛擬環境中)。它將安裝即使已經過時,你已經有了,該包的同X.Y.Z版本,所以你可能要與
pip install -U <package>
每個包先更新2.7集合。
你說的是真的 - 'pip freeze'輸出硬編碼版本號。 – 2015-01-15 23:03:29
運行pip install -U是個好主意! – Califlower 2015-01-16 20:51:50
全球?在同一個virtualenv? Python2和Python3都兼容嗎?你有沒有看過簡單的'pip freeze> packages.txt',接着是'pip3 install -r packages.txt'? – 2015-01-15 18:17:46
謝謝,刪除過時的包裝後工作正常。事實上,所有100多年的工作期望memche已被重新命名爲memche3 :) – Califlower 2015-01-16 20:43:04
僅供參考您可以回答自己的問題並接受您自己的答案。我個人認爲,對於從谷歌來到這裏的人來說,你所做的一切都很好,但前者可能更合適,至少在未來。 – 2015-01-17 22:46:31