编程语言初学者的好帮手,一款支持python,Java等7门语言的可视化编程工具

猿友 2020-07-24 17:49:04 浏览数 (3091)
反馈

对于初学编程的同学来说,有一个很大的难点,那就是无法理解每一段代码什么意思,能实现什么功能。能否理解执行每段代码的功能相当关键,这一点对于学习编程语言的同学来说,应该颇有感触。本文就给大家带来一款神器,可以让初学者轻松理解每一段代码实现的功能过程。

实现一个排序、回溯、递归算法,它执行的过程到底是什么样的?为什么有的测试用例总是过不去?

手动一步一步写出来显然是很繁琐的,要么就借助IDE,把每一步的执行结果以调试日志的形式输出到控制台,看一下每一步到底发生了什么。

曾经看过一则消息,VS Code正准备加入可视化调试过程这项功能,这让我颇为期待,但是目前还无法提供这项功能。

python Tutor

Python Tutor是一款在线的代码执行过程可视化工具。

def listSum(numbers):
    if not numbers:
        return 0
    else:
        (f,rest) = numbers
        return f * listSum(rest)


myList = (1,(2,(3, None)))
total = listSum(myList)

你可以把上面这段代码黏贴到 python Tutor 的编辑框点击Visualize Execution就可以动态的执行你的代码,并且实时展示每一步的执行过程。

Python Tutor

变化的效果如下图(实现过程图片过来,节选其中几张):

Python Tutor

Python Tutor

Python Tutor

Python Tutor

整个程序数变动的过程活生生呈现你眼前,够明了了吧。

python tutor 我多作为程序出现自已解释不了的错误,在网站上运行一次,执行过程对比,查找错误原因,又快又准。

然后,这款工具的名称为 Python Tutor,但是,它支持的语言却不止 Python 这一种。它目前支持如下编程语言:

  • Python
  • Java
  • C
  • C++
  • JavaScript
  • TypeScript
  • Ruby

其中,支持比较全面的就是 Python,对于 Python,它支持 Python 3.6Python 2.7Python with Anaconda

Python是一门对第三方包依赖很强的一种编程语言,因此,在开发过程中会经常用到 numpypandaspprint 等工具包。默认的 Python 3.6Python 2.7 只有一些标准库,没有第三方包。

所以,如果你执行的代码片段中用到了第三方工具包,可以选择 Python with Anaconda ,这是因为 Anaconda 默认会安装常用的工具包。

但是,使用 Python with Anaconda 的速度会慢一些。

在我个人看来,这个工具比较适合编程初学者,例如面临校招的同学,这个工具对于熟悉编程帮助很大,可以加快你的学习效率,提升对编程语言的理解。

最后推荐一下上述7门编程语言的教程,感兴趣的同学可以看一下:

0 人点赞