python / python3-如何为安装的Anaconda和python软件包合并不同的位置?

时间:2018-12-17 16:19:46

标签: python python-3.x opencv path anaconda

似乎我在同一台计算机上安装了多个版本的python,其中一个是anaconda发行版。但是,某些软件包只能使用某些版本的python导入。我们如何合并所有软件包的来源:

我成功安装了opencv,并尝试使用命令Atom(1)从import cv2的脚本中导入它:

ImportError: dlopen(/anaconda3/lib/python3.6/site-packages/cv2.so, 2): Library not loaded: /usr/local/opt/ilmbase/lib/libImath-2_2.12.dylib
  Referenced from: /usr/local/Cellar/opencv/3.4.1_4/lib/libopencv_imgcodecs.3.4.dylib
  Reason: image not found

导入命令python(链接到anaconda的命令)

然后我去Terminal并用$ python叫python

Python 3.6.5 | packaged by conda-forge | (default, Apr 6 2018, 13undefined09) 
GCC 4.2.1 Compatible Apple LLVM 6.1.0 (clang-602.0.53) on darwin

然后我尝试使用import cv2导入open cv,并得到与上面(1)中相同的错误消息

导入命令python3

然后我输入了import python3(而不是python),它起作用了:我得到了:

Python 3.6.5 (v3.6.5:f59c0932b4, Mar 28 2018, 03undefined55) GCC 4.2.1 (Apple 
Inc. build 5666) (dot 3) on darwin

并且可以使用以下命令执行脚本     导入cv2

显然,这两个不同的命令从不同的位置获取软件包,因为:$ which python让我/anaconda3/bin/python$ which python3让我/Library/Frameworks/Python.framework/Versions/3.6/bin/python3

当我使用Atom作为文本编辑器时,如何使Atom看到正确的位置?

非常感谢!

规格:

  • macOS 10.14
  • Python 3.6.5

1 个答案:

答案 0 :(得分:0)

好吧,我实际上必须更改jupyter内核的Path文件中的.json。首先,我检查了jupyter内核列表:

$ jupyter kernelspec list
julia-0.6    /Users/mymac/Library/Jupyter/kernels/julia-0.6
julia-1.0    /Users/mymac/Library/Jupyter/kernels/julia-1.0
python3      /Users/mymac/Library/Jupyter/kernels/python3

然后我cd在上面的python路径中,我在里面找到文件kernel.json并打开了它:

{
 "argv": [
  "/path/to/python",
  "-m",
  "ipykernel_launcher",
  "-f",
  "{connection_file}"
 ],
 "display_name": "Python 3",
 "language": "python"
}

然后在该文件中,通过在终端中键入以下内容时获得的python路径更改行/path/to/python

$ which python
/Users/mymac/anaconda3/bin/python

重新启动Atom,终于成功了!

github page of jupyter的提示也有很大帮助!