轻量级的Python IDE —— Thonny

2023-09-15 22:27:32

现在的开发工具太多了,而且每个开发工具都致力于做成最好用最智能的工具,所以功能越堆越多,越怼越智能。安装这些开发工具比较烧脑,经常需要经过许多配置步骤。作为一个 Python 开发者来说,好多人光是这些配置都要弄半天。配置好之后,打开软件,发现满屏都是菜单、按钮,无从下手,学习这些功能使用又是一大难题。
推荐一款超级轻量级的 IDE —— Thonny。
在这里插入图片描述
这是一款对初学者特别友好的开发 IDE,它是由爱沙尼亚的 Tartu 大学开发,十分易于上手,还支持插件。

安装

Thonny 的官网是 https://thonny.org/ ,直接进去就能看到下载选项,支持三大操作系统(Windows、Mac、Linux)。
下载下来之后,按照正常的安装软件流程安装就行了。在安装过程中,还可以选择支持的语言:
在这里插入图片描述
这点是非常友好的,可以选择“简体中文”,就凭这一点已经比大多数开发工具强了。其他开发工具大多要自己去网上找汉化版才能显示中文界面。
安装完成之后,启动软件,界面是这样的:
在这里插入图片描述
可以看到,界面非常简洁,初始用户界面上没有任何可能分散初学者注意力的功能,看起来只需要在中央空白区敲代码就行。

使用

简单上手

直接在程序编辑区输入代码,然后在功能区选择“运行”或者“调试”按钮就行。
在这里插入图片描述
运行之后,会在底部显示 Shell 对话框,里面显示的就是程序运行的结果:
在这里插入图片描述

变量界面

在视图菜单中有好多显示选项,点击“变量”选项,就勾选了“变量”选项,界面右边会出现“变量”选项的视图区域。当运行程序的时候,特别是用 debug 模式运行的时候,在每一步过程中,都可以在变量界面上看到变量值的变化:
在这里插入图片描述
对于初学者来说,这功能可以一步步去查看程序运行的过程中变量是如何变化的。

调试

Thonny 的调试也非常简单,不需要设置断点,只需要用 debug 模式运行,工具会自动地一步步运行程序,步骤是按照程序结构走的,而不仅仅是代码行。而且如果有嵌套函数的话,工具会自动地弹出一个小窗口来显示函数的执行,这对于初学者简直是福音。他们可以很好地理解函数调用的工作原理,对于理解递归尤其重要。
在这里插入图片描述
错误提示
如果运行的代码有语法错误,这个 IDE 不仅仅会提示错误的行,还会有一个窗口给出提示和建议:
在这里插入图片描述
这段代码提示的是第4行有语法问题,但是如果看第4行,肯定会发现没问题。在提示区就会告诉我们可能是第2行少了一个反括号。这就很人性化了,对于初学者来说,他可能在第4行上纠结很久都不知道哪里的问题。这个提示给的是相当的到位。

插件

Thonny 也支持像其他一些 IDE 一样安装插件来扩展功能。在“工具”菜单下有一个“管理插件”的功能,点击打开管理界面,就可以在输入框中搜索插件来进行安装了。也可以选择已经安装的插件来进行“升级”或者“卸载”,都是非常简单易懂的操作。
在这里插入图片描述

总结

Thonny 是由爱沙尼亚的 Tartu 大学开发的一款基于 Python 的开源 IDE,旨在帮助初学者快速入门 Python。软件界面很简单。

更多推荐

Dubbo学习(一)——dubbo学习背景

文章目录前言分布式基础理论什么是分布式系统发展演变ORMMVCRPCSOARPC(远程调用)什么是RPCRPC工作原理为什么RPC要用到DubboDubbo的优势高性能可扩展性高可靠性监控和管理使用示例总结前言分布式基础理论什么是分布式系统分布式系统是若干独立计算机的集合,这些计算机对于用户来说就像单个相关系统分布式系

【每日一题Day333】LC2603收集树中金币 | 拓扑排序

收集树中金币【LC2603】给你一个n个节点的无向无根树,节点编号从0到n-1。给你整数n和一个长度为n-1的二维整数数组edges,其中edges[i]=[ai,bi]表示树中节点ai和bi之间有一条边。再给你一个长度为n的数组coins,其中coins[i]可能为0也可能为1,1表示节点i处有一个金币。一开始,你需

5.11.Webrtc接口的设计原理

在上节课中呢,我向你介绍了webrtc的接口宏,那有很多同学会产生疑问啊,那觉得webrtc为什么要把接口设计的这么复杂?还非要通过宏来实现一个代理类,再通过代理类来调用到webrtc内部。那为什么要这么设计呢?实际上它的这样一种设计啊,它是有一定理论的,那下面呢,我们就来详细看一下webrtc为什么要这么做?那这张图

Redis——Java客户端配置

概要由于Redis服务器在官网公开了RESP协议,因此第三方可以通过这个协议来实现和Redis服务器通信的客户端程序,而具体的通信逻辑也不需要我们去实现,只需要导入大佬的库即可jedis就是封装了RESP协议,提供了一组api供我们使用导入依赖创建一个maven项目,然后导入下面这个jedis依赖<!--https:/

1.测试 —— 答疑篇

什么是软件测试:软件测试是不是就是找bug?软件测试就是证明软件不存在错误的过程软件测试就是为了证明程序能够正确运行刚新买来一部手机,我们要干什么?一场考试,做完一遍题目之后,进行一遍检查,就是在"测试"买一台电视,安装好之后打开试试看能不能正常使用,也是在"测试"概念:验证软件功能是否满足用户的需求。1979年,Gl

【JavaEE】多线程(一)

多线程(一)文章目录多线程(一)进程操作系统进程PCB属性进程的状态进程的优先级进程的上下文CPU寄存器进程的记账信息虚拟地址空间线程线程与进程的区别Java进行多线程编程在了解多线程之前,我们先聊聊进程进程而了解进程前,我们还需聊聊操作系统~操作系统简单来理解就是搞管理的软件。对下:管理好各种硬件设备对上:要给应用程

什么是HTML5中的Web存储API,包括LocalStorage和SessionStorage?它们的区别是什么?

聚沙成塔·每天进步一点点⭐专栏简介⭐Web存储API和区别⭐LocalStorage(本地存储)⭐SessionStorage(会话存储)⭐区别⭐写在最后⭐专栏简介前端入门之旅:探索Web开发的奇妙世界欢迎来到前端入门之旅!感兴趣的可以订阅本专栏哦!这个专栏是为那些对Web开发感兴趣、刚刚踏入前端领域的朋友们量身打造的

机器学习——贝叶斯(三种分布)/鸢尾花分类分界图/文本分类应用

0、前言:机器学习中的贝叶斯的理论基础是数学当中的贝叶斯公式。这篇博客强调使用方法,至于理论未作深究。机器学习中三种类型的贝叶斯公式:高斯分布(多分类)、多项式分布(文本分类)、伯努利分布(二分类任务)贝叶斯算法优点:对小规模数据表现好,能处理多分类任务,常用于文本分类。缺点:只能用于分类问题。1、高斯分布的贝叶斯算法

长安汽车:基于云器Lakehouse一体化数据平台,建立智能互联时代的领先优势丨案例研究

长安汽车智能化研究院是中国长安汽车集团有限责任公司旗下专注于汽车智能化技术研究和创新的研发机构。其愿景是通过持续创新和技术突破,实现汽车智能驾驶、智能网联和智能交通的全面发展,提供更安全、更便捷、更智能的出行体验,并成为中国汽车智能化领域的领军企业。智能化是汽车工业发展近百年来对汽车功能的一次重新定义,它旨在利用大数据

利用python工具提取多个word中的图片和表格

1.前言由于工作因素,经常要对多个文档内容进行查重,文字类可以借助查重工具辅助,但图片和表格只能依靠鼠标滚轮还有笔者的打工眼。久而久之,眼睛废了,肩颈也吃不消了(-.-)。于是乎,就想用脚本批量导出,从而提高效率。笔者非软件专业,所以只能请ChatGPT当导师了,经过多次修改,总算达到了预期效果。大佬们如果有更好的办法

基于STM32设计的温室大棚种植监测系统(onenet+GPRS通信)

一、设计简述基于STM32设计的温室大棚种植监测系统(OneNet+GPRS通信)1.1设计需求随着社会经济的快速发展和人们对食品质量安全的日益关注,温室大棚越来越受到人们的青睐。温室大棚可以提供良好的生长环境,使得蔬菜、水果等植物获得更好的生长条件,从而提高产量和质量。然而,在温室大棚内,温度、湿度、二氧化碳含量、光

热文推荐