python编辑器_推荐一款Python编辑器,集Pycharm和Sublime优点于一身的王者

编程里面的编辑器就像是武林大会里面的高手,每一年都有新秀,黑马出现!比如有练习霸道的天罡之气的榜首Pycharm,力量雄厚霸道战斗力极强,但是对斗气消耗很大,占内存大而且启动速度有点慢!还有练习灵巧的剑法的Sublime小妹,身形婀娜多姿,长的漂亮,修炼风属性,启动速度极快,但是力量不足!

今年的武林大会出现了一匹黑马,就是集力量和速度于一体的高手,而且身材匀称,脸型俊俏,肌肉线条感非常强!这款编辑器就是vscode, 刚好自己办公电脑上的sublime闹脾气,就试着用它来写了一下python,没想到效果非常之棒,在此分享给大家。

01.

vscode介绍

Visual Studio Code(简称vscode),是微软于2015年发布的一个跨平台源代码编辑器。虽然和Visual Studio同是出自微软之手,但二者完全是不同的两款产品,大家不要因为名字相近而混淆。

vscode的安装没有什么需要特别注意的地方,直接到官网(https://code.visualstudio.com/)下载自己系统对应的版本,傻瓜式安装就可以了。现在最新版的安装程度只有50M+,安装和启动速度都很快,相比pycharm这种重型武器实在是爽太多了。下图就是启动vscode后的界面,看起来是不是非常的清亮整洁。

37aba13b8de1caeb4786e343757c5231.png

主界面中的左侧侧边栏有几个比较重要的栏目,分别是文件管理、搜索、调试和插件管理。

1)文件管理。在这里可以对项目文件进行管理,其模式和pycharm、sublime等其他编辑器基本相同。

2)搜索。侧边栏的搜索和ctrl+F略有不同,主要表现在它是对当前工作区(项目目录)内的所有文件进行搜索。举个例子(下图),我在这里搜索time关键字,它会把所有文件中的time关键字搜索出来,而不仅仅是当前的1.py文件。

72f5c18987b43055c9e915287aa7ab91.png

3)调试。大家都知道sublime有一大软肋就是缺少调试功能,但是同为轻量级编辑器的vscode却配备了这一功能,而且用户体验还不错。关于vscode的调试在下文中会有详细介绍,这里暂且略过。

4)插件管理。vscode的插件管理模式与pycharm有些相似,总之就是非常方便,另外vscode也支持插件离线安装,具体方法网上很多,这里提供一个下载离线插件包的网站:https://marketplace.visualstudio.com/VSCode。

c8d4f395453378d66b7a7e3fda3a07e5.png

值得一提的是,vscode的插件的确十分丰富,例如jupyter模拟、代码规范化、Git管理等功能都可以通过安装插件来实现。个人认为vscode的调试功能和插件管理都要远胜于sublime,虽然sublime也有很好的插件支持但是没有vscode丰富和完善,至于调试功能就更不用说了。

02.

搭建python开发环境

在这一部分我们重点讲一下如何基于vscode构建python开发环境。上面我们也讲到过,vscode只是一个代码编辑器而非集成开发环境,因此其本身是不具备编译功能的,那该如何管理它和本地的开发环境呢,没错还是要靠插件

打开我们上面讲的插件管理侧边栏,在应用商店中搜索python返回的第一个结果就是我们需要的插件,下图是我安装完之后显示的画面。从插件的介绍来看,目前支持的python版本有2.7以及3.5以上的所有版本,也就是说当下比较流行的python版本它都支持。

8e58413982ceb82ecf1545a38b19a88c.png

Quick start中写的就是基于vscode搭建python环境的基本步骤,其中step1和step2分别是安装python开发环境和vscode的python插件,这两步应该都没有什么问题,我们重点讲一下step3,也就是如何配置。

vscode中的解释器配置默认是以项目为单元进行区分的,也就是说针对不同的项目可以配置不同的解释器。为了便于理解我导入几个以前的项目进行演示,导入完毕后随便打开一个py文件,然后按F1或者ctrl+shift+P打开命令控制栏(下图),在这里输入关键字select就能很容易找到python:选择解释器选项,选择这一选项后会列出我们已经导入到工作区中的所有项目名称。

a0f15f175335e1273c80d9e03c573262.png

配置完毕后会在vscode的左下角显示当前的解释器版本等信息。

42f424055113c569a9f6c2df7f97071a.png

现在基于vscode的python环境就算搭建完成了,接下来我们就看看如何使用vscode来执行python文件。

03.

运行和调试python程序

1).运行

vscode中运行代码的方法有很多,我们今天只讲最基本的两种,第一种方法是下图所显示的调试工具栏中的“在不调试的情况下启动”(快捷键ctrl+F5)。

41d74e3dbcfe91667e7e185fbc2e66d0.png

执行后会在界面下方弹出终端信息,由于我们运行的是一个打印100到1000之间水仙花数的程序,因此运行结果会在终端中输出,同时还会输出一些其他的提示信息。

这种方法有一个缺点就是当一个print语句打印内容太多的时候(例如打印一个dataframe表格)输出信息里会显示不全,这时可以考虑使用第二种方法,单击鼠标右键并选择“在终端中运行python文件”,运行后同样会自动调出终端界面并输出相关提示信息,但在使用print打印的时候却能显示完整的输出结果。

5229af052e0f194afcf1cafaa1201428.png

2).调试

说完运行再简单聊一聊调试,可能由于我长期使用sublime的原因,对于vscode的调试功能实在是非常喜爱。断点的设置这些基本概念就不提了,直接按F5进入调试界面,下面这幅图就是程序执行了54次循环后的结果。

72a9df8381cbb2838d71981c69d2a24f.png

首先来看侧边栏,就是在文章第一部分提到的调试功能界面,其中变量栏包含了vscode自动识别的程序变量

在监控栏可以自定义变量栏中没有的表达式,例如我们想实时监控i+j+k的值,就可以将表达式添加到这里;

再来看代码部分,这里显示的是程序的运行位置以及一些功能键(继续、跳过、单步执行等);最后在控制台部分则会实时打印最新的运行结果。

另外,在开始调试之前可以为当前项目添加一个配置项(launch.json),这样就不必在每次调试之前都进行调试配置了,下图给出了添加调试配置项的一种方法。

9485e20877dc7005742478a29dabbfbb.png

毕竟是微软的产品,vscode的调试功能用起来还是蛮顺手的。


作为一款轻量级编辑器,vscode使用起来要比pycharm顺滑的多,而相比sublime它的功能又更加完善,而且如果你的项目包含多种语言(例如web开发),所有代码都可以在vscode中完成,不必再开多个工具。

近期热门:

太好玩了,我用Python写了个火影忍者版的连连看

建议看一下,零基础学Python都想问的6个问题,老司机给你两千字解答

倒计时2天!千人Python知识星球重大福利,一年仅一次,还剩2天!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/486695.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

因果解释能够对规则进行解释吗?

来源:《哲学动态》2017年第10期作者:初维峰(西安交通大学人文社会科学学院)本文受中国博士后科学基金面上资助项目“当代西方因果解释理论研究”(2017M613160)资助。在现实生活中,我们不仅要对某一事件进行解释&#x…

okhttp post json 数据_使用python抓取App数据

App中的数据可以用网络爬虫抓取么答案是完全肯定的:凡是可以看到的APP数据都可以抓取。下面我就介绍下自己的学习经验和一些方法吧 本篇适合有过web爬虫基础的程序猿看没有的的话学的可能会吃力一些App接口爬取数据过程使用抓包工具手机使用代理,app所有…

JS的typeof力所能及已经力所不及

typeof返回值列表 typeof的作用 返回参数的类型 typeof能判断的类型 String类型: typeof a stringUndefined类型: typeof undefined undefinedBoolean类型: typeof true booleanNumber类型: typeof 22 numberSymbol类型: typeof Symbol() symbolFunction类型:typeof funct…

忆阻器类脑芯片与人工智能

来源:文章转载自期刊《微纳电子与智能制造》作者:陈子龙,程传同,董毅博,张 欢,张恒杰,毛旭瑞,黄北举,谢谢。摘 要现阶段计算与存储分离的“冯诺依曼”体系在功耗和速率方…

linux系统下替换图片,Linux(ubuntu系统)下使用FreeImage库

Linux(ubuntu系统)下使用FreeImage库Linux(ubuntu系统)下使用FreeImage库最近在搞一个图像处理的项目,需要用到FreeImage,之前在Windows下用过,很简单,因为FreeImage官网提供了可供使用的静态库动态库,直接包含就行了。…

UWP Composition API - PullToRefresh

UWP Composition API - PullToRefresh 原文:UWP Composition API - PullToRefresh背景: 之前用ScrollViewer 来做过 PullToRefresh的控件,在项目一些特殊的条件下总有一些问题,比如ScrollViewer不会及时到达指定位置。于是便有了使用Composit…

从城市治理到城市“智”理,AI 不仅是城市管理的“眼睛”

来源:帮尼资讯部分参考来源:中国安防行业网,图片来源网络近年来,随着计算机视觉技术的长足进步,AI在城市管理领域广泛部署。其中,AI视频分析识别技术成为城市场景中规模最大、数量最多、落地最广泛的应用。…

python3 应用 nose_parameterized 实现unittest 参数化

一、读取变量的值,实现unittest 参数化 import nose_parameterized,unittestdef calc(a:int,b:int):return ab case_data [[10,20,30],[12,21,33],[15,21,36] ] class MyClass(unittest.TestCase):nose_parameterized.parameterized.expand(case_data)def test_comp…

vue data数据修改_VUE的数据响应式

什么是数据响应式?const vm newVUE({data:{n:0}})上面的代码中,如果修改vm.n,那么UI中的n就会通过变化来响应我,这就是数据响应式。VUE对data做了什么?当给一个vue实例传入data的时候,vue内部会对传入的dat…

hutool的定时任务不支持依赖注入怎么办_设计一个任务调度算法,时间轮算法,比优先队列更高效...

当年我还是个学生的时候,有一次去参加欢聚时代的一个面试,有一道面试题记忆尤新,让你来实现一个定时任务,你会怎么做?为了简化问题,我们只用考虑内存方案,不用考虑数据持久化。数组法最简单的&a…

蜂鸟开发板 linux,蜂鸟E203系列——Linux下运行hello world例程

创建程序在 ~/hbird-e-sdk-master/software 路径下创建一个“helloworld”中文件夹在 ~/hbird-e-sdk-master/software/helloworld 路径下创建文件“helloworld.c”内容如下:#includeint main(void){printf("hello world!");printf(…

全景解密量子信息技术:高层集中学习,国家战略,三大领域一文看懂

来源:智东西 内参来源:中国信通院 IPRdaily中文网10月16日下午,高层就量子科技研究相关前景举行了一次会议,强调当今世界正经历百年未有之大变局,科技创新是其中一个关键变量。要充分认识推动量子科技发展的重要性&am…

mac怎么查看gitlab的注册邮箱_163电子邮箱怎么注册申请?手机号注册电子邮箱的小技巧...

电子邮箱帮助我们实现了无纸化,无需手写信件,通过电脑、手机输入,即可与收件人在网络上进行联系。电子邮箱的兴起,对于人与人之间的沟通和交流,增加了便捷性,促进了社会的发展与进步。目前的邮箱中&#xf…

c语言 switch案例,c语言switch case语句使用例子

c语言switch case语句使用例子发布时间:2020-04-23 11:48:53来源:亿速云阅读:421作者:小新这篇文章主要为大家详细介绍了c语言switch case语句使用例子,文中示例代码介绍的非常详细,具有一定的参考价值&…

深度学习未来的三种方式

来源:海豚数据科学实验室深度学习的未来在于这三种学习模式,而且它们彼此之间密切相关:混合学习——现代深度学习方法如何跨越监督学习和非监督学习之间的边界,以适应大量未使用的无标签数据?复合学习——如何以创造性…

android ocr识别源码_身份证识别OCR解决手动输入繁琐问题

随着互联网金融的的发展,越来越多的互联网金融公司都推出了自己的金融APP,这些APP都涉及到个人身份证信息的输入认证,如果手动去输入身份证号码和姓名,速度非常慢,且用户体验非常差。为了提高在手机移动终端上输入身份…

什么是内卷?华为内部这篇文章读懂

来源:互联网坊间八卦(ID:kekesil)内卷的意思是明明已经靠近边界有个天花板,但却又不断自我激发,繁复化、精致化。概念的含糊其辞是无效讨论和跌入焦虑自我再生产困境的原因之一。判断内卷还是良性竞争的前置问题是回答…

锁屏界面显示某些设置已隐藏_iOS 14 隐藏功能,只要轻点手机背面就能截屏

关于 iOS 14 系统的一些功能我也为大家介绍了一些,iOS 14 已发布,界面大更新!其实除了之外,iOS 14 系统还有许多隐藏的功能。那么今天我就为大家介绍 iOS 14 系统的隐藏功能之一:轻点背面。话不多说,我们先…

分享丨强化学习是针对优化数据的监督学习?

来源:AI科技大本营作者 | Ben Eysenbach、Aviral Kumar、Abhishek Gupta 编译 | 凯隐出品 | AI科技大本营(ID:rgznai100)强化学习(RL)可以从两个不同的视角来看待:优化和动态规划。其中,诸如REI…

stm32l0的停止模式怎么唤醒_手把手教你怎么利用旧电脑搭建NAS组建自己的黑群晖...

手把手教你怎么利用旧电脑搭建NAS组建自己的黑群晖Synology群晖科技(Synology )创立于 2000 年,自始便专注于打造高效能、可靠、功能丰富且绿色环保的 NAS 服务器,是全球少数几家以单纯的提供网络存储解决方案获得世界认同的华人企…