Github Copilot 结合python的使用
之前提交的github copilot技术预览版申请,今天收到准入邮件,于是安上试一试这个准备把我送去电子厂上班的copy a lot ?
官网及申请地址:https://copilot.github.com/
小作文包含如下内容:
copilot简单介绍
使用python对copilot做些简单使用测试
使用copilot对LeetCode 题目解答
一、copilot简单介绍

github copilot(副驾驶)目前只适用于vscode的扩展插件,它依赖于github数十亿公开代码库的训练而成的AI编码辅助器(包括整行代码提供或函数建议),目前支持数十种编程语言,技术预览版对 Python、JavaScript、TypeScript、Ruby 和 Go 的表现尤其出色。
他的工作原理:通过大量公共代码库对AI模型训练后构建成copilot服务,服务接收来自copilot插件返回的提要编码,并提供代码建议,插件又将来自程序员对建议的采纳性的回传到copilot服务,如此反复强化AI模型。
下图以蔽之:

二、使用python对copilot做些简单使用测试
在vscode插件中我们安上Github Copilot,建一个测试文件Copilot_test.py

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代码库的检索...

2.一个计算器

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

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

三、使用copilot对LeetCode 题目解答
我们在LeetCode找一题【回文数】,题目如下:

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

代码区的类也加过来

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

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


这个建议似乎不太理想...勇敢牛牛不怕困难,有兴趣的同学可以看看困难模式的题目哦,PS:对于中文的注释不确定copilot能百分之百给出回应。
copilot就像它的名字一样【副驾驶】,正经事还是得你来干,不过未来可能会一个不错的协助工具。
文章有不足的地方欢迎在评论区指出。
欢迎收藏、点赞、提问。关注顶级饮水机管理员,除了管烧热水,有时还做点别的。
Github Copilot 结合python的使用的更多相关文章
- error: failed to push some refs to 'https://github.com/username/python.git'
解决error: failed to push some refs to 'https://github.com/bluepen/python.git' 当我们在使用git工具上传我们自己的代码时,可 ...
- Github 大牛封装 Python 代码,实现自动发送邮件只需三行代码
*注意:全文代码可左右滑动观看 在运维开发中,使用 Python 发送邮件是一个非常常见的应用场景.今天一起来探讨一下,GitHub 的大牛门是如何使用 Python 封装发送邮件代码的. 一般发邮件 ...
- github 专案介绍 – Python 范例:透过互动式的 Jupyter 和数学解释流行的机器学习演算法
对于机器学习有兴趣,不少人应该会先从 Andrew Ng ( 吴恩达 ) 的机器学习课程开始,但是吴恩达的课程是使用 octave 这个工具当作练习.这个 github 项目包含使用 Python 实 ...
- Github上的python开源项目
Python开源项目,期待大家和我们一起共同维护 github排名榜单 https://github.com/trending github搜索榜单:https://github.com/search ...
- IDM(Internet Download Manager)—下载各类安装包(github代码、python包)、软件、视频、文档的神器,居家必备良药
自从有了IDM (Internet Download Manager),不知迅雷.github加速器.镜像为何物.鸟枪换炮,过上了,"他娘的意大利炮"的幸福生活[CoderBaby ...
- 让 AI 为你写代码 - 体验 Github Copilot
前几天在群里看到有大神分享 Copoilot AI 写代码,看了几个截图有点不敢相信自己的眼睛.今天赶紧自己也来体验一下 Copoilot AI 写代码到底有多神奇. 申请 现在 Copoilot 还 ...
- github上传Python被识别为css--解决
在项目根目录新建文件.gitattributes 添加如下: *.css linguist-language=python把.css结尾的文件识别为python语言
- 继GitHub的Copilot收费后,亚马逊推出了 CodeWhisperer,感觉不错哟!
Copilot 是 Github 推出的一款人工智能编程助手,推出仅一年就受到大量开发者的追捧(据官方统计有 120 万用户).然而,自 2022 年 6 月起,它改为了付费订阅模式(每月 10 美元 ...
- github/python/ show me the code 25题(一)
先上网址 https://github.com/Show-Me-the-Code/show-me-the-code 初学python拿来练手,记住一些常用的库和函数 第 0000 题:将你的 QQ 头 ...
随机推荐
- Selenium click不生效 报错selenium.common.exceptions.InvalidArgumentException
记录在使用selenium过程中踩的坑------ 在使用selenium时,用click点击网站弹出的文件上传框的"上传文件"按钮不生效,报错selenium.common.ex ...
- THINKPHP_(3)_TP6中实现多层关联,第一个表关联第二个表查询出的数据,再关联第三个表
问题: (1)canxunDanwei数据表对应的模型中有一个关联是: public function canxunDanwei() { return $this->belongsTo('\ap ...
- 使用Apache TVM将机器学习编译为WASM和WebGPU
使用Apache TVM将机器学习编译为WASM和WebGPU TLDR 在Apache TVM深度学习编译器中引入了对WASM和WebGPU的支持.实验表明,在将模型部署到Web时,TVM的WebG ...
- 通过 DLPack 构建跨框架深度学习编译器
通过 DLPack 构建跨框架深度学习编译器 深度学习框架,如Tensorflow, PyTorch, and ApacheMxNet,快速原型化和部署深度学习模型提供了强大的工具箱.不幸的是,易用性 ...
- TVM源码框架安装方法
TVM源码框架安装方法 本文提供如何在各种系统上从零构建和安装TVM包的说明.它包括两个步骤: 首先从C++代码中构建共享库(linux的libtvm.so,macOS的libtvm.dylib和wi ...
- Comparison of Laser SLAM and Visual SLAM
Comparison of Laser SLAM and Visual SLAM 目前,SLAM技术广泛应用于机器人.无人机.无人机.AR.VR等领域,依靠传感器可以实现机器的自主定位.测绘.路径规划 ...
- 源码级别理解 Redis 持久化机制
文章首发于公众号"蘑菇睡不着",欢迎来访~ 前言 大家都知道 Redis 是一个内存数据库,数据都存储在内存中,这也是 Redis 非常快的原因之一.虽然速度提上来了,但是如果数据 ...
- 不懂就问」CPU 到底是怎么识别代码的?
近读到这样一篇文章,从底层硬件角度出发剖析了一下CPU对代码的识别和读取,内容之精彩,读完感觉学到的很多东西瞬间联系起来了,分享给猿们. 首先要开始这个话题要先说一下半导体.啥叫半导体? 半导体其实就 ...
- Linux集群环境下NTP服务器时间同步
NTP介绍 NTP(Network Time Protocol,网络时间协议)是用来使网络中的各个计算机时间同步的一种协议.它的用途是把计算机的时钟同步到世界协调时UTC(Universal Time ...
- 2021Qt打包发布教程
因为最近写了一个程序,然后想着能给室友玩耍,就研究了一下如何打包,写这篇博客记录一下 1. 首先获得程序的Release版本 就是点击这个Release,然后构建一遍 2. 进入构建的release文 ...