首页 > 编程知识 正文

ac300调试教程,pycharm怎么调试代码

时间:2023-05-04 05:37:38 阅读:172803 作者:2676

首先,spyder4.x比spyder3.x强大得多,而且在ui等各个方面都很出色。 本文以我平时常用的spyder4.1.2、4.1.5为例,分享一些使用和调试spyder4.0的心得。

本文分为两个部分。 第一部分介绍spyder4的强大功能。 第二部分介绍spyder4的调试功能。

熟悉使用spyder编写代码和运行程序的朋友可以直接跳过第一部分,直接看到第二部分。

首先,spyder4的强大功能必须首先利用其功能以改进它。

因此,我喜欢spyder。 不可否认,pycharm有更强的跳转和调试功能。 另外,字体和布局也太丰富了吧。 文末共享图中spyder的字体。 我找了好几年,关于这个字体也有点漂亮。

在本文中,我不想贬低哪个ide,但我将比较两个编辑器功能并分享使用它们的心得。

1 .随心所欲地执行代码块。 意思是,在spyder中,只要自由写入一行或多行代码,就可以直接输出结果。 您不必先在pycharm中写,然后右键单击空白以遍历整个py文件。 当然pycharm也有插件,支持这个功能。 目前,我也不太清楚。

比如这张照片。 用spyder编写的程序:

可以将鼠标放在当前行的import nump as np上,然后直接在F9上执行。 或者引导包或赋值,跳到下一行,一直F9,一直可以执行。

当然,也可以用鼠标选择所有这些行,然后单击F9进行处理。 重点是不论是变量,还是函数,还是类。都可以选定并一键执行。 如下图所示。

定义的所有变量和函数等都显示在右上角,变量名称,类型,size和值常用的是中间的黑白橡皮擦,点击变量全部消失,非常好用…当然,清除变量的工作这里需要注意一点。

2 .如在强大的变量可视化能力上的图中所见,numpy数组d,可以直接查看变量的样子我也不需要打印。 没有必要想象。 我只是想定义一下,躺在那里,静静地看着。 这对于在pandas和numpy中查看结构化数据非常有用,如果变量长度较大,也可以左右上下拖动。 吐槽一句,还有pycharm。 定义的变量包含view按钮。 一接通,嗯。

3 .强大的代码打印能力双击此处预定义的变量c,直接将其设为F9时。

双击此处尚未定义的“{1: b}”,直接将其设为F9时。

直接给我定义,直接给我打印结果,不用打印。 然后,“{1: b}”出现在代码的中间呢。 下图:

也就是说,无论眼前有多少代码,无论结构多么复杂,都可以自由选择任意长度的内容并直接执行

当然,这和第一瓶其实是一样的。 但是,重要的事情要说三遍。

这个功能在调试时也可以使用呢。

这个功能在调试时也可以使用呢。

这个功能在调试时也可以使用呢。

因此,接下来还将重点介绍spyder4.x的调试功能。

第二部分,使用spyder4.x调试功能博客spyder3调试python程序的简单教程介绍了spyder3的调试功能。

4.x的使用方式与其流程相同,但有些快捷键已经更改,我们将根据自己的示例再次介绍调试功能。

1 .添加断点

将鼠标放在红点处,然后单击。 或者将光标放在当前行的任意位置,即可生成F12。

2 .开始调试和停止菜单栏蓝色最左侧按钮,单击后开始调试并跑到第一个断点。

单击右侧的蓝色大方框可停止调试。

编辑器的右下角将显示ipdb,表示程序准备开始调试并在右下角打印内容

3 .逐行调试并直接单击第二个按钮时,程序会移动到当前断点的下一行,并执行当前行。 一直点击就可以一行一行往下跑。

4 .在函数体、进入类进行调试的下图中,首先在执行函数或实例化类的此行中添加断点,然后开始调试。

然后单击第三个按钮,即step into,

程序直接去函数体内。 此时,可以使用第二个按钮逐行执行,并调试到下一行。

重点来了,当我运行完c的这一行,在编辑器右上角就出了变量c。

不仅如此,双击变量c,F9!右下角也打印出了c!所以可以想象,即使程序一直调试的过程中,我也可以随意双击任何变量直接打印来看!

5 .进一步调试函数体、类,返回。 例如,当程序进入函数主体后,单击调试的第四个按钮,直接完成整个函数的调试并跳转到return。

再次单击第四个按钮,从函数中弹出,并返回函数调用时的位置。 当然也可以点击第一

二个按钮下一行,也是同样的效果。

6.断点跳转

第五个按钮,蓝色的双箭头,表示在多个断点之间进行跳转。

比如下图加了多个断点,每次点击断点跳转,则根据程序的运行顺序,从第一个断点开始,依次跳转到下一个断点。

最后。也吐槽一下spyder调试功能的劣势,相比于pycharm,spyder在使用调试过程中,右上角显示的变量只限于当前函数内的变量。当然,如果是复杂的多层实例化的类,右上角中也可以一层一层打开类的变量和方法来看。但pycharm更方便,可以直接一层层箭头打开实例化类的变量和方法展开来看,所以是比spyder4更加友好的。

欢迎更多的朋友留言提出有关spyder4.0的更好的建议。比如,我现在也不清楚有没有一键清除所有断点的快捷键。

代码图中字体的名称:Andale Mono;本文代码运行在ubuntu16.04下的spyder中。

最后,也推广一波自己的公众号:“NLP小讲堂”。公众号会持续更新NLP相关的前沿内容,喜欢的朋友可以关注一下。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。