在VScode上使用Copilot辅助python编程

正如标题所言,笔者最近已经抛弃spyder,开始完全投入vscode的怀抱了。其中最主要的原因还是Copilot插件。不得不说, github开发的辅助编程插件Copilot的确是香。虽然号称是智能编程,但距离真正的AI辅助编程还有挺长的距离要走。不过,在使用一段时间之后,我越来越觉得AI编程越来越近了。既然VScode这么香,那么肯定要分享给大家啦(低调水一篇,不让大家知道)。下面,我就介绍如何在VScode上搭建一个类似spyder的编程环境,以及如何在这个编程环境下使用Copilot辅助python编程。
一 具体操作
spyder软件的优点主要分为三点:单步或代码块运行python脚本,变量实时检索与查看,结果可实时在交互窗口中显示。而对于VScode而言,通过下面的配置,基本可以实现spyder软件的所有优点,除了变量的实时检索外。不过,相比较于spyder而言,VScode优点包括可以运行copilot、针对非python语言的脚本撰写也有较强的优势(这部分目前只是初体验,等下一阶段优化软件时再写一篇推文进行详细介绍)。1. 必要插件安装在Visual Studio Code(vscode)实现python代码的单步运行需要首先在扩展选项安装macros插件,如图1所示。

2. 单步运行命令设置在Visual Studio Code(vscode)界面输入ctrl+shift+p,在命令窗口选择‘选择首选项:打开设置(json)’

打开文件settings.json,输入以下内容。其中将pythonExecSelectionAndCursorDown命令与jupyter.execSelectionInteractive(打开jupyter交互窗口)和cursorDown(将光标切换到下一行)。
如下图所示

3 将单步运行命令与快捷键建立连接
在vscode界面输入ctrl+shift+p,在命令窗口选择‘选择首选项:打开键盘快捷设置(json)’,接着在文件keybindings.json,输入一下内容。其中macros.pythonExecSelectionAndCursorDown命令与alt+q快捷键建立联系。
如下图所示

最后,重启vscode即可实现python脚本的单步运行。如下图,你将光标移动到第10行后,点击alt+Q,即可弹出右边的Interactive窗口,并实现单步运行。如果你需要以代码块的方式的运行,那么你需要在所运行的代码块前后端加上‘# %%’,随后,点击Run Cell即可实现。

4 Copilot安装
首先,在vscode的插件市场(如图1)搜索Github Copilot进行安装。然后vscode会在右下角提示你如何授权使用Github Copilot,此时,你需要做的就是点击其中的Sign in to Github进行登录,当然,如果你不是学生党,那么你每个月需要66.9元人民币(四杯奶茶的钱)。

随后,在浏览器中,GitHub将请求GitHub Copilot的必要权限。若要批准这些权限,请单击“授权Visual Studio代码”,即可实现VScode上的Copilot辅助。
5 Copilot使用
具体的使用方法可以见我之前的推文《编程自动化之Copilot》,这里展示一下Copilot在日常代码撰写中的作用。

如图,Copilot会在你的日常代码撰写中给予提示,你可以通过上一个、下一个、接受或者打开Github Copilot四个选项中进行选择。如果觉得提示不对的话,可以不用管这些智能提示。PS:除了代码提示外,名言名句提示也是可以的(手动狗头),嗯~,下次得出个难点的语句考考它。

当然,需要注意的是,Copilot在使用过程中需要联网。那么这也意味着你的代码有可能会被github搜集。因此,对于那些撰写安全优先级非常高的工程师而言,这一插件可能会带来风险。Github官方也并没有给出这一插件的具体权限,因而这人群建议谨慎使用。但是,对于那些撰写开源代码的人士或者代码安全优先级不是特别高的生信工程师而言,相信这一插件会进一步解放你的双手,让你的代码撰写工作更加如鱼得水。
二 惯例小结
在使用了Copilot一段时间之后,我发现这一功能更类似于一种智能补全,但远胜于一般的智能补全(都能补成语了,又高阶了一点),只是,这些功能距离真正的代码自由还有挺长远的距离的。不过,即使是目前这种级别的智能补全,也已经开始解放我的代码撰写工作,这也让我更期待alphacode商业化之后的表现了。
Multi-omics Hammer软件下载地址:
https://github.com/wangjun258/Multi-omics-Hammer
Multi-omics Visual软件下载地址:https://github.com/wangjun258/Multi_omics_Visual/releases/tag/Multi_omics_Visual_v1.03
PS:因为本软件是用python脚本撰写,调用了部分依赖包,用户首次使用需要安装python以及对应的包,安装之后便可永久使用。
本公众号开发的相关软件,Multi-omics Hammer软件和Multi-omics Visual软件欢迎大家使用。文末是本公众号在其他平台的账户,也欢迎大家关注并多提意见。
简书:WJ的生信小院
公众号:生信小院
博客园:生信小院
最后,也欢迎各位大佬能够在本平台上:1传播和讲解自己发表的论文;2:发表对某一科研领域的看法;3:想要达成的合作或者相应的招聘信息;4:展示自己以寻找博后工作或者博士就读的机会;5:博导提供博后工作或者博士攻读机会,都可以后台给笔者留言。希望本平台在进行生信知识分享的同时,能够成为生信分析者的交流平台,能够实现相应的利益互补和双赢(不一定能实现,但是梦想总得是有的吧)。
另外,怎么说呢,投币也可,不强求,但奢求。


