Python の 在 VSCode 中使用 IPython Kernel 的方法
2020-09-05 01:43
2191 查看
本文介绍,在 VSCode 使用 IPython Kernel,的设置方法。
要达到的效果:
只需按下
Ctrl+;,选中的几行代码,就会自动发送到 IPython Kernel,并运行,得到结果!当然,快捷键也可以另行设置!
为什么要这么做:
首先,这种配置方式,比较轻量快速;
主要用于,增加写代码时的“互动性”,可以边写代码,边测试;例如,在写代码时候,快速测试下,一行或几行代码,看看效果;
所以,非常适合新手,边写边学习,或者,需要写个几十行代码,迅速解决问题,的情况;
另外,这种配置也比较方便 Debug 的过程,因为可以逐行运行,或者,不按顺序的运行测试任意一行代码;
基本配置:
- 安装 Python 程序
- 安装 IPython (pip install)
VSCode 插件配置:
- Python 插件 (Python 编程必备插件)
- multi-command 插件 (支持多步骤的命令)
设置方式:
1. 在 "setting.json" 中添加如下代码并保存:
"python.terminal.launchArgs": ["-m", "IPython", "--no-autoindent"], "multiCommand.commands": [ { "command": "multiCommand.executeIPython", "sequence": [ "python.execSelectionInTerminal", "workbench.action.terminal.focus", "workbench.action.terminal.scrollToBottom", {"command": "workbench.action.terminal.sendSequence", "args": { "text": "\u000D" }}, "workbench.action.focusActiveEditorGroup" ] }, ]
2. 在 "keybindings.json" 中添加如下代码并保存:
{ "key": "ctrl+;", "command": "multiCommand.executeIPython", "when": "editorTextFocus && python.datascience.featureenabled && python.datascience.ownsSelection && !findInputFocussed && !notebookEditorFocused && !replaceInputFocussed && editorLangId == 'python'" }
然后,就可以做到,按下
Ctrl+;,直接发送选中行,到 IPython Kernel 了!
微小的不足:
就是,首次,按下
Ctrl+;,运行代码的时候,需要切换到 Terminal 窗口,手动按下回车,才会运行代码,
之后再运行代码时,直接按
Ctrl+;即可,代码会自动发送过去,并运行出结果,就再也不需要按回车了。
关于设置方式的解释:
如果不感兴趣设置原理,这部分,就可以跳过了,感兴趣原理的,请继续观看!
首先,"setting.json" 中,设置的第一行,是为了让,Python Interpreter 打开时,自动调出 IPython Kernel;
而,"setting.json" 中的,第二项设置,是设置的,把选中代码发送到 Kernel,并按下回车,的这一系列动作,这里需要 multi-command 插件的支持;
最后,在 "keybindings.json" 中的设置,是为了把,调用上面命令的快捷键,设置为
Ctrl+;,如果想设置成其他快捷键,改掉 Key 后面的值就行了!
其他设置方法及互动模式 (Interactive Mode):
当然还有其他的设置方式也能达到同样的效果
- 例如,直接运行代码
from IPython import embed; embed()
,也可以立刻打开 IPython Kernel;只不过,这时候,就没有快捷键那么方便和舒服了;而且这样打开的 Kernel 都是黑白的,没有彩色; - 也可以直接使用 VSCode 的 Python 插件,自带的 Interactive Mode 和 Jupyter Notebook 的功能;这两个功能都超级好用,但若,只想快速解决个小问题,写个几十行代码的话,这两个功能稍微有点 too much 了,而且很占用屏幕的地方,不够简洁!关于这两个功能,虽然非常好,但这里就不详细介绍了!
- 所以,我还是,最喜欢,也最推荐上面的方法!
篇尾结语:
OK,就先写到这儿吧!小白贡献,语失莫怪,希望对大家有帮助。
喜欢我的博客,就请来关注吧:Bitssea
(^_^)
参考阅读:
- How to set ipython/jupyter as the default python terminal for vscode?
- How can i force SHIFT+ENTER to run selection and execute it immediately running ipython in vscode?
- 快捷键绑定 - VScode 中文文档
- Visual Studio Code Key Bindings
相关文章推荐
- Python课堂笔记-第七讲(元组&字典&集合)
- Python之compiler:compiler库的简介、安装、使用方法之详细攻略
- python网站开发哪些框架比较好用?
- python 转义字符表
- Python:集合和函数
- 少儿编程:认识python中的turtle库(一)
- python集合与函数(一)
- Python学习之路日志—利用matplotlib开发数据可视化项目(3)
- python小常识
- 100天精刷LeetCode-Day6:Linked List Cycle2问题(附详细思路和python题解)
- 100天精刷LeetCode-Day5:141 Linked List Cycle问题(附详细思路和python题解)
- Python学习之路日志—利用matplotlib开发数据可视化项目(2)
- Python学习的收费标准是多少?Python学习
- Python编程语言学习:for循环中常用方法经验技巧(利用enumerate函数对列表实现自带索引等)之详细攻略
- 43、最长公共前缀-Python-LeetCode-14
- leetcode_486. 预测赢家 python3
- Python学习:第23课-文件读写和异常处理(Python学习路线图+学习视频教程+Python就业面试题)
- Python压缩zip文件
- pythonl列表(list)
- 用python自动发送邮件