anaconda新建不同python版本环境_解决 Anaconda 与 ROS 冲突(python 版本与 opencv)
生活随笔
收集整理的這篇文章主要介紹了
anaconda新建不同python版本环境_解决 Anaconda 与 ROS 冲突(python 版本与 opencv)
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
1. Python 版本沖突
默認(rèn)情況下,用 catkin_make 編譯 ros 工作空間,依賴于 pyhton2.7,若在終端中輸入 python,進(jìn)入 python2.7 的環(huán)境,則沒什么問題。
若安裝了 Anaconda,且在終端 init 后,默認(rèn)情況下,每次進(jìn)入終端,都會(huì)直接進(jìn)入 base 虛擬環(huán)境(相當(dāng)于執(zhí)行了 conda activate base),這樣在終端輸入 python,就會(huì)進(jìn)入 anaconda base 虛擬環(huán)境的 python 環(huán)境,如下圖:
此時(shí),若編譯 ros,則會(huì)報(bào)錯(cuò)。解決思路如下:
- 修改 Anaconda 配置,取消每次進(jìn)入終端都進(jìn)入 base 虛擬環(huán)境,需要用 anaconda 的時(shí)候,再執(zhí)行 conda activate base進(jìn)入虛擬環(huán)境,參考之前的帖子:
- 或者每次編譯 ros 的時(shí)候,退出 anaconda base,保證默認(rèn) python 環(huán)境為 python2.7
2. 安裝 ros 后,Anaconda envs 環(huán)境 import cv2 出錯(cuò)
原因:
- 在 ~/.bashrc 中寫入 source /opt/ros/kinetic/setup.bash 之后,默認(rèn)會(huì)把 /opt/ros/kinetic/lib/python2.7/dist-packages 路徑加入到 PYTHONPATH 環(huán)境變量中
- 在 Anaconda envs 環(huán)境中查看 python 環(huán)境變量,發(fā)現(xiàn) ros 的路徑在 envs 之前
解決方法:
- 刪除 anaconda envs 環(huán)境變量中的 ros 相關(guān)路徑
注:此方法單次有效,即每次執(zhí)行 import cv2之前,都要先執(zhí)行此操作
《新程序員》:云原生和全面數(shù)字化實(shí)踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀總結(jié)
以上是生活随笔為你收集整理的anaconda新建不同python版本环境_解决 Anaconda 与 ROS 冲突(python 版本与 opencv)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: pandas按条件过滤_pandas条件
- 下一篇: python 并行计算 opencv_o