21.Excel自動化:如何使用 xlwings 進行編程

一?將Excel用作數據查看器

使用 xlwings 中的 view 函數。

1.導包

import datetime as dt
import xlwings as xw
import pandas as pd
import numpy as np

2.view 函數

創建一個基于偽隨機數的DataFrame,它有足夠多的行,使得只有首尾幾行會被顯示。

df = pd.DataFrame(data=np.random.randn(100, 5),columns=[f"Trial {i}" for i in range(1, 6)])
print(df)

xw.view(df)

view 函數可以接受所有常見的 Python 對象,包括數字、字符串、列表、字典、元組、NumPy 數組和 pandas DataFrame。

在默認情況下,它會打開一個新的工作簿,然后將對象粘貼到第一張工作表的 A1 單元格。

不必每次都打開一個新的工作簿,你也可以通過為 view 函數提供一個 xlwings sheet 對象作為第二個參數來重復利用同一個工作簿文件:xw.view(df, mysheet)。

自動打開,未展示完全。?


二?xlwings 的使用方法

1.xw.Book()?的不同用法

1.xw.Book():創建新工作簿

?

wb = xw.Book() 和 wb = app.books.add() 都是新建一個工作簿,有什么區別?

在?xlwings?中,xw.Book()?和?app.books.add()?都可以用于創建新工作簿,但它們在底層實現和使用場景上有以下區別。

xw.Book():如果沒有活動的Excel實例,它會啟動一個新的,然后新建一個工作簿。如果有活動的實例,比如用戶已經手動打開了Excel,那么它會在這個實例中新建工作簿。無需顯式創建?App?對象,適合快速操作。

app.books.add():需要先有一個app對象,通過xw.App()創建。在指定的?app?實例中新建工作簿。適合需要同時操作多個 Excel 實例或工作簿的場景。

xw.Book()更自動化,適合簡單場景;app.books.add()更明確,適合需要精細管理的情況。

補充:如果你在兩個 Excel 實例中打開了同一個工作簿,或者想要指定某個 Excel 實例打開某個工作簿,就不能再使用 xw.book 了。此時需要使用?books 集合。

.books方法

xw.apps[key].books表示?Excel 實例中所有打開的工作簿集合。

訪問工作簿:

通過索引:app.books[0]?獲取第一個工作簿。

通過名稱:app.books['Book1.xlsx']?按名稱獲取。

myapp 代表一個 xlwings app 對象。(myapp=xw.App())如果將 myapp.books 替換成 xw.books,則 xlwings 會使用活動的 app。

2.xw.Book("Book1"):引用未保存的未命名工作簿

?xw.Book() 和 xw.Book("Book1") 的區別?

xw.Book():創建一個全新的 Excel 工作簿。

如果當前沒有打開的 Excel 實例,xlwings 會自動啟動一個。新工作簿默認命名為?Book1(如果未指定其他名稱)。該工作簿不會自動保存,需手動調用?.save()?方法。

xw.Book("Book1"):嘗試打開已存在的名為 "Book1" 的工作簿。

如果名為 "Book1" 的工作簿已打開,直接返回該工作簿的引用。如果名為 "Book1" 的工作簿未打開但存在(即文件存在于磁盤),xlwings 會打開它。如果文件不存在,會拋出?FileNotFoundError

3.xw.Book("Book1.xlsx"):引用已保存的文件?

路徑也可以是絕對路徑。

?4.xw.books.active:獲取活動工作簿

返回當前 Excel 實例中活動的工作簿對象,直接獲取用戶當前正在操作的 Excel 工作簿對象。

2.xw.sheets[ ]訪問工作表集合

返回工作簿中所有工作表的集合(類似列表)。

1.通過名稱或索引訪問特定工作表

?

2.遍歷所有工作表

3.添加工作表

4.刪除工作表

5.檢查工作表是否存在

3.xw.range()的不同用法

.range方法是用來操作Excel單元格區域的。

xlwings 的 range 可接受的字符串格式:

1.對單個單元格

1.通過單元格名字操作單元格

補充:.value方法。

.value?是?Range 對象的屬性。

讀取:

cell_value = sheet.range("A1").value
print(cell_value)

寫入:

sheet.range("A1").value = "New Value"

sheet1.range("A1").value = [[1, 2], [3, 4]] 這行代碼是什么意思,A1這一個單元格里面的數據是[1, 2], [3, 4]嗎?

自動擴展寫入范圍:雖然你指定了?A1?這個單個單元格,但當你給一個單元格賦值一個二維列表(如?[[1,2], [3,4]])時,xlwings 會自動將數據擴展到相鄰的單元格區域。數據會被寫入到?A1:B2?的區域。這個A1相當于是指定從A1單元格開始寫入數據而不是寫入A1單元格。賦予二維列表(如?[[1,2], [3,4]]),xlwings 會將其視為多行多列的數據,并自動擴展寫入到連續的單元格區域。

2.通過行列索引操作

2.對多個單元格(范圍)

1.命名范圍操作

2.批量操作整行/整列

補充:索引和切片。

3.公式操作

4.多區域操作

3.range 對象的 options 方法

對應:5.Pandas :DataFrame 的使用——數據操作→9.將 DataFrame 寫入 Excel

range.options()?方法,是用于動態控制 Excel 數據讀寫時的值處理方式的。只有在調用?value?屬性時,options?的設置才會生效。

options()?本身不會立即處理數據,它只是定義了一組規則。當調用?.value?時,xlwings?會根據?options?的規則,對?range?區域的數據進行處理,返回結果。

myrange 是一個 xlwings range 對象:

options()?用于定義讀取或寫入數據時,值的轉換規則。

常見的選項包括:

convert:控制數據類型轉換(如將 Excel 中的數字文本轉為 Python 的整數)。

dates:處理日期格式(如將 Excel 的日期序列轉為 Python 的?datetime?對象)。

numbers:控制數字的解析方式(如科學計數法、千分位分隔符)。

補充:convert 參數可以接受的值。

4.對 sheet 對象進行索引和切片來獲得?range 對象

補充:對 sheet 對象進行索引 / 切片和使用range 對象之間的區別。

sheet 對象在 xlwings 中代表 Excel 的工作表。用戶可能通過sheet[行, 列]或者sheet[:行, :列]這樣的索引或切片方式來操作單元格。而range對象則是通過sheet.range("A1")或者sheet.range("A1:B2")。

?

5.從 0 開始的索引和從 1 開始的索引的說明

作為一個 Python 包,只要你通過 Python 的索引或切片語法(通過方括號)訪問元素,xlwings 就始終使用從 0 開始的索引。但是?xlwings 的 range 對象使用的是從 1 開始的行列索引。那么可以使用 sheet[row_selection, column_selection] 語法。

6.xw.name()和 xw.fullname()

xw.name:返回 Excel 應用程序的簡短名稱(通常是 "Microsoft Excel")。

示例輸出:"Microsoft Excel"

xw.fullname:返回 Excel 應用程序的完整名稱(包含版本信息,如 "Microsoft Excel 365")。

示例輸出:"Microsoft Excel 365"

?

7.xw.app()的不同用法

.app是指Excel應用程序實例的接口。通過xw.App()來啟動Excel實例,或者使用現有的實例。

.app?用于控制 Excel 應用程序級別的操作(如可見性、屏幕更新、計算模式等)。

1.啟動/關閉 Excel 實例

1.啟動新實例

默認可見。

2.連接已打開的 Excel 實例

3.從打開的工作簿中獲取app對象?

2.控制 Excel 的行為

3.打開/操作/保存并關閉工作簿

1.打開工作簿

2.操作工作簿

1.列出各實例中打開的工作簿名稱

通過列表推導式。

?2.寫入值

3.保存并關閉工作簿

4.獲取?app?的鍵

App?對象代表一個 Excel 應用程序實例,可以獲取其唯一標識符(即“鍵”)。

1.app.pid

返回 Excel 進程的唯一數字標識符(Process ID),由操作系統分配。

?

2.app.hwnd?

返回窗口的唯一標識符(僅 Windows 有效)。

補充:xw.apps.keys()

app.pid 和 app.hwnd?是App對象的屬性。

xw.apps.keys()會返回所有正在運行的Excel實例的進程ID列表。

xw.apps是一個類似字典的對象,其中每個鍵對應一個Excel實例的標識符,而值則是App對象本身。所以xw.apps.keys()應該返回所有當前運行的Excel實例的鍵(它們的標識符)。?

5.退出 Excel 實例

6..caller()?

如果你通過 Excel 中的 VBA 宏、按鈕或其他方式運行 Python 代碼,.caller()?會返回調用代碼時正在運行的 Excel 應用程序實例。

返回一個?xlwings?的?App?對象,使你可以在 Python 中直接操作觸發代碼的 Excel 應用程序。

8.xw.save()和 xw.close()


三?xlwings?的高級用法

1.批量操作工作表

2.創建?Excel 圖表

charts 集合的 add 方法。

向 Excel 工作表插入一個新的圖表。返回一個?Chart?對象,代表新添加的圖表,可以通過該對象進一步配置圖表(如設置類型、數據源等)。

top=sheet1["A19"].top:圖表的頂部位置與單元格?A19?的頂部對齊。

left=sheet1["A19"].left:圖表的左側位置與單元格?A19?的左側對齊。

圖表會被放置在單元格?A19?的位置,覆蓋該單元格。

chart.chart_type = "column_clustered":

將圖表的類型設置為簇狀柱形圖(一種常見的柱狀圖類型)。

chart.set_source_data(sheet1["A15"].expand()):設置圖表數據源

sheet1["A15"].expand()

從單元格?A15?開始,自動擴展選擇連續的、非空的數據區域。

set_source_data

將上述擴展后的數據區域設置為圖表的數據源,圖表會根據這些數據生成對應的柱狀圖。

補充:其他例子

3.結合 Matplotlib

將?Matplotlib 圖像放入?Excel 中。

在處理圖片時,一定要確保安裝了 Pillow,它是 Python 中常用的圖片處理庫。Pillow 能夠保證圖片在 Excel 中有正確的尺寸和比例。Anaconda 中包含了 Pillow。

當使用 pandas 的默認繪圖后端時,創建的是一張 Matplotlib 的圖像。

要將這樣的圖 像放進 Excel 中,首先要獲取它的 figure 對象,然后將其作為參數傳遞給pictures.add, pictures.add 會將 Matplotlib 圖像轉換為圖片然后發送至 Excel。pictures.add?方法是?xlwings?庫中的一個功能,用于將圖片添加到 Excel 工作表中。

pictures.add?:將圖片(如生成的圖表)插入到 Excel 工作表中。返回一個?Picture?對象,代表插入的圖片,可以通過該對象進一步配置圖片(如調整位置、大小等)。

除了接受 Matplotlib 圖像, pictures.add 也可以接受磁盤上的圖片路徑。

image:要插入的圖片對象(如?matplotlib?的?Figure?對象)。

name(可選):圖片的名稱(字符串)。

update(可選):如果為?True,更新現有同名圖片;否則添加新圖片(默認?False)。

left(可選):圖片左側距離工作表左側的位置(單位:點)。

top(可選):圖片頂部距離工作表頂部的位置(單位:點)。

width(可選):圖片的寬度(單位:點)。

height(可選):圖片的高度(單位:點)。

?

代碼舉例:

%matplotlib inline:這是一個魔術命令,用于在 Jupyter Notebook 中直接顯示?matplotlib?生成的圖表。圖表會內嵌在 Notebook 的單元格下方,而不是彈出一個獨立的窗口。

plt.style.use("seaborn"):設置?matplotlib?的圖表風格為?"seaborn"。seaborn?是一種現代、美觀的統計圖表風格,由同名庫?seaborn?提供。使用此風格后,圖表的網格、顏色、字體等視覺元素會自動調整為?seaborn?的默認樣式。

ax = df.T.plot.bar():生成一個柱狀圖,并返回?Axes?對象。

df.T:對 DataFrame?df?進行轉置(行和列交換)。轉置后,原來的行索引(Last Year?和?This Year)會變成列名,原來的列名(North?和?South)會變成行索引。轉置是為了調整圖表的方向,使柱狀圖的分組更直觀。

.plot.bar():調用?pandas?的繪圖方法生成柱狀圖。

返回的?ax?是一個?Axes?對象,代表圖表的坐標軸和繪圖區域。

補充:Figure?對象和?Axes?對象

在?matplotlib?中?Figure?對象代表整個圖表(包括所有子圖、標題、圖例等元素)。Axes?對象代表圖表中的一個子圖或坐標軸區域。

一個?Figure?對象可以包含多個?Axes?對象(例如,通過?plt.subplots()?創建多個子圖)。

fig = ax.get_figure():從?Axes?對象中獲取關聯的?Figure?對象。

.get_figure()?:從?Axes?對象中獲取其所屬的?Figure?對象。

保存圖表:通過?Figure?對象可以保存整個圖表為文件(如?fig.savefig("chart.png"))。

調整圖表布局:通過?Figure?對象可以調整圖表的全局布局(如?fig.tight_layout())。

獲取圖表屬性:通過?Figure?對象可以訪問圖表的尺寸、分辨率等屬性。

補充:.get_figure()?方法是?matplotlib?中用于從?Axes?對象獲取其所屬?Figure?對象的關鍵方法。通過?Figure?對象,用戶可以執行保存圖表、調整布局等高級操作。

補充:想使用新的圖像來更新圖片

只需調用 update 方法并傳遞另一個 figure 對象即可。雖然這樣做會替換 Excel 中的圖片,但會保留位置、尺寸、名稱等屬性。

(df + 1):對 DataFrame?df?中的每個元素加 1。

轉置后:

.plot.bar():調用?pandas?的繪圖方法生成柱狀圖返回的?ax?是一個?Axes?對象,代表圖表的坐標軸和繪圖區域。

plot = plot.update(ax.get_figure()):用新的?Figure?對象更新已有的圖表對象。

4.已定義名稱集合

1.什么是已定義名稱

在 Excel 中,我們通過為區域、公式和常量賦予名稱來創建已定義名稱。為一個區域命名是常見情況,這種區域被稱作具名區域。利用具名區域,你可以在公式和代碼中使用描述性名稱而不是抽象地址(A1:B2)來引用一個 Excel 區域。

補充:

具名區域:給某個單元格或單元格區域賦予一個名稱(如?SalesData),方便在公式或圖表中引用。

全局作用域:名稱在整個工作簿中唯一,任何工作表都能引用。

工作表作用域:名稱僅在當前工作表中唯一,復制到其他工作表時會自動重命名。

利用具名區域讀寫值可以在不調整 Python 代碼的情況下重新組織工作簿。比如,即使插入新行導致了單元格的移動,但對應的名稱仍然引用的是原來的單元格。自定義名稱可以在全局工作簿作用域或局部工作表作用域中設置。

工作表作用域的優勢是在復制工作表時不用擔心重復的具名區域發生沖突。

什么是工作表作用域的優勢是在復制工作表時不用擔心重復的具名區域發生沖突?

假設你有一個工作表?Sheet1,其中定義了一個全局作用域的具名區域?SalesData。當你復制?Sheet1?到?Sheet2?時:Sheet2?中也會出現一個名為?SalesData?的具名區域。如果此時你嘗試在公式或圖表中引用?SalesData,軟件會不知道引用的是?Sheet1?還是?Sheet2?中的?SalesData,導致沖突。

在 Excel 中,你可以在“公式 > 定義名稱”菜單項中添加自定義名稱。也可以選擇一個區域,然后將想要的名稱寫到名稱框(公式欄左邊的文本框)中,你可以在這里看到默認的單元格地址。

2.使用 xlwings 創建自定義名稱的方法

默認作用域是工作簿作用域。

sheet1["A1:B2"].name = "matrix1"

工作表作用域需要在工作表名稱前加上一個感嘆號。

sheet1["B10:E11"].name = "Sheet1!matrix2"

3.通過名稱訪問區域

1.用 sheet 方法

sheet1["matrix1"]

返回當前工作表(sheet1)中定義的工作表作用域的具名區域。

原因:工作表對象只能“看到”其內部定義的作用域為當前工作表的具名區域。

2.用 book 方法

book.names

返回整個工作簿(book)中定義的所有作用域的具名區域。

原因:工作簿對象可以“看到”全局作用域和工作表作用域的具名區域。

4.名稱有多種方法和屬性

1.獲取對應的range對象

book.names["matrix1"].refers_to_range

獲取工作簿中名為?matrix1?的具名區域所引用的具體單元格范圍。

book?是工作簿對象(如 Excel 文件)。book.names?是工作簿中所有具名區域的集合,包含工作簿作用域和工作表作用域的具名區域。通過名稱?matrix1?從?book.names?集合中獲取特定的具名區域對象。

.refers_to_range:是具名區域對象的一個屬性,返回該具名區域所引用的具體單元格范圍(Range 對象)。例如,如果?matrix1?引用的是?Sheet1!A1:B2,那么?.refers_to_range?會返回這個范圍。

2.為常量或公式取名

使用add方法。

book.names.add("EURUSD", "=1.1151")

"EURUSD":是新具名區域的名稱,遵循命名規則(如不能以數字開頭,不能包含空格等)。

=1.1151":如果直接賦值(如?=1.1151),表示該具名區域的值是?1.1151。如果引用單元格(如?=Sheet1!A1),表示該具名區域的值是?Sheet1!A1?單元格的值。

5.通過 Python 來運行 VBA 宏

如果你手上有一些包含大量 VBA 代碼的舊式 Excel 項目,那么要將所有東西都遷移到 Python 并非易事。在這種情況下,可以通過 Python 來運行 VBA 宏。

xlwings 通過?macro()?方法將 VBA 代碼橋接到 Python,使其像原生函數一樣調用。
xl 文件夾中的 vba.xlsm 文件。文件的 Module1 中有如下代碼:

步驟1:連接 VBA 工作簿

通過?xw.Book()?加載包含 VBA 代碼的?vba.xlsm?文件。返回一個?Book?對象?vba_book,用于操作該工作簿。

步驟2:綁定 VBA 函數

vba_book.macro( )?將 VBA 函數?MySum?綁定到 Python 變量?mysum。此時?mysum?像一個 Python 函數,可直接調用。

調用:

傳遞參數?5?和?4?給 VBA 函數?MySum ,VBA 執行?x + y?計算,返回結果?9.0

步驟3:綁定 VBA 子程序

同理,將 VBA 子程序?ShowMsgBox?綁定到?show_msgbox。子程序無返回值,但會執行操作(如彈窗)。

調用:

    傳遞字符串參數?"Hello xlwings!"。VBA 執行?MsgBox?彈出消息框,需手動關閉后才能繼續。

    步驟4:關閉工作簿

    關閉book對象(一定要先關閉對話框)。若子程序彈出對話框未關閉,直接關閉工作簿會報錯。?

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

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

    相關文章

    Elasticsearch客戶端工具初探--kibana

    1 Kibana簡介 Kibana是Elastic Stack(ELK)中的可視化工具,用于對Elasticsearch中存儲的數據進行搜索、分析和可視化展示。它提供了直觀的Web界面,支持日志分析、業務監控、數據探索等功能,廣泛應用于運維監控、安全分析…

    珍珠港海軍造船廠的“水魔法”:PcVue賦能造船心臟

    導讀 項目背景 干船塢運作與控制需求 PcVue SCADA 系統的引入以及系統升級 項目成果 憑借更高的安全性,PcVue 對干船塢的充水和排水過程進行精準控制。 項目背景 珍珠港海軍基地與希卡姆空軍基地均依托這座歷史悠久的港口而發展,該港口在夏威夷原住…

    3. 軸指令(omron 機器自動化控制器)——>MC_GearInPos

    機器自動化控制器——第三章 軸指令 17 MC_GearInPos變量?輸入變量?輸出變量?輸入輸出變量 功能說明?時序圖?重啟運動指令?多重啟動運動指令?異常 示例程序?動作示例?梯形圖?結構文本(ST) MC_GearInPos 設定主軸和從軸間的齒輪比,進行電子齒輪動作。 指定…

    vue 加載動態效果,自行封裝組件

    背景&#xff1a; 在項目開發中&#xff0c;會請求接口&#xff0c;就會遇到加載中、加載成功、加載失敗、和加載成功但暫無數據等情況。就自行封裝了一個加載組件。采用vue3elementsetup組合式寫法。 實現效果&#xff1a; 封裝組件&#xff1a; //封裝組件 <template>…

    八目導航 version:1.2

    八目導航 version&#xff1a;1.2 網址&#xff1a;https://crbssseooebc.sealoshzh.site/ 日志&#xff1a; 1.美化了頁面 2.新增并替換了部分網址 3.不會出現危險網址提示(指的是進入八目導航時) 4.為網址圖標增加了動效 5.采用Vue3框架重新實現了該導航 注意&#xff1a;該…

    WebWorkers在項目中的使用案例

    Worker | 文檔 worker 線程的關閉在主線程和 worker 線程都能進行操作&#xff0c;但對 worker 線程的影響略有不同。 // main.js&#xff08;主線程&#xff09; const myWorker new Worker(/worker.js); // 創建worker myWorker.terminate(); // 關閉worker 復制代碼 // wor…

    掌握Linux項目自動化構建:從零入門make與Makefile

    文章目錄 前言&#xff1a; 一、初識自動化構建工具1.1 什么是make/Makefile&#xff1f;1.2 快速體驗 二、深入理解核心機制2.1 依賴關系與依賴方法2.2 偽目標的妙用2.3 具體語法a.makefile的基本雛形b.makefile推導原則&#xff01; 三、更加具有通用型的makefile1. 變量定義…

    深度分頁優化思路

    深度分頁優化思路 思考以下問題 查詢以下SQL的流程是怎么樣的呢&#xff1f; 為什么只查詢10條數據需要7秒&#xff1f; # 查詢時間7秒 SELECT * FROM user ORDER BY age LIMIT 1000000, 10問題分析 為什么分頁查詢隨著翻頁的深入&#xff0c;會變得越來越慢。 其實&#xff0…

    使用 Vite 提升前端開發體驗:入門與配置指南

    在現代前端開發中&#xff0c;構建工具的選擇對開發效率和項目性能有著至關重要的影響。Vite 是一個新興的前端構建工具&#xff0c;由 Vue.js 的作者尤雨溪開發&#xff0c;旨在通過利用現代瀏覽器的原生 ES 模塊特性&#xff0c;提供更快的開發服務器啟動速度和更高效的熱更新…

    MYSQL基本語法使用

    目錄 一、mysql之DML 增加語句 刪除語句和truncate 更新語句 replace語句 select查詢語句 二、select多種用法 查詢時的別名使用 分組 分組后的篩選 結果排序 分頁功能 分表 多表關聯查詢 練習題 一、單表查詢 二、多表查詢 前面已經學習了mysql的安裝和基本語…

    自動化測試selenium(Java版)

    1.準備工作 1.1.下載瀏覽器 自動化測試首先我們要準備一個瀏覽器,我們這里使用谷歌(chrome)瀏覽器. 1.2.安裝驅動管理 每一個瀏覽器都是靠瀏覽器驅動程序來啟動,但是瀏覽器的版本更新非常快,可能我們今天測試的是一個版本,第二天發布了一個新的版本,那么我們就要重構代碼,很…

    HarmonyOS Next應用架構設計與模塊化開發詳解

    引言 在HarmonyOS Next開發中&#xff0c;合理的應用架構設計和模塊化開發是構建高效、可維護應用的關鍵。本文將深入探討HarmonyOS Next應用的架構設計思路&#xff0c;并通過實際代碼示例展示如何實現模塊化開發。 應用架構設計 HarmonyOS Next應用通常采用分層架構設計&…

    伊利工業旅游4.0,近距離感受高品質的魅力

    3月24日&#xff0c;在2025年第112屆全國糖酒會&#xff08;簡稱春糖&#xff09;前夕&#xff0c;伊利集團“可感知高品質探尋薈”活動在成都召開&#xff0c;記者走進伊利在西南地區最大的乳制品生產基地—邛崍工廠&#xff0c;零距離見證液態奶、酸奶、冷飲等乳制品的誕生&a…

    測試用例生成平臺通過大模型升級查詢功能,生成智能測試用例

    在測試工作中&#xff0c;查詢功能是各類系統的核心模塊&#xff0c;傳統的測試用例編寫往往耗時且重復。如何讓老舊平臺煥發新活力&#xff1f;本文將結合大模型技術&#xff0c;通過用戶輸入的字段信息&#xff0c;自動化生成高效、精準的測試用例。同時&#xff0c;我們還將…

    基于javaweb的SpringBoot雪具商城系統設計與實現(源碼+文檔+部署講解)

    技術范圍&#xff1a;SpringBoot、Vue、SSM、HLMT、Jsp、PHP、Nodejs、Python、爬蟲、數據可視化、小程序、安卓app、大數據、物聯網、機器學習等設計與開發。 主要內容&#xff1a;免費功能設計、開題報告、任務書、中期檢查PPT、系統功能實現、代碼編寫、論文編寫和輔導、論…

    【AI學習筆記】Coze平臺實現將Excel文檔批量導入數據庫全過程

    背景前搖&原視頻教程&#xff1a; 最近看到很多同學都在用Coze平臺操作數據&#xff0c;我也想了解一下工作流的搭建和數據處理過程&#xff0c;但是一下子又看不懂太復雜的邏輯&#xff0c;于是上B站搜索相關的基礎教程。 Coze官方教程&#xff1a; 之前有看過Coze平臺…

    【Axure高保真原型】縱向圖片輪播

    今天和大家分享縱向圖片輪播的原型模版&#xff0c;載入后會自動循環輪播&#xff0c;鼠標移入圖片后停止輪播&#xff0c;可以通過點擊上下箭頭&#xff0c;向上或向下滑動切換上一張或下一張圖片&#xff0c;也可以點擊右側小圓點快速切換至對應圖片……具體效果可以打開下方…

    力扣32.最長有效括號(棧)

    32. 最長有效括號 - 力扣&#xff08;LeetCode&#xff09; 代碼區&#xff1a; #include<stack> #include<string> /*最長有效*/ class Solution { public:int longestValidParentheses(string s) {stack<int> st;int ans0;int ns.length();st.push(-1);fo…

    如何在 React 項目中使用React.lazy和Suspense實現組件的懶加載?

    大白話如何在 React 項目中使用React.lazy和Suspense實現組件的懶加載&#xff1f; 在 React 項目里&#xff0c;有時候組件功能多、體積大&#xff0c;要是一次性把所有組件都加載進來&#xff0c;網頁加載速度就會變慢。而 React 提供了 React.lazy 和 Suspense 這兩個好東西…

    ffmpeg-將多個視頻切片成一個新的視頻

    使用 ffmpeg 工具可以輕松完成將多個視頻切片合并為一個新的視頻。以下是實現這一目標的具體步驟和命令。 步驟概覽 1、將多個視頻切片。 2、創建文本文件列出切片的視頻片段。 3、使用 ffmpeg 合并這些切片為一個新的視頻。 一&#xff1a;安裝 ffmpeg 確保你的系統中已經安…