Github Copilot结合python的使用方法详解
作者:顶级饮水机管理员 发布时间:2023-07-24 20:53:11
前言
之前提交的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就像它的名字一样【副驾驶】,正经事还是得你来干,不过未来可能会一个不错的协助工具。
来源:https://blog.csdn.net/loveyouandc/article/details/118907001
猜你喜欢
- 最近的对图像数据进行处理的时候需要将图像中的某个颜色替换为另一个颜色,但是网络上找到的方法都是通过对图像的遍历进行替换,实在是太费时了!刚开
- 快速排序的基本思想:首先选定一个数组中的一个初始值,将数组中比该值小的放在左边,比该值大的放在右边,然后分别对左边的数组进行如上的操作,对右
- 1. 使用.logfile 方法#!/usr/bin/env pythonimport pexpectimport syshost=&quo
- 有些时间没更新blog了,这两天为了更新<code collection>,于是重写了语法高亮的模块,这次是一个引擎,你可以根据
- python2.7yum install -y zlib zlib-devel openssl openssl-devel mysql-de
- 1. 下载darknet源码在命令窗口(terminal)中进入你想存放darknet源码的路径,然后在该路径下输入依次输入以下命令:git
- python之pkl文件pkl文件是python里面保存文件的一种格式,如果直接打开会显示一堆序列化的东西。cPickle在python3中
- 启动sql server Net Start MSSqlServer 暂停sql server Net Pause MSSqlServer
- 要达到二级名的效果,必须一下条件以及流程:1、必须有一个顶级域名,而且此域名必须做好泛解析并做好指向。2、必须有一台属于你的独立的服务器。泛
- list/tuple转置:以二维grid[][]为例:grid = [[row[i] for row in grid] for i in r
- 这段时间写了很多页面代码,除了一些知识重复以外,也学到css的一些新东西,或许是旧东西,但是还是希望能对大家有用。其实在css里面有很多对a
- 本文实例讲述了django实现分页的方法。分享给大家供大家参考。具体如下:Python代码如下:#!/usr/bin/env python#
- 一.问题描述python 中使用open打开某个文件写入时,往往会发现需要写入的文件不在同级目录下。这样就需要根据文件的路径来找到并打开。但
- 目录1.jupyter简介2.jupyter基础操作2.1windows更新pip库2.2jupyter安装2.3初次启动jupyter2.
- 一、给定一个日期值,求出此日期所在星期的星期一和星期天的日期数据 例如给定一个日期 2010-09-01,求出它所在星期的星期一是2010-
- 学习前言……又看了很久的SSD算法,今天讲解一下训练部分的代码。预测部分的代码可以参照https
- 1、引言小 * 丝:鱼哥,最近有点不像话了。小鱼:嗯?? 啥个意思嘛~小 * 丝:一周了,没分享小知识了。小鱼:就因为这个??小 * 丝:那是,我这么爱
- 本文实例讲述了python使用socket进行简单网络连接的方法。分享给大家供大家参考。具体如下:import socketprint &q
- 本文实例为大家分享了python计算器的具体代码,供大家参考,具体内容如下主要用到的工具是Python中的Tkinter库比较简单直接上图形
- 我们在做表单的时候经常会使用到这样的结构:<fieldset> <lege