InsCode:CSDN的創新代碼分享平臺,融合AI技術提升編程體驗

InsCode AI Chat?能夠讓你通過聊天的方式幫你優化代碼。

一:前言

InsCode 是csdn推出的一個代碼分享網站

二、使用 AI 輔助完成代碼

下面我們就從實踐出發,基于 InsCode 的 AI輔助編程,寫Python實現的計算器。

1.基于模板創建項目

這里我們全程使用平臺進行編程,從創建項目開始,基于現有模板創建項目的方式,可以幫我們快速構建基礎環境。

在填寫表單一些基礎信息之后,我們點擊創建項目。

我們等項目創建完成之后,就會自動進入項目的主界面。在什么代碼都不動的情況下,直接點擊運行按鈕,這時頁面右側會直接運行項目,如果你的項目是 web 應用,則會打開網頁預覽窗口。

2. 使用 AI 輔助開拓思路

我們可以在編輯器中按下快捷鍵?Ctrl?+?L?,呼出InsCode AI Chat,你可以在這里和 Ai 進行文本交互。

比如,在本案例中,我們需要列舉幾個排序算法,那么,我不想自己思考,我想交給Ai,就可以這樣問。

~~~bash 我要用python實現一個交互式的能運行加減乘除的計算器,你有實現思路嗎?~~~

如下圖所示,我們就可以從 Ai 中得到答案。

Ai 給出了一個實現思路,可能是因為主題比較簡單,它甚至在最后直接輸出了完整的項目代碼。

這個實現的思路和我預期不太一樣,那我會給他一些提示,比如,我希望用戶依次輸入數字、運算符、數字,之后自動輸出結果,那么就會是下圖所示。

提示:在實際項目中,我們可以使用 Ai 不斷優化解決問題的方案,通過豐富需求細節得到自己想要的答案。

3. 使用 AI 輔助生成代碼

在InsCode中,我們可以通過寫注釋的方式讓 Ai 幫助生產部分代碼。

具體操作為,首先在代碼編輯器寫出注釋,然后選中注釋后右鍵菜單選擇完成代碼。

~~~bash 實現一個交互式的能運行加減乘除的計算器,用戶依次輸入數字、運算符、數字,之后自動輸出結果 ~~~

這個操作實現了將注釋和“繼續完成以上代碼”發給InsCode AI Chat,之后 AI 會根據當前的項目環境,輸出代碼和詳細解釋。

這就相當于是一位有問必答的編程老師,你的問題越是準確,那么你得到的答案越準確。

我們得到的完整代碼如下。

~~~python

實現一個交互式的能運行加減乘除的計算器,用戶依次輸入數字、運算符、數字,之后自動輸出結果

while True: num1 = float(input("請輸入第一個數字:")) operator = input("請輸入運算符:(+,-,*,/或exit退出)") num2 = float(input("請輸入第二個數字:"))

if operator == "+": result = num1 + num2 print("計算結果:", result)elif operator == "-": result = num1 - num2 print("計算結果:", result)elif operator == "*": result = num1 * num2 print("計算結果:", result)elif operator == "/": if num2 == 0: print("除數不能為0,請重新輸入") else: result = num1 / num2 print("計算結果:", result)elif operator == "exit": breakelse: print("無效的運算符,請重新輸入")

~~~

4. 使用 AI 輔助優化代碼

從目前發展的趨勢來看,我們實際的項目代碼必然不會是完全由 Ai 生成。

你還可以把 InsCode AI Chat 當成一位結對編程的同事,幫助你優化代碼。

還是以上面的代碼為例,我們人為去掉除數不能為零的判斷。再選中這部分代碼,右鍵選擇優化代碼

我們可以看到,AI 通過另一種方式解決的除數為零的問題。

在此代碼中,我們定義了一個名為 calculator 的函數,其中包含了一個 while 循環來實現程序的持續運行,同時利用 try-except 來處理可能出現的錯誤,例如輸入無效數字或除數為零。

在函數體內,我們首先輸入兩個數字和運算符,然后使用 if-elif-else 語句判斷運算符的類型,進行相應的計算并輸出結果。當輸入無效的運算符時,我們會提示用戶重新輸入。除此之外,當輸入無效數字或除數為零時會有對應的錯誤提示。

最后,在 main.py 文件中調用 calculator 函數來執行計算器程序。

提示:目前 AI 生成代碼的風格并不統一,如果你要在實際項目中與運用,則需要注意代碼風格問題。

這次生成的完整代碼如下。

def calculator(): while True: try: num1 = float(input("請輸入第一個數字:")) operator = input("請輸入運算符:(+,-,*,/或exit退出)") if operator == "exit": break num2 = float(input("請輸入第二個數字:")) if operator == "+": result = num1 + num2 elif operator == "-": result = num1 - num2 elif operator == "*": result = num1 * num2 elif operator == "/": result = num1 / num2 else: print("無效的運算符,請重新輸入") continue print("計算結果:", result) except ValueError: print("無效的數字,請重新輸入") except ZeroDivisionError: print("除數不能為0,請重新輸入")if __name__ == '__main__': calculator()

三、InsCode AI Chat 的使用建議

根據我的體驗,建議你這樣使用 InsCode AI Chat 。

  1. 盡量拆分問題,精確清晰的問題能提升輸出的代碼質量;

  2. 反復使用代碼優化功能,AI 給出的代碼不能保證第一次是最優的,建議不斷帶著問題優化代碼,以提升代碼質量;

  3. 使用右鍵的輔助功能,這樣可以讓 AI 基于現在所處的項目使用的編程語言分析代碼和需求

  4. 不要完全相信 AI 的代碼,盡量做參考

四、總結

InsCode AI Chat 功能的加入,使得在校學生可以更容易地學習編程。

只要你的問題足夠清晰,就會得到相對滿意的結果,當然問題描述需要的是我們的深入思考。

當怎么做變得唾手可得,那么為什么做就變得越來越珍貴。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/209849.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/209849.shtml
英文地址,請注明出處:http://en.pswp.cn/news/209849.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

關于SQL注入問題及解決--小記

1.SQL注入問題 SQL 注入是一種常見的安全漏洞,它發生在應用程序未正確驗證和處理用戶提供的輸入數據時。攻擊者可以通過惡意構造的輸入,將額外的 SQL 代碼注入到應用程序的查詢語句中,從而執行未經授權的數據庫操作。 SQL 注入問題通常出現…

行業地位失守,業績持續失速,科沃斯的故事不好講

特勞特曾在《定位》一書中提到,為了在容量有限的消費者心智中占據品類,品牌最好的差異化就是成為第一,做品類領導者或開創者,銷量遙遙領先;其次分化品類,做到細分品類的唯一,即細分品類的第一。…

Elon Musk艾隆?馬斯克的聊天機器人Grok上線可以使用啦,為X Premium Plus訂閱者推出

艾隆?馬斯克旗下的 AI 初創公司X(前身“推特”)開發的 ChatGPT 競爭對手 Grok 已經在 X 平臺上正式推出。Grok 是一個基于生成模型 Grok-1的聊天機器人,它能夠回答問題并提供最新的信息。與其他聊天機器人不同,Grok 可以實時獲取…

Java基礎-IDEA下載、卸載、安裝、使用

目錄 1. IDEA下載2. IDEA卸載3. IDEA安裝4. 基本使用 1. IDEA下載 IDEA下載網址 2. IDEA卸載 3. IDEA安裝 更改IDEA安裝目錄 是否創建桌面圖標 下一步 success! 4. 基本使用 新建項目 新建模塊 新建包 新建Java文件 編寫代碼 運行測試

2020藍橋杯c組紙張大小

題目名字 紙張大小 題目鏈接 題意 給一張紙,通過不斷折疊,求最終長寬,給十個數字,輸入哪個數字就求哪次折疊的長寬,其實就是,每次折疊后長度的一半變為寬度,原來的寬度變成長度 思路 因為數字…

python之馬爾科夫鏈(Markov Chain)

馬爾可夫鏈(Markov Chain)是一種隨機過程,具有“馬爾可夫性質”,即在給定當前狀態的條件下,未來狀態的概率分布僅依賴于當前狀態,而與過去狀態無關。馬爾可夫鏈在很多領域都有廣泛的應用,包括蒙…

【C語言】網絡字節序和主機字節序

網絡字節序和主機字節序是計算機中字節的兩種排序方式,它們主要用于解決不同計算機之間數據通信的問題。 一、網絡字節序 也被稱為大端字節序,是一種標準的字節序。在網絡通信中,如果兩臺主機的字節序不同,可能會導致數據解釋的二…

Swagger提示請確保swagger資源接口正確

問題描述 在項目開發過程中集成swagger-bootstrap-ui,打開swagger-ui.html頁面正常,但是打開doc.html頁面提示"請確保swagger資源接口正確"。 原因分析: 原因是JSON格式非法,一般出現此情況時,是因為后端…

shell條件測試

1.1.用途 為了能夠正確處理Shell程序運行過程中遇到的各種情況,Linux Shell提供了一組測試運算符. 通過這些運算符,shell程序能夠判斷某種或者幾個條件是否成立。 條件測試在各種流程控制語句,例如判斷語句和循環語句中發揮了…

數據分析實例:基于電力大數據的中小型企業運營發展分析

前不久,帆軟發起了【2023BI數據分析大賽】的活動,老李我也是這個大賽的評委。 ? 今天跟大家分享的是基于電力大數據的中小型企業運營發展分析。 當我們去解讀一份數據分析報告時,首先要了解這份報告的主要目的是什么,作者通過分…

第19關 5.2k star 開源分布式存儲服務Rancher-Longhorn在k8s上部署

------> 課程視頻同步分享在今日頭條和B站 大家好,我是博哥愛運維。 什么是Longhorn Longhorn是一個輕量級、可靠且易于使用的Kubernetes分布式塊存儲系統。 Longhorn 是免費的開源軟件。它最初由 Rancher Labs 開發,現在作為云原生計算基金會的孵…

X86匯編語言:從實模式到保護模式(代碼+注釋)--c7

X86匯編語言:從實模式到保護模式(代碼注釋)–c6 ;代碼清單7-1;文件名:c07_mbr.asm;文件說明:硬盤主引導扇區代碼;創建日期:2011-4-13 18:02jmp near startmessage db 123...100start:mov ax,0x7c0 …

class061 最小生成樹【算法】

class061 最小生成樹【算法】 2023-12-8 11:48:12 算法講解061【必備】最小生成樹 code1 P3366 【模板】最小生成樹 // Kruskal算法模版(洛谷) // 靜態空間實現 // 測試鏈接 : https://www.luogu.com.cn/problem/P3366 // 請同學們務必參考如下代碼中…

【Linux】:線程(二)互斥

互斥與同步 一.線程的局部存儲二.線程的分離三.互斥1.一些概念2.上鎖3.鎖的原理4.死鎖 一.線程的局部存儲 例子 可以看到全局變量是所有線程共享的,如果我們想要每個線程都單獨訪問g_val怎么辦呢?其實我們可以在它前面加上__thread修飾。 這就相當于把g…

網絡入門---網絡編程初步認識和實踐(使用udp協議)

目錄標題 前言準備工作udpserver.hpp成員變量構造函數初始化函數(socket,bind)start函數(recvfrom) udpServer.ccudpClient.hpp構造函數初始化函數run函數(sendto) udpClient.cc測試 前言 在上一篇文章中我們初步的認識了端口號的作用,ip地址和MAC地址在網絡通信時…

Python實現GUI圖片瀏覽程序

Python實現GUI圖片瀏覽程序 下面程序需要pillow庫。pillow是 Python 的第三方圖像處理庫,需要安裝才能實用。pillow是PIL( Python Imaging Library)基礎上發展起來的,需要注意的是pillow庫安裝用pip install pillow,導…

【改進YOLOv8】融合可擴張殘差(DWR)注意力模塊的小麥病害檢測系統

1.研究背景與意義 項目參考AAAI Association for the Advancement of Artificial Intelligence 研究背景與意義: 隨著計算機視覺技術的快速發展,深度學習在圖像識別和目標檢測領域取得了巨大的突破。其中,YOLO(You Only Look O…

基于SSM框架的網上商城系統的設計與實現

完整下載:基于SSM框架的網上商城系統的設計與實現 基于SSM框架的網上商城系統的設計與實現 "Design and Implementation of an Online Shopping Mall System Based on SSM Framework" 目錄 目錄 2 摘要 3 關鍵詞 3 第一章 系統設計 4 1.1 系統需求分析 4 …

TruLens RAG Triad 學習

TruLens RAG Triad 學習 0. 背景1. RAG 三元組2. TruLens 快速入門2-1. 安裝依賴2-2. 初始化 OpenAI 認證信息2-3. 獲取數據2-4. 創建向量存儲2-5. 從頭構建自定義 RAG2-6. 設置反饋函數2-7. 構建應用程序2-8. 運行應用程序0. 背景 近年來,RAG 架構已成為為大型語言模型 (LLM…

Nexus搭建npm私庫(角色管理、上傳腳本)

安裝Nexus 官網下載 https://www.sonatype.com/products/sonatype-nexus-oss-download 進入官網下載,最新下載方式需要輸入個人信息才能下載了 選擇對應的系統進行下載 Windows 推薦也下載 UNIX 版本(Windows 版本配置比較難改) 如果沒有下…