10

The interactive console (aka PyDev console) which I use to run scripts with Control + Alt + Enter loads with C:\Program Files (x86)\eclipse as the default directory. How can I make it load to the default working directory that the script or project is located in?

I've been researching this all over now and nothing seems to work. It looks like others have been having the same issues with no answers too:

pydev console path for the active editor

https://superuser.com/questions/486759/how-can-i-select-a-default-interactive-console-in-pydev

I also tried implementing a custom startup script found here to no avail. I've also added my working directory to the PYTHONPATH as suggested here.

4

5 回答 5

2

这类似于活动编辑器的 pydev 控制台路径

https://stackoverflow.com/users/5717589/ptrj在上述链接中给出的答案是正确的,我相信这里也适用。它类似于https://stackoverflow.com/users/5618245/daniel发布的内容,但我认为提供了更详细的信息。为方便起见,我将在这里再次粘贴。ptrj 应该得到信任。此外,上述链接的 ptrj 答案应该已被 IMO 投票赞成。

来自ptrj: 我遇到了同样的问题,刚刚找到了另一个解决方案。它类似于已经提到的那些,但在 eclipse/pydev 中完全可配置(无需修改脚本)。

在 Window -> Preferences -> PyDev -> Interpreters -> Python Interpreter 中选择 tab Environment 并添加一个新变量,名称为 PROJECT_PATH (或您选择的任何内容)和 Value ${project_loc} (这是项目文件夹的绝对路径) . 然后在 Window -> Preferences -> PyDev -> Interactive Console -> Initial Command 添加行 import os; os.chdir(os.environ['PROJECT_PATH'])。(如果您启动“当前工作编辑器的控制台”,它会起作用。)

我使用这种方法,它对我有用。

于 2016-11-28T18:06:58.327 回答
1

我也为此苦苦挣扎。您链接到的脚本出现在我的搜索中,但直到我意识到它适用于 Python 2.6 并且我猜您使用的是不同的版本时才起作用。

我在 Preferences > Pydev > Interactive Console 下编辑了 Initial解释器命令:

import sys; print('%s %s' % (sys.executable or sys.platform, sys.version))
import os
cwd_path = [path for path in sys.path if 'org.python.pydev' not in path and 'python2' not in path]
if len(cwd_path) == 1:
    os.chdir(cwd_path[0])

(最后有一个换行符)并且效果很好。

不过,我仍然想不出一种设置默认控制台类型的方法。每次伸手去拿鼠标都会很快变老。

于 2013-01-09T17:27:02.800 回答
1

我将文件夹路径附加到 sys.path 工作正常,在 Preferences > Pydev > Interactive Console 下,添加项目文件夹路径的第二行:

import sys; print('%s %s' % (sys.executable or sys.platform, sys.version))
sys.path.append('F:\\projects\\python')
于 2013-10-15T14:42:57.513 回答
1

PyDev->Window->Preferences->PyDev->Interactive Console -> Initial Commands:

import sys; print('%s %s' % (sys.executable or sys.platform, sys.version))
import os
os.chdir('${workspace_loc:MyProject/src}')

为我工作

于 2015-11-29T16:10:39.550 回答
0

我也是。由于评论有长度限制,我将我的评论粘贴为答案。
我在 Python 2.7.3、Pydev 2.7.0 上工作。
我当前的 sys.path 是:

['D:\\Aptana Studio 3\\plugins\\org.python.pydev_2.7.0.2013012902\\pysrc',
'D:\\Python27\\lib\\site-packages\\distribute-0.6.30-py2.7.egg',
'D:\\Python27\\lib\\site-packages\\pydap-3.1.rc1-py2.7.egg',
'D:\\Python27\\lib\\site-packages\\coards-1.0.2-py2.7.egg',
'D:\\Python27\\lib\\site-packages\\pastedeploy-1.5.0-py2.7.egg',
'D:\\Python27\\lib\\site-packages\\pastescript-1.7.5-py2.7.egg',
'D:\\Python27\\lib\\site-packages\\paste-1.7.5.1-py2.7.egg',
'D:\\Python27\\lib\\site-packages\\genshi-0.6-py2.7-win32.egg',
'D:\\Python27\\lib\\site-packages\\httplib2-0.7.7-py2.7.egg',
'D:\\Python27\\lib\\site-packages\\virtualenv-1.8.4-py2.7.egg',
'D:\\Aptana Studio 3\\plugins\\org.python.pydev_2.7.0.2013012902\\pysrc',
'E:\\workspace\\pst_python',
'D:\\Python27\\DLLs',
'D:\\Python27\\lib',
'D:\\Python27\\lib\\plat-win',
'D:\\Python27\\lib\\lib-tk',
'D:\\Python27',
'D:\\Python27\\Lib\\site-packages',
'D:\\Python27\\Lib\\site-packages\\requests-0.14.2-py2.7.egg',
'D:\\Python27\\Lib\\site-packages\\extract-1.0-py2.7.egg',
'C:\\Windows\\system32\\python27.zip',
'D:\\Python27\\lib\\site-packages\\setuptools-0.6c11-py2.7.egg-info',
'D:\\Python27\\Lib\\site-packages\\IPython\\extensions']

作为@ChrisArmstrong 解决方案,这很难。
所以我单独使用 Ipython 作为替代方案。

于 2013-02-22T03:31:58.943 回答