Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/visual-studio-code/3.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
Python 如何在当前文件';Visual Studio代码中的目录?_Python_Visual Studio Code_Vscode Settings - Fatal编程技术网

Python 如何在当前文件';Visual Studio代码中的目录?

Python 如何在当前文件';Visual Studio代码中的目录?,python,visual-studio-code,vscode-settings,Python,Visual Studio Code,Vscode Settings,在VSCode中执行“在Python终端中运行选择/Line”命令时,终端的当前工作目录是工作区根目录。运行选择/行时,如何将终端的当前目录设置为当前文件的目录?您需要转到文件/首选项/用户设置并单击窗口右上角的“{}”图标。然后,将此设置放入:“terminal.integrated.cwd”:“C:\\Users\\myUser\\”,,然后放在终端目录所在的位置。这个答案并不是最不准确的,因为我自己在使用vscode方面还是个新手,所以如果有经验的人能够回复这个帖子,那就太好了。目前还没有

在VSCode中执行
“在Python终端中运行选择/Line”
命令时,终端的当前工作目录是工作区根目录。运行选择/行时,如何将终端的当前目录设置为当前文件的目录?

您需要转到
文件/首选项/用户设置
并单击窗口右上角的“{}”图标。然后,将此设置放入:
“terminal.integrated.cwd”:“C:\\Users\\myUser\\”,
,然后放在终端目录所在的位置。这个答案并不是最不准确的,因为我自己在使用vscode方面还是个新手,所以如果有经验的人能够回复这个帖子,那就太好了。

目前还没有直接的方法来实现这一点。为了寻找更好的解决方案,我在VScode市场上有一个扩展解决方案。此扩展允许您在当前文件的目录中打开集成终端。这个扩展再加上几个步骤,您应该可以获得所需的行为

  • 安装扩展名后,确保文件窗口处于焦点位置,然后按ctrl+shift+p并执行
    Terminal Here:Create Terminal
    。这将在文件目录中创建一个新的终端
  • 在终端中键入
    python
    ,以启动python解释器
  • 现在,将光标定位到要执行的行上,然后按ctrl+shift+p并执行
    终端:在活动终端中运行所选文本。这将在OpenPython解释器中运行该行代码

只有在第一次在当前文件目录中的Python解释器中运行代码选择时,才需要前两个步骤。第三步可以运行所有后续选择。为了加快进度,您可以在第一步和最后一步附加自定义功能。

此选项将对您有所帮助。 文件->首选项->设置。 添加或编辑以下设置

terminal.integrated.shell.windows:“

它将从下一个终端反射

并将.profile添加到默认shell中,并向其添加默认路径


更多信息请访问:

在“用户设置”中,使用搜索栏查找“python.terminal.executeInFileDir”,并将其值设置为“true”而不是“false”。

在2019.10.44104发布后更新

在VS Code python扩展版本2019.10.44104发布之后,现在可以将python.dataScience.notebookFileRoot设置为${fileDirname},直接启动正在运行的文件目录中的python交互窗口

请注意,如果从另一个文件运行代码,则根目录不会更改,除非中断/重新启动内核(或关闭VS代码)


对于Python交互窗口,您要查找的设置是
Python.dataScience.notebookFileRoot
。但是,正如在类似问题的中所解释的

通过
notebookFileRoot
设置不支持始终打开文件位置(无需将
notebookFileRoot
设置为每个文件夹的绝对路径)。VSCode变量,如
${fileDirname}
特定于任务和调试配置文件(
launch.json
task.json

另请参见相关的

如前所述,您仍然可以将此设置设置为特定的绝对路径,如果您一次主要处理单个项目,这可能就足够了

或者,您也可以在脚本/笔记本的顶部添加以下代码:

import os
os.chdir('absolute-path-to-workingDir')

我认为这似乎不起作用。交互式窗口与
笔记本文件根设置相关。这并没有回答最初的问题,但这是我想要的答案,所以请向上投票+1