Github 使用python对copilot做些简单使用测试


Posted in Python onApril 14, 2022

前言

之前提交的github copilot技术预览版申请,今天收到准入邮件,于是安上试一试这个准备把我送去电子厂上班的copy a lot ?

官网及申请地址:https://copilot.github.com/

小作文包含如下内容:

  • copilot简单介绍
  • 使用python对copilot做些简单使用测试
  • 使用copilot对LeetCode 题目解答

一、copilot简单介绍

Github 使用python对copilot做些简单使用测试

github copilot(副驾驶)目前只适用于vscode的扩展插件,它依赖于github数十亿公开代码库的训练而成的AI编码辅助器(包括整行代码提供或函数建议),目前支持数十种编程语言,技术预览版对 Python、JavaScript、TypeScript、Ruby 和 Go 的表现尤其出色。

他的工作原理:通过大量公共代码库对AI模型训练后构建成copilot服务,服务接收来自copilot插件返回的提要编码,并提供代码建议,插件又将来自程序员对建议的采纳性的回传到copilot服务,如此反复强化AI模型。

下图以蔽之:

Github 使用python对copilot做些简单使用测试

二、使用python对copilot做些简单使用测试

在vscode插件中我们安上Github Copilot,建一个测试文件Copilot_test.py

Github 使用python对copilot做些简单使用测试

1.获取列表的最大和最小值的函数

我们要写的可能看起来是这样的

'''
Function to get the max and min values of a list
'''
def get_max_min(my_list):
    max_value = max(my_list)
    min_value = min(my_list)
    return max_value, min_value

def main():
    my_list = [1,2,3,4,5]
    max_value, min_value = get_max_min(my_list)
    print("Max value:", max_value)
    print("Min value:", min_value)
    
if __name__ == "__main__":
    main()

注释是copilot的关键部分,所有AI的是基于大数据的应用,甚至可以把copilot简单的认为是对github代码库的检索…

Github 使用python对copilot做些简单使用测试

2.一个计算器

Github 使用python对copilot做些简单使用测试

copilot给出的建议允许我们进行选择,通过Alt+[,Alt+]对建议上下查看。

Github 使用python对copilot做些简单使用测试

我们可以使用Ctrl+Eeter打开建议结果面板,可以看到对应这些建议,copilot给了我们是10个解决方案

Github 使用python对copilot做些简单使用测试

三、使用copilot对LeetCode 题目解答

我们在LeetCode找一题【回文数】,题目如下:

Github 使用python对copilot做些简单使用测试

然后我们把题目写到代码注释中

Github 使用python对copilot做些简单使用测试

代码区的类也加过来

Github 使用python对copilot做些简单使用测试

看起来我们的代码就是这样的,灰色code的copilot给出的建议

Github 使用python对copilot做些简单使用测试

我们选择其中一种建议放到LeetCode的执行看看

Github 使用python对copilot做些简单使用测试

Github 使用python对copilot做些简单使用测试

这个建议似乎不太理想…勇敢牛牛不怕困难,有兴趣的同学可以看看困难模式的题目哦,PS:对于中文的注释不确定copilot能百分之百给出回应。

copilot就像它的名字一样【副驾驶】,正经事还是得你来干,不过未来可能会一个不错的协助工具。

总结

到此这篇关于Github Copilot结合python使用的文章就介绍到这了!

Python 相关文章推荐
Python实现控制台进度条功能
Jan 04 Python
python二分查找算法的递归实现方法
May 12 Python
Django实现自定义404,500页面教程
Mar 26 Python
Python的IDEL增加清屏功能实例
Jun 19 Python
django Serializer序列化使用方法详解
Oct 16 Python
pip指定python位置安装软件包的方法
Jul 12 Python
python虚拟环境的安装和配置(virtualenv,virtualenvwrapper)
Aug 09 Python
Django使用Celery加redis执行异步任务的实例内容
Feb 20 Python
Python telnet登陆功能实现代码
Apr 16 Python
Python读取JSON数据操作实例解析
May 18 Python
python实现企业微信定时发送文本消息的示例代码
Nov 24 Python
Python中的流程控制详解
Feb 18 Python
使用Python拟合函数曲线
Apr 14 #Python
Python中生成随机数据安全性、多功能性、用途和速度方面进行比较
python中 .npy文件的读写操作实例
Apr 14 #Python
Python Matplotlib绘制等高线图与渐变色扇形图
python读取并查看npz/npy文件数据以及数据显示方法
Apr 14 #Python
在NumPy中深拷贝和浅拷贝相关操作的定义和背后的原理
Python捕获、播放和保存摄像头视频并提高视频清晰度和对比度
Apr 14 #Python
You might like
php学习 函数 课件
2008/06/15 PHP
php新浪微博登录接口用法实例
2014/12/23 PHP
Laravel使用Caching缓存数据减轻数据库查询压力的方法
2016/03/15 PHP
PHP函数shuffle()取数组若干个随机元素的方法分析
2016/04/02 PHP
手把手编写PHP框架 深入了解MVC运行流程
2016/09/19 PHP
PHP封装cURL工具类与应用示例
2019/07/01 PHP
JS的递增/递减运算符和带操作的赋值运算符的等价式
2007/12/08 Javascript
Jquery倒计时源码分享
2014/05/16 Javascript
node.js中的fs.chmodSync方法使用说明
2014/12/18 Javascript
js实现透明度渐变效果的方法
2015/04/10 Javascript
js插件YprogressBar实现漂亮的进度条效果
2015/04/20 Javascript
jQuery插件实现适用于移动端的地址选择器
2016/02/18 Javascript
JavaScript对象封装的简单实现方法(3种方法)
2017/01/03 Javascript
jQuery实现checkbox即点即改批量删除及中间遇到的坑
2017/11/11 jQuery
详解webpack之scss和postcss-loader的配置
2018/01/09 Javascript
vue 实现左右拖拽元素并且不超过他的父元素的宽度
2018/11/30 Javascript
小程序最新获取用户昵称和头像的方法总结
2019/09/23 Javascript
js计时事件实现圆形时钟
2020/03/25 Javascript
Vue项目中使用jsonp抓取跨域数据的方法
2019/11/10 Javascript
Vue CLI4 Vue.config.js标准配置(最全注释)
2020/06/05 Javascript
JavaScript实现简单日历效果
2020/09/11 Javascript
javascript中call,apply,bind的区别详解
2020/12/11 Javascript
关于你不想知道的所有Python3 unicode特性
2014/11/28 Python
pandas apply 函数 实现多进程的示例讲解
2018/04/20 Python
python 读取txt中每行数据,并且保存到excel中的实例
2018/04/29 Python
python清除字符串中间空格的实例讲解
2018/05/11 Python
python实现简单的文字识别
2018/11/27 Python
选择python进行数据分析的理由和优势
2019/06/25 Python
python多继承(钻石继承)问题和解决方法简单示例
2019/10/21 Python
使用遗传算法求二元函数的最小值
2020/02/11 Python
Html5调用手机摄像头并实现人脸识别的实现
2018/12/21 HTML / CSS
阿迪达斯加拿大官网:Adidas加拿大
2016/08/25 全球购物
Falconeri美国官网:由羊绒和羊毛制成的针织服装
2018/04/08 全球购物
工伤事故赔偿协议书
2014/04/15 职场文书
合同和协议有什么区别?
2014/10/08 职场文书
使用Cargo工具高效创建Rust项目
2022/08/14 Javascript