在添加numpy时破坏了我的python构建

在添加numpy时破坏了我的python构建,python,path,numpy,Python,Path,Numpy,在试图通过添加numpy来构建python时,我设法在某些地方制造了问题。现在,尽管我已经安装了numpy和其他软件包,比如BeautifulSoup,但我无法从mac的默认python中导入它们。以前我可以导入它们 我应该首先在哪里寻找潜在的问题?我的bash档案。轮廓python中的某个地方?任何帮助都将不胜感激。我对安装程序包和路径变量非常陌生,因此任何关于错误位置的指导都会很有帮助 编辑 遵循John Keyes的建议并打印python的路径后,结果是: ['','/Library/P

在试图通过添加numpy来构建python时,我设法在某些地方制造了问题。现在,尽管我已经安装了numpy和其他软件包,比如BeautifulSoup,但我无法从mac的默认python中导入它们。以前我可以导入它们

我应该首先在哪里寻找潜在的问题?我的bash档案。轮廓python中的某个地方?任何帮助都将不胜感激。我对安装程序包和路径变量非常陌生,因此任何关于错误位置的指导都会很有帮助

编辑


遵循John Keyes的建议并打印python的路径后,结果是:

['','/Library/Python/2.7/site-packages/pip-1.0.2-py2.7.egg',
'/Library/Frameworks/Python.framework/Versions/2.7/lib/python27.zip',
'/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7',
'/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-darwin',
'/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac',
'/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac/lib-scriptpackages',
'/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-tk',
'/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-old',
'/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload',
'/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages',
'/Library/Python/2.7/site-packages',
'/Library/Python/2.7/site-packages/setuptools-0.6c11-py2.7.egg-info']
这些路径是否应该包括列出的我安装的软件包(如numpy和Beauty soup)

编辑2


这是我的bash配置文件。从对我的问题的评论来看,这些可能就是问题所在,所以我想我应该在下面列出它们。我如何更改它们,以便我的python构建能够回到正确的位置安装东西

export PATH=/usr/local/bin:/usr/local/share/python:/usr/local/sbin:$PATH


# Setting PATH for Python 2.7
# The orginal version is saved in .bash_profile.pysave
PATH="/Library/Frameworks/Python.framework/Versions/2.7/bin:${PATH}"
export PATH

据我所知,您已经构建了一个自定义python,它与默认的python安装不同

您应该使用新安装的python,或者指定默认安装的numpy路径。第二种选择有两种方式:

告诉我您的numpy模块位于/Users/Me/python/modules目录

  • 从命令行为外部模块设置环境变量:

    setenv PYTHONPATH /Users/Me/python/modules
    
    要使此内容对用户永久化,可以将此行添加到.bashrc文件中

  • 在代码中,可以将相同的目录添加到路径:

    import sys
    sys.path.append('/Users/Me/python/modules')
    import numpy
    ...
    

  • 我希望这会有所帮助。

    您可以运行
    python-c“import sys;print sys.path”
    来打印
    python
    找到可用包和模块的每个路径。谢谢,我已经这样做了,并用其中的数据更新了我的问题。现在查看一下
    /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site packages
    ,您将看到安装了哪些软件包。如果这是一个愚蠢的问题,请原谅。我如何在这些文件夹中准确地查看我的包在哪里?如果打开我上面提到的一个(
    站点包
    ),您应该会看到您在python安装中添加了哪些其他包。您可以通过Finder(打开终端并键入
    open
    )或直接在终端中(
    cd;ls-l
    )执行此操作。我仍然使用苹果提供的默认python。有什么理由我不应该使用默认安装吗?如果我按照你的第一步做,它会让我所有的库都进入那个文件夹吗?那么它们是否都能与我的默认python一起工作呢?可能有一些原因需要构建一个新的python,但在您的情况下,这不是必需的。环境变量PYTHONPATH指向额外的python模块路径,您不应该将所有模块都放在那里。指定路径中的模块将像默认模块一样工作。这很有意义。在命令行上运行此命令之前/之后,是否需要对当前bash配置文件设置执行任何操作?
    setenv
    命令仅在当前会话中有效,如果在某些用户的bash配置文件中添加此命令,它将像任何其他环境变量一样成为永久性的。如果这样做,则不需要每次都运行该命令。