【问题标题】:How to set ipython/jupyter as the default python terminal for vscode?如何将 ipython/jupyter 设置为 vscode 的默认 python 终端?
【发布时间】:2023-12-29 01:03:02
【问题描述】:

如何选择 ipython/jupyter 作为默认 python 终端?我使用带有 anaconda 发行版的 Windows 10 和 linux 机器。

如果我在终端上输入“ipython”,它会打开一个 ipython 会话。如果我运行调试器或 shift+enter 一行,它会自动在“准系统”python shell 上运行。应该很简单...但我一直在谷歌上搜索并弄乱设置半小时,但没有成功。

抬头

https://code.visualstudio.com/docs/python/tutorial-flask

Use IPython REPL in VS Code

但找不到在我的 linux 或 win10 机器上设置它的方法。有什么想法吗?

【问题讨论】:

  • 我不知道这是否是您想要的,但如果您加载了 Jupyter 扩展,然后将代码的第一行设为 #%%。然后,如果您这样做,您的代码中会出现一个选项,上面写着“运行单元格”。单击此按钮将在代码编辑器中运行您的代码。这就像一个默认选项,因为所有在第一行带有 #%% 的 python 代码都直接从代码编辑器中获得了该选项。我将此作为评论发布,因为我不知道这是否与您的问题有关。
  • 这是一个有用的技巧,感谢您的输入。

标签: python visual-studio-code ipython jupyter


【解决方案1】:

实现@TwoUnderscorez 答案的稍微简洁的方法是使用-m IPython 启动模块:

"python.terminal.launchArgs": [
   "-m",
   "IPython"
]

编辑:对于遇到IndentationError: unexpected indent 错误的任何人,请尝试以下操作:

"python.terminal.launchArgs": [
   "-m",
   "IPython",
   "--no-autoindent",
]

(不会只是对现有答案添加评论,但没有足够的代表)

【讨论】:

  • 感谢“--no-autoindent”技巧!为我减轻了很多痛苦!
  • 嗨,非常感谢,但每次我需要点击终端并按回车键运行代码。有什么解决办法吗?
  • 我能弄明白,这是我的回复:*.com/questions/54332723/…
【解决方案2】:
  1. 在您的 VSCode 中,按 ctrl+shift+P,开始输入 settings 并点击 Preferences: Open Settings (JSON) >

  2. 添加这个键值对告诉python启动ipython:

    "python.terminal.launchArgs": [
        "-c",
        "\"from IPython import start_ipython; start_ipython()\""
    ]
    

【讨论】:

  • 目前这似乎是最好的解决方案。
【解决方案3】:

目前不支持指定不是用于执行代码的 Python 解释器的替代 REPL。如果您只想将代码发送到 REPL,有些人会做的一个技巧是他们启动一次 REPL,退出它,然后手动启动 ipython,因为扩展程序将继续使用该终端实例来发送未来的代码到 REPL .

【讨论】:

  • 哦,好吧,我希望更新 REPL 的内置方法。是的,这种解决方法解决了大部分问题。
  • 我们有一些围绕交互式编码的计划,但我不能说更多;)。
  • 仅供将来参考,我在 linux 机器上遇到了这个解决方法的问题。当我尝试选择并运行(shift+enter)多行代码时,它只运行第一行。由于这些限制,我发现自己越来越多地使用 jupyternotebook。这是一个奇怪的工作流程。
  • @BrettCannon 对此有何更新?对于初学者来说,如果他们可以在 IPython 中运行代码会非常好,但是如果你刚刚开始学习 Python,告诉他们去编辑他们的设置是一项相当艰巨的任务。如果安装了 IPython,我认为这应该是默认设置。
  • @cbrnr 没有更新,但请随时在github.com/microsoft/vscode-python 上打开功能请求(我愿意为你做这件事,但我正在度假,我必须登录我的工作帐户来打开问题)。