Cursor初體驗:excel轉成CANoe的vsysvar文件

今天公司大佬先鋒們給培訓了cursor的使用,還給注冊了官方賬號!躍躍欲試,但是測試任務好重,結合第三方工具開發也是沒有頭緒。

但巧的是,剛好下午有同事有個需求,想要把一個幾千行的excel轉成canoe的系統變量文件直接導入到工程。

這不正好是cursor適用的,最簡易的功能應用場景嘛~!

拿來練手,成功了~!!整體耗時不到3個小時,包含寫這篇文章的時間。

心得:

  • 最開始給cursor的指令要明確!且少量!
  • 在第一次成功生成的基礎上,再繼續讓它修改代碼;就像真正的需求開發一樣,逐漸迭代。
  • 否則一旦出現問題,將很難定位問題點——如果開發人員對代碼語法不熟悉,僅僅依賴cursor自己修復bug,cursor自己的解決方向會越來越偏。
  • 當修復很多次都得不到預期結果時,最好是Ctrl+N新開一個chat窗口,將前面的經驗匯總成新的需求描述告訴給cursor。
  • 在逐級迭代的過程中,驗證代碼的正確性的方法:可以先使用需求迭代前的測試文件,讓代碼運行,確保運行結果正確——保證以前的功能沒有被改錯;再使用針對新需求的測試文件,驗證新的功能點是否實現。
  • 降低不必要的工作量--不重復造輪子,明確真正的需求:轉化時發現cursor讀取excel有困難,但cursor可以讀取csv,最開始嘗試讓cursor自己將excel轉成csv,再進行后面的數據處理----失敗多次后,其實沒有必要讓cursor去做--wps等可以直接轉化成csv,cursor在這個基礎上后面的代碼開發才是需求的核心功能。
  • 降低功能實現的復雜度——類比于數據分析之前的數據清洗————這一點我也不確定是不是對生成核心功能有效——比如
  • (1)excel表中的內容,無關項(序號列)直接刪除,
  • (2)列名使用英文的與CANoe系統變量文件中的屬性相近的名稱
  • (3)文件名稱不使用特殊符號--使用英文小寫數字及下劃線的組合
  • (4) 需求excel里要轉化的條目都是double類型的,就不用考慮整數和字符串以及數組之類的

源vsysvar文件來自于自己從canoe 導出的簡易系統變量文件,盡量涵蓋各種數據狀態,比如某些屬性為空。讓cursor了解不同取值狀態的文件結構。

最后驗證生成正確的方法就是:導入canoe,能夠識別到對應系統變量。

成功的chat過程:

下面是最后成功生成的提示詞:

  1. ?提示1:@abc.csv @target3.vsysvar 將abc.csv文件轉化成vsysvar結構的文件,名稱為111.vsysvar,除了具體變量定義中的屬性,每行數據各有不同,其他屬性都使用默認值,數據類型都是double;參考target3.vsysvar的文件結構,;將轉化的代碼保存在main.py中;這段代碼應當支持超過2個不同的namespace命名空間的csv文件的格式轉化
    1. 這其中“除了具體變量定義中的屬性,每行數據各有不同”的需求描述,是來自于前面多次嘗試的心得---讓cursor識別兩個文件的結構,了解cursor是如何理解這個文件的,站在cursor的角度去描述需求
    2. cursor執行后發現失敗,會自動定位失敗原因嘗試修復,下面的截圖是一部分自我修復的記錄
    3. ?
  2. 提示2:用這段代碼將abc_1.csv轉化成999.vsysvarc
  3. 提示3:很好,繼續優化這段代碼,如果csv中name屬性值為空,那么不創建這一行的系統變量
  4. 提示4:驗證這段代碼,將abc_2.csv轉化成987.vsysvar
  5. 提示5:很好,繼續完善這段代碼,如果namesapace屬性不存在,也同樣跳過這一條變量的生成,但是,要在完成文件生成時,彈框提示用戶,有哪些行沒有生成變量;那么屬性為空的也要提示;提示內容包含行的編號以及提示語“缺少name或者namespace”【中間出現報錯,并自動修復】
  6. 提示6:驗證這段代碼,將abc_3.csv生成rrr.vsysvar文件
  7. 提示7:很好繼續優化這段代碼,如果namespace與name的組合必須是唯一的,如果出現了相同的組合,那么僅保留第一條,并在生成結束后,告知用戶沒有生成變量的行數以及原因--與哪一行名稱相同
  8. 提示8:驗證這段代碼,將abc_4.csv生成qqq.vsysvar

文件

最后可用的只有腳本和demoexcel:

有效步驟的文件也只是很少一部分:

調試過程中生成的文件,則很多:

所有文件的下載地址

通過網盤分享的文件:SVCursor.zip
鏈接: https://pan.baidu.com/s/1JGw1gaAGMZU5khJjRTLNcw?pwd=4pms 提取碼: 4pms

?

?

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

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

相關文章

每日一題---單詞搜索(深搜)

單詞搜索 給出一個二維字符數組和一個單詞&#xff0c;判斷單詞是否在數組中出現&#xff0c; 單詞由相鄰單元格的字母連接而成&#xff0c;相鄰單元指的是上下左右相鄰。同一單元格的字母不能多次使用。 數據范圍&#xff1a; 0 < 行長度 < 100 0 < 列長度 <…

【深度學習】多源物料融合算法(一):量綱對齊常見方法

目錄 一、引言 二、量綱對齊常見方法 2.1 Z-score標準化Sigmoid歸一化 2.2 Min-Max 歸一化 2.3 Rank Transformation 2.4 Log Transformation 2.5 Robust Scaling 3、總結 一、引言 類似抖音、快手、小紅書等產品的信息流推薦業務&#xff0c;主要通過信息流廣告、信…

deepseek為什么要開源

一、生態位的搶占與鎖定&#xff1a;以 JDK 版本為例? 在軟件開發的世界里&#xff0c;生態位的搶占和先入為主的效應十分顯著。就拿 Java 開發中的 JDK 版本來說&#xff0c;目前大多數開發者仍在廣泛使用 JDK8。盡管 JDK17 和 JDK21 已經推出&#xff0c;且具備更多先進特性…

【AI】內容生成式AI(AIGC)的深度分析與擴展

引言 隨著人工智能&#xff08;AI&#xff09;技術的迅速發展&#xff0c;AI生成內容&#xff08;AIGC&#xff09;已經在多個領域表現出巨大潛力&#xff0c;改變了內容創作的方式。這篇文章將詳細介紹AI生成內容的技術原理、應用領域、優缺點、未來趨勢以及相關倫理問題&…

用C++新建快捷方式

1.創建文件 新建一個文件Ink.cpp,系統會自動生成對應的EXE文件 2.編寫代碼 #include<stdlib.h> int main(){ system("powershell -command \"$WshShellNew-Object -comObject WScript.Shell; $Shortcut$WshShell.CreateShortcut(\%UserProfile%\\Desktop\\1.…

前端Html5 Canvas面試題及參考答案

目錄 Canvas 元素的默認尺寸是多少?如何正確設置其寬高以避免圖像拉伸? 如何獲取 Canvas 的 2D 上下文對象?3D 上下文支持哪些技術? canvas.width 與 canvas.style.width 的區別是什么? Canvas 支持的圖像格式有哪些?如何將 Canvas 轉換為 Base64 圖片? Canvas 中如…

基于Python的天氣預報數據可視化分析系統-Flask+html

開發語言&#xff1a;Python框架&#xff1a;flaskPython版本&#xff1a;python3.8數據庫&#xff1a;mysql 5.7數據庫工具&#xff1a;Navicat11開發軟件&#xff1a;PyCharm 系統展示 系統登錄 可視化界面 天氣地圖 天氣分析 歷史天氣 用戶管理 摘要 本文介紹了基于大數據…

基于Uniapp開發tab選項卡/標簽欄前端組件

在開發一些業務場景時候&#xff0c;可能需要切換標簽欄來展示不同的信息列表。 為此開發了一個Uniapp組件&#xff08;myTab&#xff09;&#xff0c;下面為組件的展示效果&#xff1a; 案例代碼&#xff1a; <template><view class"content"><myt…

練習題:87

目錄 Python題目 題目 題目分析 代碼實現 代碼解釋 列表推導式部分&#xff1a; 變量賦值和輸出&#xff1a; 運行思路 結束語 Python題目 題目 使用列表推導式生成一個包含 1 到 100 中所有偶數的列表。 題目分析 本題要求使用 Python 的列表推導式生成一個包含 …

【DevOps】 基于數據驅動的Azure DevOps案例實現

推薦超級課程: 本地離線DeepSeek AI方案部署實戰教程【完全版】Docker快速入門到精通Kubernetes入門到大師通關課AWS云服務快速入門實戰目錄 **客戶場景:****解決方案:****架構:****架構細節:****結論**客戶場景: 為大量客戶提供基于Azure云的成果物重復部署服務。這可能…

文本組件+Image組件+圖集

Canvas部分知識補充 元素渲染順序 以Hierarchy參考 下方物體在上方物體前顯示 子物體在父物體前顯示 下方物體永遠在前顯示&#xff0c;無論上方的層次結構 資源導入 絕對路徑&#xff1a;C:\Windows\Fonts下的許多字體可以用做UIText的字體資源 圖片導入&#xff1a; 1.圖…

【量化策略】均值回歸策略

【量化策略】均值回歸策略 &#x1f680;量化軟件開通 &#x1f680;量化實戰教程 技術背景與應用場景 在金融市場中&#xff0c;價格波動往往呈現出一定的規律性。均值回歸策略正是基于這一觀察&#xff0c;認為資產價格會圍繞其歷史平均水平上下波動。當價格偏離均值較遠…

C++初階——類和對象(二)

C初階——類和對象&#xff08;二&#xff09; 本期內容書接上回&#xff0c;繼續討論類和對象相關內容。類和對象屬于C初階部分&#xff0c;主要反映了面向對象編程的三大基本特點之一——封裝&#xff0c;在C的學習中占有舉足輕重的地位&#xff01; 一、類對象模型 1.如何…

3-002: MySQL 中使用索引一定有效嗎?如何排查索引效果?

1. 索引失效的常見原因 雖然索引可以加速查詢&#xff0c;但在某些情況下&#xff0c;MySQL 可能不會使用索引&#xff0c;甚至使用索引反而更慢。 以下是一些常見導致索引失效的原因&#xff1a; ① 查詢條件使用了 ! 或 <> 原因&#xff1a;索引通常用于范圍或等值查…

LVGL移植到6818開發板

一、移植步驟 1.lv_config.h 配置文件啟動 framebuffer 2、lv_config.h 配置文件關閉SDL 2.修改main.c 去掉SDL輸入設備 3.修改Makefile 文件啟動交叉編譯 去掉警告參數 去掉SDL庫 4.交叉編譯代碼 make clean #清空 ? 必須要清空一次再編譯&#xff01; 因為修改了 lv_con…

linux系統命令——權限

一、有哪些權限 讀&#xff08;r&#xff09;——對應數字4 寫&#xff08;w&#xff09;——對應數字2 執行&#xff08;x&#xff09;——對應數字1 二、權限及數字的對應 4對應r-- 2對應-w- 1對應--x 5對應r-x 6對應rw- 7對應rwx 三、文件的基本屬性 如圖&#…

Android Dagger2 框架輔助工具模塊深度剖析(六)

一、引言 在 Android 開發領域&#xff0c;依賴注入&#xff08;Dependency Injection&#xff0c;簡稱 DI&#xff09;作為一種至關重要的設計模式&#xff0c;能顯著降低代碼間的耦合度&#xff0c;提升代碼的可測試性與可維護性。Dagger2 作為一款強大的依賴注入框架&#…

Django項目之訂單管理part3

一.前言 前面兩章已經把登錄給做完了&#xff0c;這一章節要說的是登錄的校驗和登錄以后的菜單展示&#xff0c;內容還是很多的。 二.菜單和權限 2.1 是否登錄 當我們進入其他的頁面&#xff0c;我們首先要判斷是否登錄&#xff0c;這個時候我們就要借助中間件來做session和…

多線程到底重不重要?

我們先說一下為什么要講多線程和高并發&#xff1f; 原因是&#xff0c;你想拿到一個更高的薪水&#xff0c;在面試的時候呈現出了兩個方向的現象&#xff1a; 第一個是上天 項目經驗高并發 緩存 大流量 大數據量的架構設計 第二個是入地 各種基礎算法&#xff0c;各種基礎…

AI大模型測試用例生成平臺

AI測試用例生成平臺 項目背景技術棧業務描述項目展示項目重難點 項目背景 針對傳統接口測試用例設計高度依賴人工經驗、重復工作量大、覆蓋場景有限等行業痛點&#xff0c;基于大語言模型技術實現接口測試用例智能生成系統。 技術棧 LangChain框架GLM-4模型Prompt Engineeri…