苏南网 - 江苏省生活资讯综合门户网站
当前位置: 苏南网 -> 热点

交互式shellIPython8.0大版本更新:Debug报错提示更清晰

栏目:热点    时间:2022-01-30 08:54   来源: IT之家   阅读量:6248      关键词:

IPython是一个用于多种编程语言交互计算的命令 shell,最初是为 Python 编程语言开发的,它提供了内省,富媒体,shell 语法,制表符完成和历史记录。

交互式shellIPython8.0大版本更新:Debug报错提示更清晰

酝酿了 3 年多,IPython 8.0 终于来了现在,用上最新版本,你不仅能在命令行里使用 Black 重新格式化代码,还能获得更好的自动代码补全和 Debug 体验

更多详情,咱们接着往下看。它具有高效的高级数据结构和简单有效的面向对象编程方法。。

优化报错

在 8.0 版本之前,如果代码出错,IPython 的错误回溯会显示一个哈希值,用于编译 Python AST,就像这样:

而现在,错误回溯已经正确格式化,能够显示出 bug 所在的具体单元格编号。

另外,IPython 8.0 还集成了 stack_data,这个包提供了更智能的追踪信息,能够突出显示发生错误的 AST 节点,帮助快速定位 bug。

比如对于这样一段代码:

调用 bar ,就能获得一个 IndexError,IPython 8.0 会告诉你索引错误具体发生在哪里。Python是一种易于学习且功能强大的编程语言。Python优雅的语法和动态类型,加上其解释性,使其成为大多数平台上许多领域脚本编写和快速应用程序开发的理想语言。

注:在终端和 notebook 中,用 ^ 标记的位置将显示为高亮。

还有一个对生产力有较大影响的改进,就是在错误回溯的文件名后面添加冒号和行号。

自动代码补全建议

除了更好的 Debug 体验,如果你很喜欢 Ptpython 里的代码自动补全功能,那么现在在 IPython 8.0 里你也能用上了。

通过 ctrl—f,或 ctrl—e,或按下右箭头,就可以接受这些建议。

alt—f 快捷键则可以只接受建议的第一个单词目前,自动建议只能在 emacs 或 vi 模式中显示

使用和

在 IPDB 中,现在可以用和

在 CLI 中用 black 自动格式化

如果 black 被安装在与 IPython 相同的环境中,那么现在,终端 IPython 将在默认情况下尽可能重新格式化命令行中的代码当然,你也可以用 —TerminalInteractiveShell.autoformatter=None 来禁用该选项

历史范围全局功能

此前,在使用 % history 时,用户可以指定 session 和行:

或是使用全局模式:

但在 8.0 以前,这两种模式不能兼得如果用户同时指定了 2 种模式,IPython 将应用全局模式并忽略指定范围

现在,此功能得到加强,如果用户同时指定了范围和 glob 模式,则 glob 模式将应用于指定的历史范围。

对了,还要提醒一点,如果想用 IPython 8.0,你得先把 Python 升级到 3.8 以上版本。

郑重声明:此文内容为本网站转载企业宣传资讯,目的在于传播更多信息,与本站立场无关。仅供读者参考,并请自行核实相关内容。