Python調(diào)整Excel多個(gè)工作簿的行高和列寬
前言
這一篇整理的是 第5章 案例01:精確調(diào)整多個(gè)工作簿的行高和列寬。前面章節(jié)更多關(guān)注工作簿的新建、打開、保存、打印等文件層面的自動(dòng)化操作,而從這一章開始,重點(diǎn)逐漸轉(zhuǎn)向 Excel 表格本身的格式處理。
在真實(shí)辦公場(chǎng)景里,很多 Excel 文件不是不能用,而是“看起來(lái)很亂”。比如列寬太窄導(dǎo)致內(nèi)容顯示成一串井號(hào),行高太低導(dǎo)致文字被遮擋,不同部門提交的模板列寬行高不一致,導(dǎo)出的數(shù)據(jù)表默認(rèn)列寬又?jǐn)D又難看。數(shù)據(jù)本身可能沒(méi)錯(cuò),但格式不統(tǒng)一,給人的第一感覺(jué)就是不專業(yè)。
這類問(wèn)題如果只靠手工調(diào)整,一個(gè)文件還可以接受,幾十個(gè)文件就會(huì)變成重復(fù)勞動(dòng)。所以這一節(jié)的價(jià)值不是“調(diào)整一個(gè)單元格”,而是把一批工作簿統(tǒng)一處理成相同的版式標(biāo)準(zhǔn)。
這張圖展示的是本文的整體主題:使用 Python + Excel 自動(dòng)化,批量調(diào)整多個(gè)工作簿的行高和列寬。

從圖中可以看出,這個(gè)案例的核心不是簡(jiǎn)單“美化表格”,而是通過(guò)腳本對(duì)多個(gè) Excel 工作簿進(jìn)行統(tǒng)一規(guī)范處理。左側(cè)是一批待處理的報(bào)表文件,中間通過(guò) Python 代碼執(zhí)行批量操作,右側(cè)得到格式一致的工作簿結(jié)果。對(duì)于辦公自動(dòng)化來(lái)說(shuō),這種能力很基礎(chǔ),但非常實(shí)用。
我的建議是:不要把行高列寬調(diào)整當(dāng)成小功能看待。在批量報(bào)表、導(dǎo)出數(shù)據(jù)整理、打印前排版這些場(chǎng)景中,格式統(tǒng)一往往直接影響文件可讀性和交付質(zhì)量。
2. 應(yīng)用場(chǎng)景:為什么要統(tǒng)一行高和列寬
Excel 的格式問(wèn)題,很多時(shí)候不是技術(shù)難題,而是標(biāo)準(zhǔn)化問(wèn)題。不同人做出來(lái)的表格寬窄不同,導(dǎo)出的數(shù)據(jù)列寬不合適,打印時(shí)一頁(yè)顯示不完整,這些都會(huì)讓后續(xù)處理變麻煩。尤其是多個(gè)工作簿要匯總、打印、歸檔或提交時(shí),格式不一致會(huì)非常明顯。
這張圖展示的是批量統(tǒng)一格式的應(yīng)用場(chǎng)景,包括部門模板、打印前美化和導(dǎo)出數(shù)據(jù)整理。

從圖中可以看出,統(tǒng)一行高列寬不是單純?yōu)榱?ldquo;好看”,而是為了讓多個(gè) Excel 文件在結(jié)構(gòu)上保持一致。比如部門模板需要統(tǒng)一規(guī)范,打印前需要保證版面整齊,導(dǎo)出數(shù)據(jù)需要便于篩選、分析和匯報(bào)。這些場(chǎng)景都有一個(gè)共同點(diǎn):文件多、格式亂、規(guī)則可以提前定義。
批量調(diào)整行高和列寬的本質(zhì),是把人工拖拽列寬、調(diào)整行高的動(dòng)作,轉(zhuǎn)換成可重復(fù)執(zhí)行的格式規(guī)則。
我認(rèn)為比較適合使用這個(gè)腳本的場(chǎng)景主要有三類。
第一類是 部門模板統(tǒng)一。例如多個(gè)部門提交同一類報(bào)表,但每個(gè)文件的列寬、行高、顯示效果都不一樣,這時(shí)可以統(tǒng)一設(shè)置成固定標(biāo)準(zhǔn),方便后續(xù)歸檔和比較。
第二類是 打印前美化。有些報(bào)表內(nèi)容沒(méi)問(wèn)題,但打印出來(lái)后列寬太窄、文字換行異常、頁(yè)面看起來(lái)很擠。提前統(tǒng)一列寬和行高,可以減少打印時(shí)的排版問(wèn)題。
第三類是 導(dǎo)出數(shù)據(jù)整理。很多系統(tǒng)導(dǎo)出的 Excel 文件,默認(rèn)列寬經(jīng)常是 8.38,長(zhǎng)字段會(huì)顯示不完整。批量調(diào)整后,表格會(huì)更適合閱讀、篩選和二次處理。
但要注意,不是所有表格都適合一刀切。如果不同工作表的字段差異很大,或者某些列需要特殊寬度,就不能簡(jiǎn)單設(shè)置整張表統(tǒng)一寬度,而要按列名、列號(hào)或業(yè)務(wù)規(guī)則分別處理。
3. 核心流程:批量調(diào)整行高和列寬怎么跑
這一節(jié)的核心流程并不復(fù)雜:先遍歷文件夾中的工作簿,再逐個(gè)打開工作簿,然后遍歷每個(gè)工作簿里的工作表,最后設(shè)置列寬和行高,保存并關(guān)閉文件。
這張圖展示的是批量調(diào)整行高和列寬的完整流程:遍歷文件夾、打開工作簿、遍歷工作表、調(diào)整列寬行高、保存并關(guān)閉。

從圖中可以看出,腳本處理的對(duì)象有三層:第一層是文件夾,第二層是工作簿,第三層是工作表。很多新手寫 Excel 自動(dòng)化代碼容易混淆對(duì)象層級(jí),直接對(duì)工作簿設(shè)置格式,結(jié)果發(fā)現(xiàn)沒(méi)有生效。其實(shí)真正要調(diào)整列寬行高的是工作表里的單元格區(qū)域。
這里最關(guān)鍵的判斷是:批量處理不是一次性操作所有文件,而是按“一個(gè)文件一個(gè)文件、一個(gè)工作表一個(gè)工作表”的順序處理。這樣寫雖然步驟多一點(diǎn),但更穩(wěn)定,也更容易排查哪個(gè)文件出問(wèn)題。
4. 基礎(chǔ)代碼:批量處理文件夾內(nèi)所有工作簿
下面這段代碼是基礎(chǔ)版本。它會(huì)遍歷指定文件夾下所有 Excel 文件,然后對(duì)每個(gè)工作簿中的所有工作表統(tǒng)一設(shè)置列寬和行高。實(shí)際使用時(shí),你只需要修改 folder_path、target_column_width 和 target_row_height。
import os
import xlwings as xw
# 目標(biāo)文件夾:里面放多個(gè) Excel 工作簿
folder_path = r"e:\file\target"
# 統(tǒng)一列寬和行高
target_column_width = 18
target_row_height = 20
app = xw.App(visible=False, add_book=False)
try:
for file_name in os.listdir(folder_path):
# 跳過(guò) Excel 臨時(shí)文件
if file_name.startswith("~$"):
continue
# 只處理 Excel 文件
if not file_name.lower().endswith((".xlsx", ".xls", ".xlsm")):
continue
full_path = os.path.join(folder_path, file_name)
wb = app.books.open(full_path)
for sht in wb.sheets:
# 調(diào)整整張工作表的列寬
sht.cells.column_width = target_column_width
# 調(diào)整整張工作表的行高
sht.cells.row_height = target_row_height
wb.save()
wb.close()
print(f"已調(diào)整行高列寬:{file_name}")
finally:
app.quit()
這段代碼里,os.listdir(folder_path) 負(fù)責(zé)列出文件夾里的文件,app.books.open(full_path) 負(fù)責(zé)打開工作簿,for sht in wb.sheets 負(fù)責(zé)遍歷所有工作表,真正調(diào)整格式的是下面兩句:
sht.cells.column_width = target_column_width sht.cells.row_height = target_row_height
如果你只是想快速統(tǒng)一整張表的顯示效果,這種寫法很直接。它的優(yōu)點(diǎn)是簡(jiǎn)單、可讀性強(qiáng)、適合入門練習(xí);缺點(diǎn)是如果工作表很大,或者曾經(jīng)誤操作到很遠(yuǎn)的空白區(qū)域,整表處理可能會(huì)比較慢。
這里不要忽略 wb.save() 和 wb.close()。如果只調(diào)整不保存,結(jié)果不會(huì)寫回文件;如果保存后不關(guān)閉,批量處理多個(gè)工作簿時(shí)容易殘留 Excel 窗口或后臺(tái)進(jìn)程。
5. 參數(shù)理解:column_width 和 row_height 到底是什么單位
很多人剛開始學(xué)這一節(jié)時(shí),會(huì)把列寬和行高理解成像素。這個(gè)理解不準(zhǔn)確。Excel 的列寬和行高不是同一種單位,列寬更接近字符寬度,行高更接近排版里的磅值。
這張圖展示的是 column_width 和 row_height 的含義:列寬用字符寬度衡量,行高用磅 pt 衡量。

從圖中可以看出,column_width 控制的是列的橫向?qū)挾?,常見默認(rèn)值大約是 8.38;row_height 控制的是行的縱向高度,常見默認(rèn)值大約是 15。當(dāng)數(shù)值變大時(shí),列會(huì)變寬,行會(huì)變高。
列寬不是像素,而是以字符寬度為參考;行高不是字符數(shù),而是以磅 pt 為單位。這個(gè)區(qū)別必須分清楚,否則你會(huì)很難解釋為什么設(shè)置同樣的數(shù)字,列寬和行高顯示效果完全不同。
一般情況下,可以先按下面這個(gè)經(jīng)驗(yàn)值設(shè)置:
| 使用場(chǎng)景 | 推薦列寬 | 推薦行高 | 說(shuō)明 |
|---|---|---|---|
| 普通數(shù)據(jù)表 | 15 ~ 18 | 18 ~ 22 | 適合日常查看和篩選 |
| 打印報(bào)表 | 18 ~ 22 | 20 ~ 25 | 適合打印前排版 |
| 表頭較大 | 18 ~ 25 | 25 ~ 30 | 適合標(biāo)題行、匯總表 |
| 長(zhǎng)文本字段 | 25 以上 | 適當(dāng)增加 | 需要結(jié)合自動(dòng)換行使用 |
建議先在一個(gè)測(cè)試文件里調(diào)整出滿意效果,再把數(shù)值寫進(jìn)批量腳本。不要一上來(lái)就對(duì)幾十個(gè)文件批量運(yùn)行,因?yàn)楦袷筋惸_本一旦寫錯(cuò),也會(huì)批量影響所有文件。
6. 進(jìn)階處理:只調(diào)整已使用區(qū)域 used_range
基礎(chǔ)代碼使用的是 sht.cells,它表示整張工作表上的所有單元格。這個(gè)寫法簡(jiǎn)單,但有一個(gè)明顯問(wèn)題:如果工作表范圍很大,或者以前誤操作過(guò)很遠(yuǎn)的空白單元格,整表設(shè)置格式可能會(huì)拖慢速度。
更穩(wěn)的做法是只處理已使用區(qū)域,也就是 used_range。這樣既能減少無(wú)效操作,也能避免把整張空白表都格式化。
used = sht.used_range used.column_width = target_column_width used.row_height = target_row_height
不過(guò)這里也要保持清醒:used_range 取決于 Excel 對(duì)“已使用區(qū)域”的判斷。如果某個(gè)工作表曾經(jīng)在很遠(yuǎn)的位置填過(guò)內(nèi)容又刪除,Excel 可能仍然認(rèn)為那片區(qū)域被使用過(guò)。遇到這種情況,可以先手動(dòng)清理異??瞻讌^(qū)域,或者通過(guò)另存為、清除格式等方式重置表格范圍。
下面是一個(gè)更偏實(shí)戰(zhàn)的版本,會(huì)優(yōu)先處理已使用區(qū)域,并增加簡(jiǎn)單日志輸出:
import os
import xlwings as xw
folder_path = r"e:\file\target"
target_column_width = 18
target_row_height = 20
app = xw.App(visible=False, add_book=False)
try:
for file_name in os.listdir(folder_path):
if file_name.startswith("~$"):
continue
if not file_name.lower().endswith((".xlsx", ".xls", ".xlsm")):
continue
full_path = os.path.join(folder_path, file_name)
wb = None
try:
wb = app.books.open(full_path)
for sht in wb.sheets:
used = sht.used_range
used.column_width = target_column_width
used.row_height = target_row_height
wb.save()
print(f"處理完成:{file_name}")
except Exception as e:
print(f"處理失敗:{file_name},原因:{e}")
finally:
if wb is not None:
wb.close()
finally:
app.quit()
如果你的表格數(shù)據(jù)區(qū)域很大,或者文件數(shù)量很多,不建議無(wú)腦使用整張表 cells。先判斷數(shù)據(jù)范圍,再?zèng)Q定使用 cells 還是 used_range,這才是更接近真實(shí)辦公環(huán)境的寫法。
7. 常見坑與結(jié)果驗(yàn)證:不要只看腳本有沒(méi)有報(bào)錯(cuò)
格式類自動(dòng)化腳本有一個(gè)特點(diǎn):它可能不報(bào)錯(cuò),但結(jié)果不一定符合預(yù)期。比如列寬太寬,打印時(shí)超出頁(yè)面;行高太高,導(dǎo)致一頁(yè)內(nèi)容變成多頁(yè);臨時(shí)文件沒(méi)有跳過(guò),導(dǎo)致處理異常;或者腳本對(duì)整張空表做了格式化,文件體積變大。
這張圖展示的是批量調(diào)整行高列寬時(shí)的常見坑和結(jié)果驗(yàn)證方法,包括跳過(guò)臨時(shí)文件、保存前檢查、只調(diào)整已用區(qū)域,以及調(diào)整前后的效果對(duì)比。

從圖中可以看出,真正可靠的批量格式調(diào)整,不是代碼跑完就結(jié)束,而是要檢查調(diào)整前后的效果。左側(cè)的問(wèn)題示例里,表格內(nèi)容擁擠、列寬不一致、部分內(nèi)容顯示不完整;右側(cè)調(diào)整后,表頭、列寬、行高和數(shù)據(jù)展示更規(guī)整。這個(gè)對(duì)比很關(guān)鍵,因?yàn)樗f(shuō)明結(jié)果驗(yàn)證必須回到 Excel 文件本身。
第一個(gè)常見坑是 沒(méi)有跳過(guò)臨時(shí)文件。Excel 打開文件時(shí)會(huì)生成以 ~$ 開頭的臨時(shí)文件,如果腳本誤處理這些文件,可能出現(xiàn)打開失敗或權(quán)限異常。
if file_name.startswith("~$"):
continue
第二個(gè)常見坑是 沒(méi)有備份原文件。格式批量修改會(huì)直接寫回工作簿,如果效果不理想,又沒(méi)有備份,回退就很麻煩。
推薦做法是先復(fù)制一份測(cè)試目錄,只在測(cè)試目錄里跑腳本,確認(rèn)效果后再處理正式文件。
第三個(gè)常見坑是 把所有列設(shè)置成同一個(gè)寬度。這種做法簡(jiǎn)單,但不一定合理。比如產(chǎn)品名稱列可能需要 25,日期列可能只需要 12,金額列可能需要 15。如果所有列都設(shè)為 18,可能只是“看起來(lái)統(tǒng)一”,但不一定最適合閱讀。
如果要按列精確調(diào)整,可以這樣寫:
column_widths = {
"A": 25, # 產(chǎn)品名稱
"B": 15, # 類別
"C": 12, # 銷售人員
"D": 15, # 金額
"E": 14, # 日期
}
for col, width in column_widths.items():
sht.range(f"{col}:{col}").column_width = width
第四個(gè)常見坑是 只看控制臺(tái)輸出,不看 Excel 實(shí)際效果。格式調(diào)整完成后,至少要抽查幾個(gè)文件,重點(diǎn)檢查列寬是否一致、行高是否合適、文字是否被遮擋、打印預(yù)覽是否正常。
不要把“腳本成功運(yùn)行”等同于“業(yè)務(wù)結(jié)果正確”。辦公自動(dòng)化最終交付的是文件效果,不是控制臺(tái)里的幾行日志。
8. 更貼近辦公場(chǎng)景的完整版本
如果只為學(xué)習(xí),前面的基礎(chǔ)代碼已經(jīng)夠用。但如果要真正拿來(lái)處理一批報(bào)表,我會(huì)建議把路徑檢查、臨時(shí)文件過(guò)濾、異常處理、日志輸出、保存關(guān)閉都寫完整。腳本不是越短越好,而是要能穩(wěn)定復(fù)用。
下面這版代碼更適合日常辦公使用。它會(huì)對(duì)指定目錄下的 Excel 文件進(jìn)行批量處理,跳過(guò)臨時(shí)文件,按列設(shè)置不同列寬,統(tǒng)一行高,并在控制臺(tái)輸出處理結(jié)果。
import os
import xlwings as xw
folder_path = r"e:\file\target"
# 不同列設(shè)置不同寬度,更貼近真實(shí)報(bào)表
column_widths = {
"A": 25,
"B": 15,
"C": 15,
"D": 18,
"E": 14,
}
target_row_height = 22
if not os.path.exists(folder_path):
raise FileNotFoundError(f"目標(biāo)文件夾不存在:{folder_path}")
app = xw.App(visible=False, add_book=False)
success_count = 0
fail_count = 0
try:
for file_name in os.listdir(folder_path):
if file_name.startswith("~$"):
continue
if not file_name.lower().endswith((".xlsx", ".xls", ".xlsm")):
continue
full_path = os.path.join(folder_path, file_name)
wb = None
try:
wb = app.books.open(full_path)
for sht in wb.sheets:
# 統(tǒng)一行高
sht.used_range.row_height = target_row_height
# 按列精確設(shè)置列寬
for col, width in column_widths.items():
sht.range(f"{col}:{col}").column_width = width
wb.save()
success_count += 1
print(f"成功:{file_name}")
except Exception as e:
fail_count += 1
print(f"失敗:{file_name},原因:{e}")
finally:
if wb is not None:
wb.close()
finally:
app.quit()
print(f"處理完成:成功 {success_count} 個(gè),失敗 {fail_count} 個(gè)")
這版代碼相對(duì)更穩(wěn),因?yàn)樗鼪](méi)有簡(jiǎn)單粗暴地把所有列都設(shè)成一個(gè)寬度,而是允許按列定義不同寬度。比如 A 列是產(chǎn)品名稱,就給寬一點(diǎn);E 列是日期,就不需要太寬。這樣更符合真實(shí)報(bào)表的閱讀習(xí)慣。
真正實(shí)用的腳本,一定要把業(yè)務(wù)規(guī)則寫進(jìn)去,而不是只追求代碼短。
9. 效果驗(yàn)證:調(diào)整完成后應(yīng)該檢查什么
腳本運(yùn)行完成后,建議至少?gòu)乃膫€(gè)角度驗(yàn)證。
第一,看 文件是否都被處理??刂婆_(tái)輸出成功數(shù)量和失敗數(shù)量,如果失敗數(shù)量不為 0,要先定位失敗文件,不要直接認(rèn)為整體完成。
第二,看 列寬是否符合預(yù)期。尤其是長(zhǎng)文本列、金額列、日期列,不能只看第一行,要抽查多行數(shù)據(jù)。
第三,看 行高是否合適。如果開啟了自動(dòng)換行,行高太低會(huì)遮擋文字;如果行高過(guò)大,打印時(shí)會(huì)浪費(fèi)頁(yè)面空間。
第四,看 打印預(yù)覽是否正常。如果這個(gè)表格后續(xù)要打印,必須檢查頁(yè)面是否橫向溢出、是否分頁(yè)異常、是否標(biāo)題行被擠壓。
比較穩(wěn)妥的流程是:先小范圍測(cè)試 2 到 3 個(gè)文件,確認(rèn)效果后,再批量處理完整目錄。不要一上來(lái)就對(duì)正式文件夾全量執(zhí)行。
如果要做得更嚴(yán)謹(jǐn),可以把處理前文件夾復(fù)制一份作為備份。格式類腳本不像數(shù)據(jù)計(jì)算那樣容易肉眼發(fā)現(xiàn)錯(cuò)誤,有時(shí)候只是列寬多了幾格、打印多了一頁(yè),等提交或打印時(shí)才會(huì)發(fā)現(xiàn)。
10. 總結(jié)提升:格式統(tǒng)一也是自動(dòng)化能力的一部分
這一節(jié)看起來(lái)只是調(diào)整行高和列寬,但背后其實(shí)是 Excel 自動(dòng)化里很重要的一類能力:格式標(biāo)準(zhǔn)化。很多辦公數(shù)據(jù)不是不能處理,而是缺少統(tǒng)一規(guī)范。只要格式標(biāo)準(zhǔn)統(tǒng)一,后續(xù)查看、打印、匯總和歸檔都會(huì)輕松很多。
我認(rèn)為這一節(jié)真正要掌握的,不是某一句代碼,而是批量格式處理的思路。
第一,先判斷處理對(duì)象。是一個(gè)工作簿,還是一個(gè)文件夾里的多個(gè)工作簿;是所有工作表,還是指定工作表。
第二,先確定格式標(biāo)準(zhǔn)。列寬是多少,行高是多少,是否不同列用不同寬度,是否只處理已使用區(qū)域。
第三,先測(cè)試再批量。格式類腳本一旦批量運(yùn)行,影響范圍很大,不要跳過(guò)測(cè)試和備份。
第四,運(yùn)行后必須驗(yàn)證。腳本不報(bào)錯(cuò)只是第一層結(jié)果,最終還要看 Excel 文件是否真的變得更規(guī)整、更清晰、更適合閱讀和打印。
如果只是會(huì)寫 column_width 和 row_height,但不知道什么時(shí)候用 cells、什么時(shí)候用 used_range、什么時(shí)候按列單獨(dú)設(shè)置,那還只是停留在復(fù)制代碼階段。
通過(guò)這一節(jié),我對(duì) Python 辦公自動(dòng)化的理解又往前走了一步:自動(dòng)化不是單純讓程序替我點(diǎn)幾下鼠標(biāo),而是把重復(fù)的、可標(biāo)準(zhǔn)化的辦公動(dòng)作,變成可復(fù)用、可驗(yàn)證、可復(fù)盤的處理流程。行高列寬雖小,但它是報(bào)表專業(yè)度的一部分。
以上就是Python調(diào)整Excel多個(gè)工作簿的行高和列寬的詳細(xì)內(nèi)容,更多關(guān)于Python調(diào)整Excel行高和列寬的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Pandas merge合并兩個(gè)DataFram的實(shí)現(xiàn)
本文主要介紹了Pandas merge合并兩個(gè)DataFram的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-03-03
Pandas sample隨機(jī)抽樣的實(shí)現(xiàn)
隨機(jī)抽樣,是統(tǒng)計(jì)學(xué)中常用的一種方法,本文主要介紹了Pandas sample隨機(jī)抽樣的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-06-06
Python開發(fā)從入門到精通:Web框架Django高級(jí)應(yīng)用實(shí)戰(zhàn)
Django高級(jí)功能是指在Django框架基礎(chǔ)上提供的高級(jí)特性,包括中間件、信號(hào)、緩存、表單驗(yàn)證、權(quán)限管理等,本文給大家介紹Python開發(fā)從入門到精通:Web框架Django高級(jí)應(yīng)用,感興趣的朋友一起看看吧2026-06-06
Django-xadmin+rule對(duì)象級(jí)權(quán)限的實(shí)現(xiàn)方式
今天小編就為大家分享一篇Django-xadmin+rule對(duì)象級(jí)權(quán)限的實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-03-03
Python如何獲取當(dāng)前路徑并列出當(dāng)前路徑下的所有文件
這篇文章主要介紹了Python如何獲取當(dāng)前路徑并列出當(dāng)前路徑下的所有文件問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-06-06
Python 類與元類的深度挖掘 I【經(jīng)驗(yàn)】
super() 方法解決了類->實(shí)例實(shí)踐過(guò)程中關(guān)于命名空間的一些問(wèn)題,而關(guān)于生成對(duì)象的流程,我們知道初始化實(shí)例是通過(guò)類的 __init__() 方法完成的,在此之前可能涉及到一些其它的準(zhǔn)備工作,包括接下來(lái)提到的 mro() 方法以及關(guān)鍵的元類->類的過(guò)程2016-05-05

