Github Copilot 結合python的使用


之前提交的github copilot技術預覽版申請,今天收到准入郵件,於是安上試一試這個准備把我送去電子廠上班的copy a lot ?

官網及申請地址:https://copilot.github.com/


小作文包含如下內容:

  • copilot簡單介紹

  • 使用python對copilot做些簡單使用測試

  • 使用copilot對LeetCode 題目解答


一、copilot簡單介紹

image-20210719145925929

github copilot(副駕駛)目前只適用於vscode的擴展插件,它依賴於github數十億公開代碼庫的訓練而成的AI編碼輔助器(包括整行代碼提供或函數建議),目前支持數十種編程語言,技術預覽版對 Python、JavaScript、TypeScript、Ruby 和 Go 的表現尤其出色。

他的工作原理:通過大量公共代碼庫對AI模型訓練后構建成copilot服務,服務接收來自copilot插件返回的提要編碼,並提供代碼建議,插件又將來自程序員對建議的采納性的回傳到copilot服務,如此反復強化AI模型。

下圖以蔽之:

image-20210719150443888


二、使用python對copilot做些簡單使用測試

在vscode插件中我們安上Github Copilot,建一個測試文件Copilot_test.py

image-20210719152837439

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代碼庫的檢索...

max_min

2.一個計算器

calculator

copilot給出的建議允許我們進行選擇,通過Alt+[,Alt+]對建議上下查看。

image-20210719164153638

我們可以使用Ctrl+Eeter打開建議結果面板,可以看到對應這些建議,copilot給了我們是10個解決方案

image-20210719164636671


三、使用copilot對LeetCode 題目解答

我們在LeetCode找一題【回文數】,題目如下:

然后我們把題目寫到代碼注釋中

image-20210719165443857

代碼區的類也加過來

image-20210719165614176

看起來我們的代碼就是這樣的,灰色code的copilot給出的建議

image-20210719165941775

我們選擇其中一種建議放到LeetCode的執行看看

image-20210719170230672

image-20210719170355312

這個建議似乎不太理想...勇敢牛牛不怕困難,有興趣的同學可以看看困難模式的題目哦,PS:對於中文的注釋不確定copilot能百分之百給出回應。


copilot就像它的名字一樣【副駕駛】,正經事還是得你來干,不過未來可能會一個不錯的協助工具。


文章有不足的地方歡迎在評論區指出。

歡迎收藏、點贊、提問。關注頂級飲水機管理員,除了管燒熱水,有時還做點別的。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM