Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为Enthow Corporation设置Python路径时出现的问题_Python_Macos_Enthought_Canopy - Fatal编程技术网

为Enthow Corporation设置Python路径时出现的问题

为Enthow Corporation设置Python路径时出现的问题,python,macos,enthought,canopy,Python,Macos,Enthought,Canopy,我正在运行MacOSX10.9.5。我试图使用Enthound Canopy作为我的IDE,但希望它指向我使用自制软件安装的Python发行版。我按照第页上的说明做了,但没有用 以下是我所做的: 当我在终端中键入“which python”时,我得到以下结果: /usr/local/bin/python setenv PYTHONPATH /usr/local/bin:/usr/local/sbin declare -x PATH="/usr/local/bin:/usr/local/sbi

我正在运行MacOSX10.9.5。我试图使用Enthound Canopy作为我的IDE,但希望它指向我使用自制软件安装的Python发行版。我按照第页上的说明做了,但没有用

以下是我所做的:

当我在终端中键入“which python”时,我得到以下结果:

/usr/local/bin/python
setenv PYTHONPATH /usr/local/bin:/usr/local/sbin
declare -x PATH="/usr/local/bin:/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin"
declare -x PWD="/Users/***/.canopy"
declare -x PYTHONPATH="/usr/local/bin:/usr/local/sbin"
因此,我修改了“launchd.conf”文件以包括以下内容:

/usr/local/bin/python
setenv PYTHONPATH /usr/local/bin:/usr/local/sbin
declare -x PATH="/usr/local/bin:/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin"
declare -x PWD="/Users/***/.canopy"
declare -x PYTHONPATH="/usr/local/bin:/usr/local/sbin"
launchd.conf信息似乎正在处理中,因为当我键入“export”时,会得到以下信息:

/usr/local/bin/python
setenv PYTHONPATH /usr/local/bin:/usr/local/sbin
declare -x PATH="/usr/local/bin:/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin"
declare -x PWD="/Users/***/.canopy"
declare -x PYTHONPATH="/usr/local/bin:/usr/local/sbin"
有什么建议吗?谢谢

另外,我不知道这是否相关,但我在~/.canopy/locations.cfg文件中有以下信息:

{'canopy_64bit-system': u'/Users/****/Documents/System', 'canopy_64bit-user': u'/Users/***/Documents/User'}
但我希望[Canopy]指出我使用自制软件安装的Python发行版


你不能安全地这样做。这还不受支持。目前,Corporation IDE与它所基于的Python发行版(安装时使用的发行版)有着不可分割的联系。使用PYTHONPATH允许cropy-Python从您现有的Python内部导入包是不太可能的,但仍然脆弱且不受支持。如果您想在多个python发行版之间共享一个模块或包,请将包的源代码保留在任何发行版之外,并分别安装到每个发行版中。

这太糟糕了。谢谢然而,我对以下链接上发布的说明有点困惑:这似乎意味着有可能改变冠层的环境变量?从根本上说,我并不在乎Canopy是运行自己的Python版本还是我下载的Python版本,但我想把我的库放在一个地方。没错。本文链接到堆栈溢出上的两个线程,它们描述了如何在从MacOS桌面、spotlight等启动的应用程序(如Canopy)中设置环境变量。但是环境变量不包含Python路径吗?因此,如果/usr/local/bin在环境变量中,那么在查找Python时,Canopy不应该指向该位置吗?对不起,我太糊涂了!PYTHONPATH与PATH不同。PATH是系统查找可执行文件的地方,PYTHONPATH是Python查找模块的地方。因此,告诉Python查看/usr/local/bin不会有任何效果,因为那里不应该有任何Python模块。您可能想将/usr/local/lib/python2.7/site-packages添加到PYTHONPATH中,但是如果其中有任何扩展模块与Canopy的Python不兼容,那么您可能会遇到问题。(依我看,这两条蟒蛇需要大致相同的版本,并且是用兼容的标志构建的。)