亚洲有码Av一区二区三区_国产高清啪啪免费视频_69色视频国产_国产成人人人爆出白浆_国产精品自在线拍国_一本久久伊人热热精品无码_午夜性刺激在线看免费带字幕_助力高品质欧美狂喷水_亚洲精品日韩无码_精品无码一区二区三区蜜臀_麻豆高清国产AV_熟妇人素无码中文字幕_亚洲a级片在线观看_国产欧美日韩三区_99国产成人高清在线观看

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線(xiàn)實(shí)戰(zhàn)洞察。

openpyxl樣式重復(fù)注冊(cè)報(bào)錯(cuò)解決:NamedStyle機(jī)制與Excel導(dǎo)出實(shí)踐

openpyxl樣式重復(fù)注冊(cè)報(bào)錯(cuò)解決:NamedStyle機(jī)制與Excel導(dǎo)出實(shí)踐 我在寫(xiě)批量導(dǎo)出Excel的腳本時(shí)最怕的不是業(yè)務(wù)邏輯復(fù)雜而是撞上樣式這種小但磨人的報(bào)錯(cuò)。前兩天在跑客戶(hù)訂單導(dǎo)出第一次執(zhí)行一切正常第二次一運(yùn)行就崩了控制臺(tái)丟出來(lái)一行干凈利落的錯(cuò)誤Style customer_style exists already。當(dāng)時(shí)我的第一反應(yīng)是同名樣式怎么會(huì)重復(fù)我明明全項(xiàng)目里只定義了一次customer_style。順著調(diào)用鏈一路翻下去才意識(shí)到問(wèn)題根本不在業(yè)務(wù)代碼而在openpyxl的樣式注冊(cè)機(jī)制——命名樣式在一個(gè)工作簿里是按名字全局索引的重復(fù)注冊(cè)就會(huì)被攔截。這篇筆記我就把這個(gè)問(wèn)題從頭到尾拆一遍包括報(bào)錯(cuò)背后的原理、四種不同的解決思路、適合批量導(dǎo)出場(chǎng)景的完整代碼模板以及我踩過(guò)的幾個(gè)坑。如果你正在用openpyxl寫(xiě)Excel導(dǎo)出、報(bào)表生成、表格自動(dòng)化工具這篇應(yīng)該能幫你省下不少排查時(shí)間。1. 先搞清楚這個(gè)報(bào)錯(cuò)到底是怎么來(lái)的1.1 報(bào)錯(cuò)現(xiàn)場(chǎng)與異常特征openpyxl不同版本拋出的異常形式略有差別。我用的是openpyxl 3.1.x實(shí)際輸出長(zhǎng)這樣ValueError: Style customer_style exists already在更早的版本里有人遇到過(guò)KeyError: Style customer_style exists already沒(méi)有被引號(hào)包裹。雖然顯示形式不同但核心信息一致代碼向同一個(gè)Workbook對(duì)象注冊(cè)了兩次同名的NamedStyle。很多剛接觸openpyxl的同學(xué)會(huì)對(duì)這個(gè)報(bào)錯(cuò)感到困惑因?yàn)楣饪创a自己可能只new了一次樣式對(duì)象。這里要先理解Excel和openpyxl對(duì)命名樣式的約束——命名樣式相當(dāng)于工作簿級(jí)別的格式模板里面定義好了字體、邊框、填充色、數(shù)字格式等一堆屬性然后以名字為索引供多個(gè)單元格反復(fù)引用。既然名字是索引那同一本工作簿里樣式名自然必須唯一。這就是customer_style exists already這條錯(cuò)誤信息的本質(zhì)。1.2 NamedStyle的注冊(cè)機(jī)制才是元兇要理解這個(gè)報(bào)錯(cuò)必須清楚openpyxl內(nèi)部是怎么處理命名樣式的。每個(gè)Workbook對(duì)象里都有一個(gè)named_styles屬性它本質(zhì)上是一個(gè)特殊的樣式列表。當(dāng)你做了類(lèi)似下面的操作from openpyxl.styles import NamedStyle style NamedStyle(namecustomer_style) ws[A1].style styleopenpyxl大概率會(huì)自動(dòng)把這個(gè)NamedStyle對(duì)象注冊(cè)到wb.named_styles列表中。注冊(cè)的邏輯是先檢查列表里是否已經(jīng)存在同名的樣式如果存在立即拋異常。這里的關(guān)鍵認(rèn)知是同樣是NamedStyle(namecustomer_style)在業(yè)務(wù)代碼里每new一次都覺(jué)得是新對(duì)象但到了Workbook的樣式注冊(cè)表里名字才是唯一標(biāo)識(shí)。名字相同就等于同一個(gè)Key后面再注冊(cè)就是重復(fù)Key。這個(gè)機(jī)制跟Python字典的行為非常像——同一個(gè)字典里不可能存在兩個(gè)相同的key否則后來(lái)的值無(wú)法區(qū)分。openpyxl之所以設(shè)計(jì)成這樣是為了保證最終保存的.xlsx文件結(jié)構(gòu)是干凈的。如果允許同名樣式重復(fù)注冊(cè)保存出來(lái)的文件里就會(huì)出現(xiàn)兩個(gè)名字一樣但定義不一致的樣式記錄Excel客戶(hù)端一打開(kāi)就會(huì)提示文件已損壞是否修復(fù)。所以這個(gè)報(bào)錯(cuò)其實(shí)是openpyxl在替Excel提前把關(guān)。1.3 觸發(fā)重復(fù)創(chuàng)建的三類(lèi)典型場(chǎng)景根據(jù)我自己的排查經(jīng)驗(yàn)這個(gè)報(bào)錯(cuò)最常見(jiàn)的誘因可以歸納成三類(lèi)。第一類(lèi)是循環(huán)里反復(fù)創(chuàng)建樣式。比如遍歷一行單元格想給每個(gè)格子都套一個(gè)客戶(hù)樣式代碼寫(xiě)成for cell in row: cell.style NamedStyle(namecustomer_style)第一次循環(huán)時(shí)樣式順利注冊(cè)進(jìn)工作簿第二次循環(huán)又新建了一個(gè)同名樣式去賦值于是直接拋異常。這種寫(xiě)法我見(jiàn)過(guò)不少很多人剛開(kāi)始以為每輪循環(huán)都得new一個(gè)樣式對(duì)象才能賦值實(shí)際上完全不需要。第二類(lèi)是多個(gè)導(dǎo)出函數(shù)各自定義同名樣式。項(xiàng)目一大導(dǎo)出邏輯拆成多個(gè)函數(shù)每個(gè)函數(shù)各管一段都順手定義了customer_style。單看每個(gè)函數(shù)都沒(méi)問(wèn)題但運(yùn)行時(shí)第一個(gè)函數(shù)注冊(cè)成功第二個(gè)函數(shù)再注冊(cè)就開(kāi)始撞車(chē)。第三類(lèi)是Jupyter Notebook里反復(fù)執(zhí)行同一個(gè)單元格。同一個(gè)kernel環(huán)境下如果之前的執(zhí)行結(jié)果還留在內(nèi)存里后續(xù)又重復(fù)執(zhí)行創(chuàng)建同名樣式的代碼就會(huì)觸發(fā)同樣的錯(cuò)誤。這個(gè)場(chǎng)景跟普通腳本不太一樣普通腳本每次啟動(dòng)都是全新環(huán)境很少受上次運(yùn)行殘留影響但Notebook的交互式特性會(huì)讓問(wèn)題被放大。注意如果你跑的是普通.py腳本每次運(yùn)行都是全新進(jìn)程基本不存在因?yàn)樯洗芜\(yùn)行殘留而報(bào)錯(cuò)的情況。真正需要排查的一定是同一個(gè)Workbook實(shí)例內(nèi)、同一次進(jìn)程里發(fā)生的重復(fù)注冊(cè)。2. 最常見(jiàn)的解法創(chuàng)建前先檢查樣式是否存在2.1 用 in 判斷的寫(xiě)法最容易想到的方案就是動(dòng)手創(chuàng)建之前先問(wèn)一句這個(gè)工作簿里是不是已經(jīng)有同名樣式了如果有直接用現(xiàn)成的如果沒(méi)有再創(chuàng)建。from openpyxl.styles import NamedStyle, Font if customer_style not in wb.named_styles: style NamedStyle(namecustomer_style) style.font Font(boldTrue) wb.add_named_style(style)注意這里依賴(lài)一個(gè)前提openpyxl新版本里NamedStyle對(duì)象的相等比較是基于名字的所以customer_style in wb.named_styles可以正常判斷。但我必須提醒一句這個(gè)寫(xiě)法在不同版本之間行為并不完全一致。2.2 兼容舊版本的遍歷寫(xiě)法如果你要維護(hù)的代碼需要跑在別人機(jī)器上而對(duì)方環(huán)境里openpyxl版本不可控那最穩(wěn)妥的方式是放棄in判斷改成一個(gè)不依賴(lài)任何版本行為的遍歷existing_names [s.name for s in wb.named_styles] if customer_style not in existing_names: style NamedStyle(namecustomer_style) style.font Font(boldTrue) wb.add_named_style(style)列表推導(dǎo)式直接提取所有已有樣式名然后做一次普通的字符串成員判斷。這段代碼對(duì)任何版本都成立因?yàn)閟.name一定是字符串字符串比較沒(méi)有歧義。我給內(nèi)部工具做兼容處理時(shí)一直用這種寫(xiě)法幾乎沒(méi)有返工過(guò)。2.3 封裝成樣式工廠函數(shù)與其在每個(gè)導(dǎo)出函數(shù)里重復(fù)寫(xiě)判斷邏輯不如直接封裝一個(gè)獲取樣式的工廠函數(shù)。它的職責(zé)很簡(jiǎn)單傳入樣式名如果工作簿里已經(jīng)有同名樣式直接返回現(xiàn)有對(duì)象如果沒(méi)有就創(chuàng)建一個(gè)并注冊(cè)進(jìn)去再返回。def get_named_style(wb, name, make_style): for s in wb.named_styles: if s.name name: return s style make_style() style.name name wb.add_named_style(style) return style調(diào)用方完全不關(guān)心這個(gè)樣式是新建的還是復(fù)用的只負(fù)責(zé)傳名字。這種方式最大的好處是把樣式是否已被注冊(cè)這個(gè)狀態(tài)收斂到一個(gè)函數(shù)里其他所有代碼都不用再擔(dān)心重復(fù)注冊(cè)的問(wèn)題。我在后面的第5節(jié)會(huì)給一個(gè)可以直接抄的完整模板。3. 穩(wěn)妥兜底用異常捕獲處理重復(fù)注冊(cè)3.1 try/except 捕獲同名沖突有時(shí)候你不想在創(chuàng)建前去查詢(xún)列表覺(jué)得多一次遍歷麻煩。那也可以反著來(lái)大膽創(chuàng)建撞車(chē)了再補(bǔ)救。用try/except把賦值過(guò)程包住捕獲到exists already之后改成用字符串方式引用已有樣式。try: ws[A1].style NamedStyle(namecustomer_style) except (ValueError, KeyError) as e: if exists already in str(e): ws[A1].style customer_style else: raise這里有一個(gè)我自己踩過(guò)的坑不同版本的openpyxl拋出的異常類(lèi)型不一樣可能是ValueError也可能是KeyError。所以捕獲時(shí)最好兩種都列上并且用錯(cuò)誤信息里的關(guān)鍵詞做二次判斷。不要圖省事寫(xiě)except Exception否則真正的編碼錯(cuò)誤會(huì)被一起吞掉排查起來(lái)更痛苦。3.2 刪除舊樣式再重建的做法還有一種思路是先把舊的同名樣式刪掉然后重新創(chuàng)建。在openpyxl新版本里按名字刪除是支持的if customer_style in wb.named_styles: del wb.named_styles[customer_style] style NamedStyle(namecustomer_style) # 重新配置樣式... wb.add_named_style(style)但說(shuō)實(shí)話(huà)我在實(shí)際項(xiàng)目中不太推薦刪除后重建除非你真的想徹底改變這個(gè)樣式的定義。原因是如果一個(gè)工作簿里已經(jīng)有單元格引用了customer_style你把舊樣式刪掉再重建同名樣式舊引用和新樣式之間會(huì)出現(xiàn)一個(gè)短暫的懸空期在邊界情況下可能導(dǎo)致保存后樣式失效。能用檢查后復(fù)用解決的場(chǎng)景沒(méi)必要繞道刪除重建。3.3 按名字刪除時(shí)容易踩的兩個(gè)坑第一個(gè)坑是老版本不支持按名字直接刪除。del wb.named_styles[customer_style]在3.x版本里好用但在更老的版本里可能直接拋KeyError。遇到這種情況只能手動(dòng)遍歷后刪除for i, s in enumerate(wb.named_styles): if s.name customer_style: del wb.named_styles[i] break第二個(gè)坑是刪除和重建之間不能夾其他邏輯。如果你刪完舊樣式還沒(méi)來(lái)得及注冊(cè)新樣式中間某個(gè)函數(shù)剛好要讀取這個(gè)樣式就會(huì)命中一個(gè)樣式不存在的窗口期。我在一次重構(gòu)里就因?yàn)檫@個(gè)踩過(guò)坑本來(lái)刪除和新建中間隔了幾行日志打印結(jié)果日志處理函數(shù)恰好也要用樣式程序直接崩了。所以刪除和重建之間盡量保持代碼簡(jiǎn)潔不要摻入其他業(yè)務(wù)邏輯。4. 更優(yōu)雅的思路改造現(xiàn)有樣式而不是新建4.1 直接修改已有樣式的屬性如果你的真實(shí)需求是調(diào)整現(xiàn)有樣式的某個(gè)字段那壓根不需要新建一個(gè)NamedStyle。直接從工作簿里把樣式撈出來(lái)改它的Font、Border、Fill、Alignment等屬性即可for s in wb.named_styles: if s.name customer_style: s.font Font(name微軟雅黑, size11, boldTrue) s.alignment Alignment(horizontalcenter, verticalcenter) break這種做法的好處很直接所有引用customer_style的單元格會(huì)同步更新不需要逐個(gè)單元格重新賦值。但反過(guò)來(lái)也要注意它是全局性的改動(dòng)——如果只有一個(gè)Sheet想要特殊效果改完可能影響其他Sheet的顯示。所以用之前先想清楚作用范圍。4.2 用copy復(fù)制命名樣式再改名為新樣式另一個(gè)常見(jiàn)需求是拿現(xiàn)有樣式做底子微調(diào)幾個(gè)字段生成一個(gè)新樣式。這時(shí)候不需要把字體、邊框、填充全部重新配置一遍用copy.copy淺拷貝然后改名即可from copy import copy base None for s in wb.named_styles: if s.name customer_style: base s break new_style copy(base) new_style.name customer_style_v2 new_style.font Font(name微軟雅黑, size14, boldTrue) wb.add_named_style(new_style)這里有兩個(gè)坑要提醒。第一淺拷貝之后Font、Border這些子對(duì)象有可能是共享的如果你只改new_style.font的對(duì)象屬性而不重新賦值整個(gè)Font對(duì)象可能會(huì)連累原樣式。所以修改前最好直接new一個(gè)新的Font對(duì)象賦上去而不是new_style.font.bold True這種深層修改。第二改名必須在add_named_style之前完成注冊(cè)之后名字就定死了再想改就得走刪除重建的流程。4.3 普通單元格樣式對(duì)象是更輕量的備選很多場(chǎng)景下你其實(shí)并不需要NamedStyle的重量級(jí)能力。比如只想給某個(gè)單元格加粗、填充背景色、加邊框直接用獨(dú)立的Font、PatternFill對(duì)象賦值就行from openpyxl.styles import Font, PatternFill ws[A1].font Font(boldTrue, colorFF0000) ws[A1].fill PatternFill(solid, fgColorFFF2CC)這種方式完全不涉及命名注冊(cè)自然也不存在重名沖突。NamedStyle和普通樣式對(duì)象的區(qū)別可以這樣理解NamedStyle是全局命名模板適合在整個(gè)工作簿里按名字反復(fù)引用直接賦值是一次性樣式每個(gè)單元格的樣式對(duì)象彼此獨(dú)立改一個(gè)不影響其他。如果你的樣式只用在一兩個(gè)單元格上直接用普通對(duì)象賦值代碼更簡(jiǎn)潔也不會(huì)踩到命名沖突的雷。5. 批量導(dǎo)出Excel場(chǎng)景下的完整代碼模板5.1 一個(gè)帶樣式工廠的導(dǎo)出腳本結(jié)合前面幾節(jié)的思路我給出一份可以直接套用在自己項(xiàng)目里的完整模板。核心是一個(gè)ensure_style函數(shù)負(fù)責(zé)在任意時(shí)刻確保指定樣式已注冊(cè)并返回這個(gè)樣式對(duì)象。from openpyxl import Workbook from openpyxl.styles import NamedStyle, Font, PatternFill, Alignment, Border, Side MARGIN Side(stylethin, color999999) def ensure_style(wb, namecustomer_style): 從工作簿中獲取指定命名樣式不存在則創(chuàng)建并注冊(cè) for s in wb.named_styles: if s.name name: return s style NamedStyle(namename) style.font Font(name微軟雅黑, size11, boldTrue) style.fill PatternFill(solid, fgColorFFF2CC) style.border Border( leftMARGIN, rightMARGIN, topMARGIN, bottomMARGIN ) style.alignment Alignment(horizontalcenter, verticalcenter) wb.add_named_style(style) return style def build_report(path): wb Workbook() ws wb.active ws.title 客戶(hù)訂單 style ensure_style(wb, customer_style) ws[A1] 客戶(hù)名稱(chēng) ws[A1].style style ws[A2] 某科技有限公司 ws[A2].style style wb.save(path) if __name__ __main__: build_report(report.xlsx)這段代碼的關(guān)鍵點(diǎn)在于ensure_style每次調(diào)用先遍歷wb.named_styles找到同名樣式就返回找不到才創(chuàng)建。因此無(wú)論build_report被調(diào)用幾次、在什么位置調(diào)用只要傳入同一個(gè)Workbook對(duì)象就不會(huì)觸發(fā)exists already。5.2 多Sheet、多函數(shù)調(diào)用的安全處理如果報(bào)表里有多張Sheet每張Sheet的表頭都要用同一種樣式建議在工作簿創(chuàng)建后第一時(shí)間統(tǒng)一取出樣式對(duì)象后續(xù)所有Sheet共用def build_multi_sheet_report(path, sheets_data): wb Workbook() style ensure_style(wb, customer_style) for sheet_name, rows in sheets_data.items(): ws wb.create_sheet(sheet_name) for row_idx, row_data in enumerate(rows, start1): for col_idx, value in enumerate(row_data, start1): cell ws.cell(rowrow_idx, columncol_idx, valuevalue) cell.style style wb.save(path)同一本工作簿內(nèi)多個(gè)函數(shù)同時(shí)處理不同Sheet時(shí)也都統(tǒng)一走ensure_style(wb, customer_style)獲取樣式對(duì)象不要在函數(shù)內(nèi)部私自new樣式。這樣可以保證全工作簿只有一個(gè)customer_style實(shí)例從源頭規(guī)避沖突。這里還要提醒一點(diǎn)如果項(xiàng)目里多個(gè)導(dǎo)出函數(shù)各自創(chuàng)建不同的Workbook那么每個(gè)Workbook都要單獨(dú)調(diào)用一次ensure_style。因?yàn)槊麡邮绞菕煸赪orkbook對(duì)象上的不是全局單例不要試圖用一個(gè)全局樣式對(duì)象覆蓋所有Workbook。5.3 服務(wù)端常駐進(jìn)程的樣式管理如果你的代碼跑在服務(wù)端常駐進(jìn)程里比如定時(shí)任務(wù)框架或者Web接口每次請(qǐng)求都會(huì)生成新的Workbook。這種場(chǎng)景下每個(gè)Workbook獨(dú)立注冊(cè)樣式通常沒(méi)有問(wèn)題但要注意別把樣式對(duì)象或Workbook對(duì)象緩存成全局變量。我見(jiàn)過(guò)一個(gè)事故有人把樣式對(duì)象放到模塊級(jí)常量為了省事直接復(fù)用結(jié)果同一個(gè)NamedStyle對(duì)象被塞進(jìn)了兩個(gè)不同的Workbook。后一個(gè)先注冊(cè)的還沒(méi)事另一個(gè)在保存或讀取時(shí)因?yàn)闃邮揭缅e(cuò)亂生成了無(wú)法正常打開(kāi)的xlsx文件。正確做法是樣式對(duì)象在函數(shù)內(nèi)部創(chuàng)建通過(guò)wb.add_named_style(style)綁定到當(dāng)次請(qǐng)求的Workbook不要跨Workbook共享同一個(gè)樣式實(shí)例。每次請(qǐng)求都走ensure_style既保證樣式的獨(dú)立性又避免了重復(fù)注冊(cè)的報(bào)錯(cuò)。如果并發(fā)量上來(lái)了多線(xiàn)程同時(shí)調(diào)用ensure_style理論上可能存在兩個(gè)線(xiàn)程同時(shí)發(fā)現(xiàn)樣式不存在、同時(shí)創(chuàng)建注冊(cè)的競(jìng)態(tài)。普通腳本場(chǎng)景可以忽略這個(gè)問(wèn)題但如果你在寫(xiě)Web服務(wù)接口最好在外層加一把互斥鎖把檢查樣式-創(chuàng)建樣式-注冊(cè)樣式整段保護(hù)起來(lái)避免極端并發(fā)下的重復(fù)注冊(cè)。6. 常見(jiàn)問(wèn)題與排查技巧實(shí)錄6.1 現(xiàn)象速查表報(bào)錯(cuò)信息或現(xiàn)象可能原因排查優(yōu)先級(jí)ValueError: Style customer_style exists already同一Workbook中同名NamedStyle被重復(fù)注冊(cè)高KeyError: Style customer_style exists already老版本openpyxl的同名沖突高保存后的文件提示文件已損壞樣式注冊(cè)混亂或刪除重建時(shí)舊引用未清理中改動(dòng)一個(gè)單元格樣式其他單元格跟著變使用了同一個(gè)NamedStyle對(duì)象屬于正常行為低6.2 排查步驟三板斧遇到這個(gè)報(bào)錯(cuò)我一般順著三個(gè)方向定位。第一步全項(xiàng)目搜索創(chuàng)建NamedStyle(name...)的地方看同一個(gè)樣式名出現(xiàn)了幾處。第二步確認(rèn)這些創(chuàng)建點(diǎn)是否共享同一個(gè)Workbook對(duì)象——只有同一個(gè)Workbook內(nèi)重復(fù)注冊(cè)才會(huì)觸發(fā)報(bào)錯(cuò)不同Workbook之間互相不影響。第三步把wb.named_styles構(gòu)建過(guò)程打印出來(lái)看報(bào)錯(cuò)那一刻已有樣式名列表是什么。最簡(jiǎn)單有效的調(diào)試方法是在樣式注冊(cè)前后各打印一次樣式名列表。print(before:, [s.name for s in wb.named_styles]) ws[A1].style NamedStyle(namecustomer_style) print(after:, [s.name for s in wb.named_styles])打印結(jié)果會(huì)直接告訴你撞車(chē)的原因是工作簿里提前存在了customer_style還是別的問(wèn)題。很多時(shí)候輸出一出來(lái)你立刻就能認(rèn)出是哪個(gè)函數(shù)、哪條分支提前注冊(cè)了樣式。6.3 我的幾個(gè)避坑心得最后分享幾個(gè)我在實(shí)際項(xiàng)目里沉淀下來(lái)的個(gè)人習(xí)慣。第一個(gè)習(xí)慣除非需要按名字在整個(gè)工作簿范圍復(fù)用樣式否則不要輕易使用NamedStyle。大部分報(bào)表的表頭加粗、背景填充、邊框線(xiàn)需求用普通Font、PatternFill直接賦值就夠了簡(jiǎn)單且不踩坑。NamedStyle是給那些真正需要在多個(gè)Sheet、多次運(yùn)行之間穩(wěn)定復(fù)用的場(chǎng)景準(zhǔn)備的。第二個(gè)習(xí)慣樣式注冊(cè)邏輯全部收斂到工廠函數(shù)里代碼庫(kù)里不允許出現(xiàn)散落的NamedStyle(name...)調(diào)用。這樣以后排查問(wèn)題只需要看一個(gè)地方不用全項(xiàng)目翻找。第三個(gè)習(xí)慣每次修改完樣式相關(guān)代碼至少連續(xù)運(yùn)行兩次腳本驗(yàn)證。第一次運(yùn)行可能碰巧不報(bào)錯(cuò)第二次才暴露重復(fù)注冊(cè)的問(wèn)題連續(xù)跑兩遍能把這個(gè)隱患提前暴露出來(lái)。第四個(gè)習(xí)慣如果你只是希望某個(gè)單元格啟用工作簿里已經(jīng)定義好的命名樣式直接用字符串賦值是最省事的寫(xiě)法ws[A1].style customer_style這樣既不會(huì)創(chuàng)建新對(duì)象也不會(huì)觸發(fā)注冊(cè)邏輯代碼干凈利落還會(huì)自動(dòng)繞開(kāi)所有重復(fù)注冊(cè)問(wèn)題。寫(xiě)到這里這個(gè)報(bào)錯(cuò)的來(lái)龍去脈就基本捋清了。從報(bào)錯(cuò)現(xiàn)場(chǎng)到源碼機(jī)制從四種解決思路到完整代碼模板中間穿插了幾個(gè)我實(shí)際踩過(guò)的坑。我最深的體會(huì)是openpyxl的NamedStyle設(shè)計(jì)本身沒(méi)毛病問(wèn)題在于它按名字索引的機(jī)制跟平時(shí)寫(xiě)Python對(duì)象時(shí)每次new都是獨(dú)立對(duì)象的直覺(jué)不一樣——在工作簿的世界里同名就是同一個(gè)Key。理解到這一層之后所有繞開(kāi)報(bào)錯(cuò)的做法都變得順理成章。下次再看到Style xxx exists already你可以直接對(duì)癥下藥不用像我當(dāng)初那樣對(duì)著報(bào)錯(cuò)發(fā)呆一中午了。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
日韩熟女操逼| 久久久啊啊| 熟妇人妻精品一区二区| 久久一二三级一一一| 不卡一区二区日本视频| 欧美色图综合| 日本免费二区三区| 骚妻少妇精品性色无码四色A V| 日本天天人人狠狠在线日美女| AA特级绝黄| 日韩情色一区二区| 国产乱不卡| 超碰天天操| 亚洲骚女一区二区三区| 久久xxxx| 嫖老熟女A片一二三区| 亚洲黄片免费在线播放| 美女熟妇色| 丰满人妻-区二区三区| 少妇高潮喷水无套久久久久久| 欧美内射少妇| 精品网站9999| n1038 一二三区| 婷婷97| 八人操人人摸人人看| 久久中出| 久久久久人妻二区精品叶可怜| 夜夜嗨视频| 欧美AB在线| 国产美女高潮视频| 大茄子熟女AV导航| 欧美se综合| www.亚洲成人一区| 日本影视久久免费| 国产91影院| 日本Suv精品一区二区| 欧美在线综合| 久久久久极品| 久久亚洲日韩熟女精品| 久久99干一本高清| 色噜噜国产精品视频一区二区| 国产不卡的视频 | 亚洲不雅视频1区二区| 尤物视频偷拍免费| 91bbbbbb| 激情抓乳插进去啪啪啪日韩 | 久久鲁夜| 男人的天堂久久狠| 91精片| 97免费视频在线观看| 青草成人免费视频一COm| 成人性交午夜免费片| 久久精品无码一区二区三区| 久操97| 草草草视频在线免费看| 大学生口爆吞精| 久久这里是精品| 久久东京伊人一本到鬼色| 333kkkk·亚洲com久久| 妺妺跟我一起洗澡没忍住| 亚洲精品亚洲人成在线麻豆| 大香交伊人网| 久久久久国产| 精品久久97| 人人么人人操| 亚洲操操操| 男人的天堂2018东京热啪啪啪| 91成人在线| 亚洲一二三四区在线免费看视频| 我想要 啊 啊 啊| 欧美精品精品一区二区| 狠狠狠狠狠干| 夜夜 中文视频rt| 色香网| 高清无码久操视频| 久草福利在线资源站| 男人的天堂亚洲| 亚洲免费97免费| 亚洲天堂少妇| se吧提供国产乱老熟视频胖女人| 精品国产综合久久福利,热99这里有精品综合久久,99热这里只有免费国产精品,精 | 好吊爽好吊爽在线视频,中文字幕精品一区二区日本,国产良妇出轨视频在线观看, | 伊人网在线点播| 9丨久久九九九| 免费家庭乱伦视频| 偷拍欧美综合| 国产情色在线| 中英熟女操女| 韩国一级做A片免费的| 久久综合日韩亚洲欧美| AV女资源| 欧美成人性爱视频大全| 国产精品久久久久久夜夜夜夜| 国产97免费视频| 精品中文字幕第一页| 日韩人妻少妇 一区二区三区| 国产视频一区二区在线观看| 国产久久久久久| 日本免费一级AAA大片器| Julia在线播放亚洲久久| 嗯嗯,好大,好爽,好骚| 丝袜AV一区二区三区| 欧美αv.com| 97视频观看| 99色在线| 久草免费福利在线播放| 大香网伊人久久综合| 久久久9视频| 99re免费| 超碰人人草| 1二区9| 资源新线在线天堂| 色婷婷电影| 五月天日日操夜夜操| 精品国产无码中文| 九九九久千久久激情蜜桃在线看 | 亚洲国产91精品一区二区久久| 色超碰综合| 亚洲色性| 亚洲色图欧美色图另类图片| 操逼操2| 日本中文字幕不卡视频| 99精品欧美一区二区三区桃色| 日韩欧美aⅴ综合网站发布| 中文字幕高清精品一区| 国产精品久久久午夜夜伦鲁鲁| 丝袜制服字幕在线| 韩日精品福利视频一区不卡在线免 | 久久国产在线一区二区| www.av在线视频| 亚洲天堂人妻一区二区| 久久东京热久久| 热99这里有精品综合久久| KK色在线影院| 婷婷中文字幕| 男人的天堂激情| 99re69综合| 天天碰久久入| 岛国黄色短视频| 热久久精品| 91丰满| 日本精品一区二区中文字幕| 亚射在线| 韩日色费| 九月AV| 91天天| 久草成人福利导航| 天天爱天天操| 淮穴色AV| 国产精品久久久| 精品久久青青草| 综合欧美亚洲| 91xingse| 97爱爱| 抽查国产福利主播| 91啦人妻| 亚洲欧美在线综合| 91艹B视频| 国产精品乱码久久久、久久| 国产精品自在自拍视频| 久久影视二区三区行押| 国产又色又爽又舒服的三级视频| 果冻传媒一区二区三区| 曰韩av中文字幕专区| 欧美春色| 天天综合网网欲色| 日本天天干天天操一区| 91精品91久久久久77777| 天天操天天谢| 91人妻人人澡人人爽人人精品| 熟女精品va中文字幕| 综合欧美亚洲| 欧美成97爱| 亚州色图狠狠干| 天天摸夜夜摸| 上海一级黄片| sewuyueav| 久久精品国产亚洲粉嫩| 青草精品视频日本久久久久网站在线| 久草福利在线资源站| 精品乱码久久久久| 丁香六月婷婷综合| 国内毛片热久久思思热| 久操在97| 蜜色网色哟哟| 丁香五月自拍| 免费超碰97在线观看| 欧美色图亚洲色| 性交一区二区在线播放| 天天亚洲综合| 欧美毛片在线网| 黄网色一区二区三区四区精品| 久久精品熟妇丰满人妻99| 性欧美精| 成人精品视频| 一区二区国产视频在线观看| 日本熟妇熟色97一本在线观看| 欧美日韩激情无码专区| 国产精品直播在线观看直播| 午夜九九九九九九| 欧美激情视频一区二区| 草B在线| 国产AV天美传媒一区二区三区 | 97色97好| 草草影院在线视频| 夜夜爽爽爽| 91欧美高清| 欧美性爱一区| 欧美性生活男人的天堂| 清纯唯美综合| 自拍第一页| 久久綜合很很很| 国产精品制服丝袜清纯唯美| 九九久久精品| 日韩资源网| 老司机免费视频在线91| 91成人18| 国产精品福利视频| 成人性交午夜免费片| 日本一区二区电影网站| 色色色网站| 超碰97久| 另类图片欧美激情综合| 中文字幕AV乱伦| 精品性爱一二三区| 97视频在线免费看| 欧美韩国你懂得在线| 99re在线精品78| 人妻少妇精品视频一区二区三区| 91肉丝| 东北丰满熟女国产一区| 激情五月综合| 丰满精品人妻少妇久久字幕| 992大香蕉| 91精品人妻偷情| 色牛牛AV| julia中文字幕在线观看| 97中文字幕一区| 亚洲国产av中文字幕久久| av凤凰久久久| 亚洲视频二区 | 黄色av播放免不| 91丨人妻丨国产丨丝袜| 成人性爱美曰韩| 日韩人妻无码精品系列| 啊啊啊好想要| 色婷婷导航| 欧美成人国产精品| 国产亚洲精品久久久久小| 亚洲精品三| 中文字幕诱惑制服人妻丝袜美丝袜美| 97综合网| 狠狠狠狠狠狠| 欧美一级国产一级| 九九毛片这里只有精品| 操老熟女AV| 91处女在线视频| 成视频在线观看免费看| 影音先锋少妇| 黄站在线免费观看| 校园春色欧美色图| 超碰碰碰碰| 啊a一区在线| 夜夜爽妓女| 少妇人妻激情四射| 日本操逼视频免费| 美女自卫慰黄网站免费| 欧美极品美女aaaaaa级黄片| 亚洲国产成人精品无码专区| 久九干| 吊色| 欧亚乱色熟女一区二区| 久久色AV线| 久久99精品九九久久久婷婷| 欧美日韩香蕉| 一二三区精品视频| 色色色欧美| 97日视频| 亚洲精品久久久久毛片A片拉屎| 国产传媒操逼视频| 久久久无码精品人妻二区| 色呦呦、国产精品| 91性情| 国产女人与拘做受视频免费| 欧美性暴力猛交XXXX| 男女啊啊啊| 亚洲精品中文字幕一区在线视频| 亚洲中文字幕日产无码久久| 伊人五月天婷婷| 狠狠中文字幕| 极品销魂美女一区二区| 热天堂一区二区| 天天做天天爱| 色老汉玖玖爱| 欧美性爱第1 页| 校园春色综合| 日本精品999| 色老汉玖玖爱| 我要去看2个日本美女.com曹逼| www久久99| 91热色| 在线观看国产黄色| 国产精选视频| 久久大香蕉手机高清视频| 国产99热| 美女大乳久久久久久久女人18| 凹凸视频在线一区二区| 2019天天操天天爽天天拍| 久久久九九九| 欧美色日本| 强奸乱伦资源| 超碰碰97资源站| 1024香蕉视频| 91看黄片| 亚洲女人毛茸茸91| 蜜臀久久99精品久久综合| 我想要 啊 啊 啊| 神马久久久久眼| 国产精品人人爽人人做可爱福利| 亚洲性图91| 国产18精品亚洲精品| 午夜经典| 超碰97COm中文| 激情五月婷婷| 亚洲成aⅴ人片不卡无码| 亚洲欧洲第二视频在线观看色图| 超碰成人国产| 亚洲第一页第二页激情| 91爱看| 国产超碰| 免费a级毛片av无码久久精品中文字幕| 97se综合网| 激情视屏国产乱伦强奸| 中国特猛少妇色xxx| 欧美综合骚| 91东京热男人的天堂| 久操在97| 国产精品一区人妻精品阁在线| 一区AV| 东北操逼| 少妇69中文| 亚洲激情av| 三级AV入口| 在线视频资源| daxiangjiao你懂的| 国产精品一二三区福利| 国产男人又猛又粗又爽| 人人操欧美风骚| 免费97视频| 青青国产精品在线| 亚洲日韩精品在线播放| 丝袜美腿制服人妻二区中文字幕| 18禁在线视频| 色激情综合网站| 99福利社| 欧美激色| 少妇色综合| 中文字幕乱碼在线| 夜夜一区二区| oumeisetu综合| 婷婷综合网| 超碰成人最新最好看| 国产亚洲色停停久久99精品91| 欧美同性恋 的搜索结果 - 91n| 求求你操操我| 天操老女人| 熟女啪啪视频| 欧美淫穴| 天堂九九九九九九九九九| 亚洲无码一二三区| 久久无码成人| 国产黄色影片在线观看| 香蕉国产精品麻豆亚洲欧美日韩| 97天堂| 欧美一级二级三级| 久久久久女教师免费一区| 9999九九九久久久| 亚洲男人的天堂网| 精品9999| 国产91丝袜 在线播放| 日本亚欧爱爱| 蜜臀中文无码午夜| 欧美色青| 国产强奸乱伦欧美| 放黄片放3级黄片没穿衣服| 久久久蜜桃臀无码视频| 91内射| 欧美夜夜| 国产探花日韩援交| 天天做日日做天天欢。| 国产99热| 亚洲综合码| 日欧美色| 极品五月天噜噜| 亚洲免费看片| 蜜臀99999| 少妇人妻无码| 99热18这里只有精品| 污污污8888| 国产精品亚洲日韩骚欢乐谷最新地址发布页huanieguty性屋娱乐妖精视频 | 四虎国产精品永久在线囯在线| 欧美+日产+中文| 综合网天天| 毛片一区二区| 欧美日韩亚洲一区二区在线观看| 国产理论视频在线播放| 大香蕉综合| 亚洲18禁| 和协影院中文字幕三区| 任你干在线视频| 96超碰网| 富女玩鸭子一级毛片| 一级特黄aaa大片在线观看成人一级片在线观看 | 国产动漫操逼视频| 日韩专区数据列表-第3230页-精品国产一区二区三区香蕉 久久99熟女人妻中文字 | 精品一区二区成人动漫| 夜夜爽77777| 蜜桃视频精品一区二区三区| 69久久久久久久久久久久久| 风韵犹存大大大大香蕉 | 国模限制级电影| 中文字幕在在线观看网站| www.高清无码诱惑一区.com | 久久精品亚洲成a人天堂| 婷婷久久网| 殴美日韩m| 青青草久久| 亚洲综合欧美| 五月婷婷大香蕉| 人人爽夜夜操| 亚洲欧美变态| 成人无遮挡毛片免费看| 岛国精品视频在线观看| 成人老鸭窝人人在线视频| 97资源站久久| 亚洲色系另类精品国产| 97WW精品| 日产精品久久久一区二区| 性夜影院爽黄A爽免费动漫| 日韩视频啪啪| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区老师 | 在线看的av| 大胆91| 久久久成人精品| 超碰在线人人射| 久精品无码av一区二免费国产在线观看| 99这里有精品| 天天日夜干| 日韩去日本高清在| 级品肉射| 日韩强奸av| 人妻少妇精品一区二区三区| 亚洲精品九九九九九九| 伊人网综合在线视频| 欧美日韩理论一区| 欧美日韩精品久久久久久久久东北老熟妇| 亚洲最新中文字幕免费| 91总综合网| 中国AAAAAA黄色片| 用力操死我| 97超碰色色| 99色综合| 色妇综合网| 操人91| 精久久久| 中字乱伦AV| 亚洲脚交| 欧亚免费视频| 四虎AV在线播放| a在线视频免费观看| 国产AV天美传媒一区二区三区 | 久99久视频| 羞答答AV中文字| 婷婷视频在线免费观看| 精品无人区麻豆乱码1区2区图片 | 久久久久久久久久久精| 亚洲一区二区三区欧美日韩| 日本天天干天天日一区| 熟妇操花| 亚洲欧美碰碰| 亚洲国产精品乱码在线观看| 亲子敌伦对白在线播放| 爽爽爽免费视频| 九九视频黄色片| 蜜臀久久在线视频| 在线观看黄色电话| 国产97色在线 | 亚洲| 日本在线不卡一二区| 亚洲熟女乱综合一区二区在线-...亚洲国产日韩欧美一区二区三区,久久久久久精 | 亚洲 欧美 色图| 久久婷婷一区二| 日本黄大片在线观看视频| 九九久久国产精品| 人人干人人操人人..com| 97国产综合欧美| 久久久久9999| 日韩一级性爱无码| 久久久久久裸体| 久久久久久久人妻| 欧美偷拍区| 加勒比性爱成人在线| 99精品视频在线观看| 日韩欧美亚欧在线视频| 久操影视| 久久久99久9| 波多野结衣先锋影音| 人妻激情视频| 超碰在线974| 首页中文字幕中文字幕免费| 欧美性暴力| 啊啊啊啊二区好大| 色欧美天天| 欧美一区二区三区另类精品| 高清视频一区| 蜜桃久久久久久久久久久久| 熟妇熟女视频一区二区三区| 99re国产精品视频| 骚女天天综合网| 欧美色图 人妻| 青青草视频这里只有精品| 人人看欧美性爱| 亚洲美女AV无码| 午夜精品久久久久久久| 国产又操| AA级电影三区| 欧美女同在线| 99热 按摩 日韩| 欧美婷婷| 免费啪啪一级视频| 无码动漫av中文字幕| 欧美专区17页| 久久久久久久久久久999| 五月婷婷色| 乱伦AVxx| 精品亚洲国产成人av网站| 国产女大学生AV| 91亚洲黄色网| 男人的天堂kva| 综合激情一一91| 另类亚洲图色| 狼人综合婷婷激情四射 | 激情无码日韩| 国产亚洲日韩欧| 在线午夜成人无码视频| 超碰78| 人妻铁牛TV| 夜夜高潮夜夜爽夜夜爱爱一区| 男人的天堂日韩| 熟妇人妻一区二区三在线 | 日B操| 日本精品一级二级三级| 久久久久久97| 国产偷拍网站| 中文操逼字幕| 久久精品国产精品一区| 亚洲自拍偷拍视频在线| 尤物av网站免费在线播放| 清纯唯美亚洲综合| 亚洲情色综合| 亚洲婷婷综合网| 91国产操逼视频| 一级性爱视频免费观看| 91精品微拍福利| Av手机版天堂网| 久久久亚洲Av| 成人福利视频网| www.色99| 天天操av懂色| 亚洲综合另类小说色区亚洲成av人片在www| 欧州色图区| 亚洲各类熟们中文字幕| 97亚洲精品| 91丨豆花丨熟女| 国产美女自拍AV| 日本成人A片免费看| 狠狠中文字幕| 日韩欧美经典在线观看| 久久久婷婷婷| 一区二区三区网站日日骚| 四月丁香婷婷| 九九国产热| 91无摭挡| 九九热九九| 男女猛烈无遮掩视频免费软件| 日韩精品在线观看观看| 婷婷亚洲五月***久久| 99精品网| 欧美性爱一区二区三区四区 | 国产亚热在线久久| 亚洲图片小说欧洲| 9国产超碰| 国产尤物AV尤物在线观看不卡| 色综合色| 欧美999999| 丝袜加勒比| 97色伦97色伦国产欧美| 性爱乱伦一区| 色九月综合| 国产三级中文字幕粉嫩 | 人人考人人摸人人干| 91熟女熟妇视频网站| 婷婷另类小说| 91网站18禁| 久久久久人妻二区精品叶可怜| 啊视频在线| 亚洲棕合电彰| 九九九精品美女| 欧美日韩亚洲一区二区在线观看| 夜夜嗨一区二区| 久久久免费懂色| aa片毛片| 91操碰| 99只有精品| 亚洲国产97| 2020国产精品| 一区二区三区色综合| 国产精品免费久久久久久久久久| 国产偷拍自拍在线视频| 色诱中文字幕| 日日摸天天爽夜夜欢| 日韩精品永久在线观看| 欧美性,色九九| 欧洲人妻视频| 亚洲AV永久无码一区仙野| 亚洲 欧美 小说| 欧美91精品国产自产| 亚洲国产成人精品久久久国产成人一区二区三.| 无色无码| 美女好片色日本| 中文字幕黑人大片| wuyechaopeng| 久久男人精品| 久久精品72| av网站在线看| 色欧美天天| 蜜屁av| 欧美中出1| 国产精彩女在线观看视频| 国产欧美在线观看免费观看| 91婷婷伊人狠人| 日本不卡在线二区三区| 久久综合婷婷| 啊啊啊久久| 99亚洲精品| 97日韩超碰超碰中文字幕| www.色婷婷色综合| 成人区人妻精品一| 婷婷久久五月天| 亚洲激情在线| 夜夜肏2021| 黑人综合网| 后入 亚洲 美女 射| 亚洲情色欧美| 亚洲色图 欧美热图 清纯唯美 另类自拍 | 一色网男人的天堂| 97综合网| 欧美亚洲第1页| 欧美呦呦性爱| 欧美一级专区免费大片| 精品人妻av在线播放| 久久国产999| 懂色av中文字幕| 97最新在线播放视频| 亚洲天堂少妇| 亚洲熟妇自偷自拍另欧美| 97日韩欧美| 久久中日麻豆| 中文字幕亚韩| 麻豆成人影音在线| 超碰在线974| 草草影院最新网址| …中文字幕亚洲乱,97人妻无码费视…| 国产一区二区视频在线播放| 91色宗合| 久久精品国产99国产精品亚洲| 日韩在线一区高清在线| 超碰偷拍| 91啪9色| 青娱乐国产精品| 亚洲图片 欧美电影| 天美国产精品| 日本操嫩b网| 色色97爱| 亚洲大色堂| 91人妻Pr| 91人精品妻入口| 青青草原成人| 日本精品88888888| 九九黄色视频在线观看| 免费在线看黄片av| 久久6热精品99视频| 91 亚洲 欧洲| 亚洲 一区二区 自拍| 91精品人妻一区二区三区蜜臀| 91欧美成人色站| 91精品久久久久久77777| 手机看片91人妻| 亚州高清AV| 亚洲精品骚逼| 国产精品一二三免费网站| 隔壁邻居波多野结衣中文字幕 | 日韩激情无码影院| 色噜噜日韩精品| 日韩精品人妻中文字幕久久久| 综合色图区| 中文字幕精品一区欧美| 日韩9区| 久久久精| 东北女人操比视频| 台湾佬中文娱乐自偷自拍| 人人扣人人操| 综合操逼| 高清国产性猛交xxxx乱大交| 粉嫩av在线| 日韩本不卡视频在线观看 | 999九九九九国产动| 久草色悠悠在线视频| 人人摸人人干| 成年女人18级毛片毛片免费观看| 久久欧美1卡2卡3| 亚洲综合精品国产一区| 日韩精品在线观看观看| JIZZJIZZ亚洲女人被躁| 欧美色图第一页| 亚洲狠狠入| 久久久九九| 亚洲一区制服诱惑| 欧美午夜视频| 欧美韩国你懂得在线 | 成人精品在线观看| 一区二区三区精品久久| 岛国视频免费在线观看| 国产精品熟女九色九色蜜臀| 一个色导综合| 国产精品久久久久久久电影渣男| 无码137片内射在线影院| 欧美黄页| 视频一区二区免费在线| 亚洲不卡三级手机播放| 久久一二三四| 18禁看网站一区| 亚欧无码线免费观看视频| 操国产高清| 1769一区| 国产在线视频二区| 国产成人无码啪| 亚洲AV秘 精品久久老牛影视| 狠日操| a v网站在线播放| 亚洲中文日韩精品| 青娱乐日韩无码| 狠狠色色| 91久精品| 男女激情中文字幕| 国产精品久久久久久久免牛肉蒲团 | 国产二区三区粉嫩在线| 天天操人人操骚逼网站| 大但人体久久久久| 天天干夜夜鈤| 日本操逼视频免费| 国产黄色在线播放观看| 国产精品一级特黄aaa大片在线观看| 香蕉久久AⅤ...| 亚洲AV操| 激情开心五月天| 观看免费区二区三区二| 久久久久密臀一区二区| 午夜无码熟妇丰满人妻| 青青草一区二区高清无码视频| 久久久久久9| 17c在线成人免费A片观看| 午夜电影在线观看无码专区| 99热只有| 日韩人妻精品中文字幕| 熟妇女伦乱视频视频| 成人怡红院| 三级特黄60分钟播放| 欧美啪啪女女| 人妻密肉在线观看| 九九九九免费视频| 91丝袜| 亚洲AV无码翔田千里网站| 欧美很很操视频| 强奸少妇AV导航网| 色网1| 偷拍亚洲| 99热只有这里有精品| 97久久久久久久精| 蜜臀th| 国产色图乱伦| 亚欧国产无码精品在线| 九月AV| 蜜汁欧美| 777AV电影| 麻豆天美国美国产| 久久网亚洲| 日日干天天干夜夜爽| 一区二区三区机械有限公司| 久插综合| 高清无码人妻久久久一区二区三区aⅴ| 欧美一区二区一级岛国大片| 伊人久久婷婷| 亚洲自拍欧美色综合| 97色网| 色五月婷婷久久| 97精品国产精品免费观看| 天天综合网在线观看| 天天综合欧美综合| 日本韩国五十路六十路七十路老熟女作爱视频网站 | 色呦呦呦在线观看视频| av在线人气| 9丨久久九九九| 五月丁香社区婷婷日韩欧美精品影院 | 国产精品自在线发布| 蜜臀AV一区二区三区激情综合| 国产嫩草精品A88AV| 盗摄女人妻在线| 日本啊啊啊啊啊视频| 久久久999| 九九热视频在线观看| 精品乱码在线观看| 人人操人人插人人摸人人干| 久久久久久久久久久久久久久乱码 | 日韩精品人妻| 69人妻精品一区二区绯色| 久久久免费视频18| 三级网色| 九九综合网| 亚洲欧美自拍偷拍| 一区| 6080YYY午夜理论片在线观看| 蜜桃中文字日产乱幕4区| 9久久久久| 又大又白奶子| 神马久久久久| 人妻日日夜夜精品| 激情综合网激情综合| 麻豆久久视频在线地址| 男人的午夜天堂| 亚洲精品久| 91久久久亚洲| 嗯嗯啊啊亚欧精品| 中文字幕日韩人妻视频| 久久一二三四不卡 | 狠狠操,使劲操| 亚洲射综合网| ji熟女.com| 一区,二区,三区视频| 大香焦A片| 智利AV在线网| 熟女乱伦二区| 91欧美综合| 美女97超碰| 岛国黄色短视频| 玖玖综合视频| 天天干,天天日| 亚洲超碰97| 天天综合欧美综合| 美国aaaaa一级黄片| 抽插一区二区视频| 国内精品999| 亚川综合视频| 久久久精品九| 久久久草成人网站久久久草成人久久久草久久久 | 一级A啪啪啪啪| 亚洲97精品| 欧美曰韩国产精品| 肉嘟嘟www视频在线观看高清| 超碰导航97| 熟妇视频一区二区三区在线观看| 亚洲免费在线探花| 黑人性暴力毛片| 91 丝袜在线| 日本操嫩b网| 超碰人妻久久| 狠狠夜色午夜久久综合在线| 日韩去日本高清在| 男女一进一出视频久久| 丝袜美腿射精91| 中文字幕五区| 欧美一级A片不卡视频。| 日曰骚久久精品| 91亚州欧美| av一区二区三区 中文| 国产精品午夜AV完会免费| 久久6热精品99视频| 啊啊啊啊嗯嗯嗯用力好爽| 伊人丁香五月婷婷| 91 丝袜在线播放| 91激情综合| 精精夜夜| 强奸xx国产| 曰韩操B| 日韩在线观看三级电影| ...日韩成人一区二区三区字幕| 长长久久88视频| 日本视频一区二区三区| 白丝AV| 青青草在线视频播放器| 中欧人妻丝袜中文字幕| 伊人精品国产| 任我爽视频在线观看| 五月天色图| 日韩欧美国产一区二区三区四区| 91视频综合网| 巨乳特殊服务按摩| 夜夜免费视频| 欧美 牲| 日欧美色| 91色碰| 天天日少妇逼AV| 国产综合操逼高清| 2018天天干在线视频| 亚洲 欧美 日韩 国产一区二区| 蜜桃久久一区| 成人夜夜| 色婷婷一区二区三区久久午夜| 一区二区 日韩 欧美 国产 传媒| 天天添天天干电影| 99色热| 激情综合婷婷| 女人爽到高潮潮喷18禁网站| 玖玖爱免费观看视频| 免费观看国产不卡av| 日韩中文字幕视频| 综合久久久久久久久91| 国产精品国产精品国产| 鸥美中出| 97色97干| 殴美牲| 综合亚洲欧美| 丁香五月自拍| 26uuu国产亚洲综合| 色图综合| 九九九九九九精品| 色97欧美| 日比av无码| 久久成人东京热人妻| 日韩精彩视频| 亚欧美综合| 欧美色图自拍| 亚洲丝袜二区在线| 美女t无毒不卡不卡| 欧美丰满少妇交换91欧美精品| 五月天欧美色图| 97国产综合欧美| 色哟哟av| 日本男人天堂| 男人的天堂2018| PMv在线观看| av一区二区三区四区| 伊人久久综合影院| 黄片无码在线制服| 日韩中文字幕二区| 深爱五月婷婷| 色综合中文字幕不卡| 日韩99神马视频播放| 色男人色天堂东京热| 大但人体久久久久| 水滴偷拍| 欧美区亚洲区偷拍区| 手机在线播放国产福利| 日本 欧美 国产一区| 色爱综合网| 色综合加勒比四四季| 91美女看B| 99热在线只有精品| 热99这里有精品综合久久 | 精品国产一区二区三区久久久蜜臀| 日本三级人妻a人妻一在线| 熟女天天干| 久久中文字幕女同性恋一区| 91日韩国产欧美亚洲另类精盘州至城都| 国产一级内射高清视频| 人人看人人爰人人操| 柠檬AV导航| 色婷婷成人综合| 职场同事知名国产国产精品久久欧美日韩 | 97 亚洲 日韩 欧美 在线| 屌妞视频久久久久久久久久久久| 劲爆欧美人妖三区91| 亚欧美综合网| 国产欧美成人第一页在线观看 | 久草免费在线视频| 国产日韩精品无码去免费专区国产| 性爱乱伦一区| 综合网~91综合网| 91亚洲最新在线| 无码精品久久| 色色丁香| 是还免费视频1727我| 国产精品乱码久久久久| AV污污污污| 成年男人的天堂| 插插综合网天天影视网| 黄色免费网| 婷婷五月成人| 天天躁狠狠躁av| 人妻一区二区三区四区视频| 中文自拍欧美影视| 另类亚洲图色| 亚洲一二三四区| 精品黑人一区二区| 欧美精品 - 91爱爱| 国产熟女无套内射| 日逼国产| 国产乱弄免费在线视频。| 91性网| 艹比视频国产精品| 97久久久精品| 四虎精品永久在线播放| 狠狠操狠狠爱| 免费国产| 国产精品久久久久久无码红治院| 伊人大香蕉在线| 黄页| 人妻中文在线| 精品超碰色| 日韩精品黄片免费观看| 国模不卡一本二本三电影| 国产精品日日摸夜夜添骚逼| 国内精品久久久久影院亚洲| 亚洲999综合| 亚洲伊人a线观看视频| 欧美亚洲国产自久久| 大香蕉78| 精品少妇一区二区三区免费观看| 变态另类专区| 日韩人妻操B| 青女偷拍网| 丁香六月婷婷综合| 五月天精品| 国内毛片无码一级毛片| 97在线欧| 五月婷婷爱六月丁香色| 香蕉大久久久| 在线观看av区| 亚欧美无遮挡| 国产精品国产拍高清AV| 色与欲影视天天看综合网| 国产福利精品最新在线| 五月天精品| 俺去也婷婷| 熟女人妻精品一区二区视频 | 亚洲天堂男人| 国产精品情侣啪啪| 亚洲欧美国产中文视频| 亚熟在线| 高清无码在线播放网站| 性性久久| 亚洲二区精品在线观看| 大香蕉2017| www.狠狠| 视频一区二区免费在线| 黑人中出21连凳花野真衣| 日韩操逼性鲍| 亚洲鸥美色图| 女人高潮抽搐喷水视频网站| 久久久91| 丝袜综合色图| 人人妻人射| 久久久久久无码人妻中文字幕| 亚洲国产成人高清在线| 天天狂操夜夜狂日| 97欧美精品综合| 成年人黄色小视频网站| KK色在线影院| 九九精品美女高溯喷水| 大香蕉免费3| 蜜桃臀AV在线| 夜夜爽爽爽| 国产最新小视频在线播放下载 | 美女写真| 欧美日韩另类激情图片| 成人无码专区精品视频| 久久人人舔人人爽舔人人av片| 大香蕉性欧美| 亚洲男人的天堂一区二区| 亚洲精品xxx| 1024精品在线| 秋霞一区二区三区四区五区六区七区| 91小视频| 国产老太乱伦一区| 久久久久久久久久久久欧美日| 免费看日本操逼视频| AAAA欧美日韩| 中文字幕日韩情色| 午夜呻吟欧美| 亚洲一区日韩| 欧美爱三级日韩久久| 黑白配性爱AV成| 欧美大香蕉97| 久久久国产三级黄色片| 国产狂喷潮在线精品| 色网亚洲人| 亚洲www91| 极品色社| 在线观看国产黄色| 精品高清av中文字幕| 日本布卡一区二三区| 男人久久精品| 偷拍伦理视频| 极品色www影院| 日韩中文字幕精品一区在线| 久久中文字幕在线观看| 亚洲诱惑| 99.色网| 中文字幕 人妻不满 在线视频| 强奸乱伦AV网站| www.av家庭乱伦| 久久久精选| 日韩精品9区| 色第一页| 亚洲天堂性爱| 五月天激情小说| 另类 日韩 熟女| 夜夜操青青草| 女人与公拘交酡2020视频| 超碰97COm中文| 久9综合在线| 好爽免费视频,| 久操大香蕉超碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰 | 中文字幕 人妻不满 在线视频| 日韩成人精品视频自拍| 免费a级毛片av无码久久精品中文字幕| 欧美日韩欧美| 天天影视综合色| 欧美熟女逼久久久久久| 日本99一区二区| 97大色网| 91丝袜美女| 九九热免费国产视频婷婷伊人五月| 美女自卫慰黄网站免费| 国产美女mm131爽爽爽爽| 欧 美 自 拍 偷 拍| 夜夜草我| 中文字幕天堂在线| 精品一区二区三区国产| 青娱乐91| 亚洲国产精品无石码久久 | 久久婷色| 激情九月婷婷| 超碰国产在线| 欧美在线视频99| 激情文学网伊人| 中文字幕第页| 亚洲色人妻综合| 99热综合在线| 日韩伦理视频| 日韩射图| 91九色蝌蚪在线观看| 久久国产熟女影院| 国产精品4p在线观看| 一级人妻性爱视频| 中文字幕精品一区二| 久热精品在线国产| 国产av强奸美女| 口爆吞精在线观看| 伊人女女资源在线观看| 九九色婷婷|