Python 在 VSCode 中使用 IPython Kernel 的方法详解


Posted in Python onSeptember 05, 2020

本文介绍,在 VSCode 使用 IPython Kernel的设置方法,详细介绍如下所示:

要达到的效果:

只需按下 Ctrl+;,选中的几行代码,就会自动发送到 IPython Kernel,并运行,得到结果!当然,快捷键也可以另行设置!

Python 在 VSCode 中使用 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 了,而且很占用屏幕的地方,不够简洁!关于这两个功能,虽然非常好,但这里就不详细介绍了!
  • 所以,我还是,最喜欢,也最推荐上面的方法!

到此这篇关于Python 在 VSCode 中使用 IPython Kernel 的方法详解的文章就介绍到这了,更多相关VSCode 使用 IPython Kernel 的方法内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python多线程扫描端口示例
Jan 16 Python
利用Python实现网络测试的脚本分享
May 26 Python
python3 实现对图片进行局部切割的方法
Dec 05 Python
我用Python抓取了7000 多本电子书案例详解
Mar 25 Python
python实现扫描ip地址的小程序
Apr 16 Python
PyCharm 创建指定版本的 Django(超详图解教程)
Jun 18 Python
python字符串切割:str.split()与re.split()的对比分析
Jul 16 Python
Django实现文件上传下载功能
Oct 06 Python
解决Django响应JsonResponse返回json格式数据报错问题
Aug 09 Python
学点简单的Django之第一个Django程序的实现
Feb 24 Python
Python爬取酷狗MP3音频的步骤
Feb 26 Python
如何理解python接口自动化之logging日志模块
Jun 15 Python
Python中猜拳游戏与猜筛子游戏的实现方法
Sep 04 #Python
Python实现快速大文件比较代码解析
Sep 04 #Python
基于python实现图片转字符画代码实例
Sep 04 #Python
Python HTMLTestRunner如何下载生成报告
Sep 04 #Python
详解python中的lambda与sorted函数
Sep 04 #Python
如何利用Python动态模拟太阳系运转
Sep 04 #Python
python装饰器三种装饰模式的简单分析
Sep 04 #Python
You might like
PHP屏蔽过滤指定关键字的方法
2014/11/03 PHP
PHP For循环字母A-Z当超过26个字母时输出AA,AB,AC
2020/02/16 PHP
javascript forEach通用循环遍历方法
2010/10/11 Javascript
ASP中Sub和Function的区别说明
2020/08/30 Javascript
Js制作简单弹出层DIV在页面居中 中间显示遮罩的具体方法
2013/08/08 Javascript
js获取select选中的option的text示例代码
2013/12/19 Javascript
JS保留两位小数,多位小数的示例代码
2014/01/07 Javascript
JavaScript实现检查页面上的广告是否被AdBlock屏蔽了的方法
2014/11/03 Javascript
jQuery时间插件jquery.clock.js用法实例(5个示例)
2016/01/14 Javascript
JS实现消息来时让网页标题闪动效果的方法
2016/04/20 Javascript
利用jquery去掉时光轴头尾部线条的方法实例
2017/06/16 jQuery
jQuery easyui datagird编辑行删除行功能的实现代码
2018/09/20 jQuery
浅谈HTTP 缓存的那些事儿
2018/10/17 Javascript
微信小程序日历组件使用方法详解
2018/12/29 Javascript
JavaScript命名空间模式实例详解
2019/06/20 Javascript
如何基于javascript实现贪吃蛇游戏
2020/02/09 Javascript
[01:11:10]2014 DOTA2华西杯精英邀请赛 5 24 iG VS VG加赛
2014/05/26 DOTA
[01:13:59]LGD vs Mineski Supermajor 胜者组 BO3 第三场 6.5
2018/06/06 DOTA
Python的Django框架中从url中捕捉文本的方法
2015/07/20 Python
Python基于opencv实现的简单画板功能示例
2019/03/04 Python
Python 给定的经纬度标注在地图上的实现方法
2019/07/05 Python
Python脚本调试工具安装过程
2021/01/11 Python
CSS3的颜色渐变效果的示例代码
2017/09/29 HTML / CSS
美国知名运动产品零售商:Foot Locker
2016/07/23 全球购物
Maisons du Monde德国:法国家具和装饰的市场领导者
2019/07/26 全球购物
俄罗斯女装店:12storeez
2019/10/25 全球购物
利达恒信公司.NET笔试题面试题
2016/03/05 面试题
服装设计专业毕业生推荐信
2013/11/09 职场文书
应届毕业生应聘自荐信
2013/12/07 职场文书
园林资料员岗位职责
2013/12/30 职场文书
班级聚会策划书
2014/01/16 职场文书
赔偿协议书范本
2014/09/12 职场文书
2016年暑期社会实践活动总结报告
2016/04/06 职场文书
redis配置文件中常用配置详解
2021/04/14 Redis
HTML中的表单Form实现居中效果
2021/05/25 HTML / CSS
Windows Server 2012 R2 磁盘分区教程
2022/04/29 Servers