我一直在尝试向<code>PYTHONPATH</code>添加一个自定义目录。我在Mac上使用bash,如果相关的话。这就是我所做的:
打开~/。bash_profile
< li>
导出Python path = " $ { Python path }:/Users/Zhengnan/library/Python/2.7/lib/Python/site-packages "
并保存 < li>
source ~/。bash_profile
有两个问题:
具体来说,这是我在 IDE 中运行系统路径
所得到的。找不到预期的目录。
sys.path [' ','/Applications/Spyder-py2 . app/Contents/Resources ','/Applications/Spyder-py2 . app/Contents/Resources/lib/python 27 . zip ','/Applications/Spyder-py2 . app/Contents/Resources/lib/python 2.7 ','/Applications/Spyder-py2 . app/Contents/Resources/lib/python 2.7/plat-Darwin ','/Applications/Spyder-py2 . app/Contents/Resources/lib/python 2ipython']
这是我从终端运行sys.path
得到的结果。预期的目录是列表中的第三个元素。
系统路径 ['', '/用户/正南', '/用户/正南/库/蟒蛇/2.7/自由/蟒蛇/站点包“, ”/系统/库/框架/蟒蛇框架/版本/2.7/库/蟒蛇27.zip“, ”/系统/库/框架/蟒蛇/框架/版本/2.7/lib/python2.7“, ”/系统/库/python.2.7/python.框架/版本/2.7/库/python2.7/平台-mac“, ”/系统/库/框架/平台-mac“, ”/系统/库/框架/平台Python.framework/Versions/2.7/lib/python2.7/plat-mac/lib-scriptpacks', '/System/Library/python2.7/python2.7/python2.7/platb-mac/lib-tk', '/System/Library/框架/Python., '/System/Library/框架/版本/2.7/库/python.框架/版本/2.7/库/python.框架/版本/2.7/python.框架/版本/2.7/python2.7/lib-dynload', '/系统/库/框架/版本/Python.框架/版本/2.7/附加功能/自由/蟒蛇/蟒蛇/蟒蛇尾猴']
我应该提到,我想将这个自定义目录添加到<code>PYTHONPATH</code>中的原因是,每次我<code<pip>安装</code>包时,它都会安装在<code>/Users/Zhengnan/Library/Python/2.7/lib/Python/site-packages</code>中,我不想安装<code>sys.path。每次运行脚本时都要附加。请告知。谢谢
这里发生了很多事情。
从根本上说,您在IDE中使用的Python不是您在终端中使用的Python。这就是为什么pip install
没有把东西放在正确的位置。
最简单的解决方案是修改$PATH
环境变量,以便在终端中键入python
时,获得与IDE相同的版本。我的猜测是,你的IDE的python
类似于/应用程序/间谍 Py2.app/Contents/Resources/bin/python
,在这种情况下,你会摆脱你的PYTHONPATH
设置你的.bash_profile
并添加:
export PATH="/Applications/Spyder-Py2.app/Contents/Resources/bin:$PATH"
假设< code>pip在同一个地方可用,现在您应该能够< code>pip install东西,而不需要使用< code>PYTHONPATH。
这里的另一个问题是在shell中设置的环境变量,例如,在您的.bash_profile
中,对应用程序可见的环境没有影响。可以设置对OS X应用程序可见的环境变量(例如,参见这个问题),但这很棘手,我不建议这样做。
如果可用,另一种解决方案是告诉您的IDE应该使用哪一个<code>python</code>,并将其指向从终端可见的任何一个。
我正在尝试将一个自定义项目添加到发行版中。我创建的项目通过 mvn原型:generate-darchetypeGroupid=org.opendaylight.controller-darchetypeArtifactid=opendaylight-startup-archetype-darchetypePerepository=https://nexus.opendaylight.org/con
问题内容: 我已经构建了自己的自定义react-bootstrap Popover组件: 该组件的呈现方式如下: 现在,我想向组件中添加自定义道具,例如:我的文字,并使用新道具在弹出框中设置一些内容,例如- 但随后我在浏览器中收到此警告: 警告:标签上的未知道具。从元素中删除这些道具。 现在,我想我可以删除零件并逐个插入所有原始道具,而无需自定义道具,但是这样我就失去了“淡入淡出”效果,这也是处理
问题内容: 我正在尝试从特定目录导入模块。 问题是,如果我使用附加路径然后打开python解释器,则该目录将添加到列表sys.path的末尾。如果我在打开python解释器之前导出变量,则目录将添加到列表的开头。在后一种情况下,我可以导入模块,而在前一种情况下,我不能。 有人可以解释为什么会发生这种情况,并给我一个 在 python脚本中将其添加到开始的解决方案吗? __ 问题答案: 如文档所述,
我试图从一个特定的目录中导入一个模块。 问题是如果我使用<code>sys.path。append(moddirectory)要附加路径,然后打开python解释器,目录将添加到列表sys.path的末尾。如果我在打开python解释器之前导出变量,那么该目录将被添加到列表的开头。在后一种情况下,我可以导入模块,但在前一种情况中,我不能。 有人可以解释为什么会发生这种情况,并给我一个解决方案,在
问题内容: 我正在研究启用AJAX的asp.net应用程序。我刚刚向Array.prototype添加了一些方法,例如 该解决方案对我有用,可以以“漂亮”的方式重用代码。 但是,当我测试了它与整个页面一起使用时,我遇到了问题。我们有了一些自定义的Ajax扩展程序,它们开始表现出意想不到的效果:某些控件在其内容或值上显示为“未定义”。 这可能是什么原因?我是否缺少修改标准对象原型的东西? 注意:我很
如果我创建一个继承JComponent的新类,我重写了JComponent的绘图Component(Graphics g)方法,通过使用g绘制一个圆圈,我应该修改什么才能使MouseListener仅在我单击组件的边界内时触发? 因为我在组件的构造函数中添加了setBounds(…)然后添加了一个MouseListener,但它会在我每次单击自定义组件所在容器中的任何位置时触发,而不仅仅是在我单击