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获取文件后缀名及批量更新目录下文件后缀名的方法
Nov 11 Python
python运行时间的几种方法
Jun 17 Python
用python写一个windows下的定时关机脚本(推荐)
Mar 21 Python
Python基于回溯法子集树模板解决0-1背包问题实例
Sep 02 Python
python批量设置多个Excel文件页眉页脚的脚本
Mar 14 Python
Python实现手写一个类似django的web框架示例
Jul 20 Python
python操作文件的参数整理
Jun 11 Python
python3.7 sys模块的具体使用
Jul 22 Python
python中property属性的介绍及其应用详解
Aug 29 Python
基于Python实现2种反转链表方法代码实例
Jul 06 Python
教你怎么用python实现字符串转日期
May 24 Python
详解Python中下划线的5种含义
Jul 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+Memcache实现wordpress访问总数统计(非插件)
2014/07/04 PHP
详谈PHP文件目录基础操作
2014/11/11 PHP
Thinkphp中的curd应用实用要点
2015/01/04 PHP
PHP中使用hidef扩展代替define提高性能
2015/04/09 PHP
php使用Jpgraph绘制饼状图的方法
2015/06/10 PHP
PHP操作FTP类 (上传、下载、移动、创建等)
2016/03/31 PHP
php 数据结构之链表队列
2017/10/17 PHP
PHP代码加密的方法总结
2020/03/13 PHP
浅析PHP中json_encode与json_decode的区别
2020/07/15 PHP
JavaScript CSS 修改学习第四章 透明度设置
2010/02/19 Javascript
jQuery 选择器、DOM操作、事件、动画
2010/11/25 Javascript
30个最佳jQuery Lightbox效果插件分享
2011/04/11 Javascript
js中的屏蔽的使用示例
2013/07/30 Javascript
JS字符串截取函数实例
2013/12/27 Javascript
批量修改标签css样式以input标签为例
2014/07/31 Javascript
JavaScript继承学习笔记【新手必看】
2016/05/10 Javascript
Bootstrap轮播插件使用代码
2016/10/11 Javascript
Bootstrap modal 多弹窗之叠加引起的滚动条遮罩阴影问题
2017/02/27 Javascript
js事件委托和事件代理案例分享
2017/07/25 Javascript
详解VSCode配置启动Vue项目
2019/05/14 Javascript
微信小程序组件传值图示过程详解
2019/07/31 Javascript
vue 调用 RESTful风格接口操作
2020/08/11 Javascript
Python多线程学习资料
2012/12/19 Python
详解Django+Uwsgi+Nginx的生产环境部署
2018/06/25 Python
Python实现栈的方法详解【基于数组和单链表两种方法】
2020/02/22 Python
python 实现客户端与服务端的通信
2020/12/23 Python
python matlab库简单用法讲解
2020/12/31 Python
瑜伽服装品牌:露露柠檬(lululemon athletica)
2017/06/04 全球购物
机关财务管理制度
2014/01/17 职场文书
表彰先进的通报
2014/01/31 职场文书
食品安全责任书
2014/04/15 职场文书
网站创业计划书
2014/04/30 职场文书
幼儿园教研工作总结2015
2015/05/12 职场文书
逃出克隆岛观后感
2015/06/09 职场文书
python 模拟在天空中放风筝的示例代码
2021/04/21 Python
pyqt5蒙版遮罩mask,setmask的使用
2021/06/11 Python