摘要:創(chuàng)建新行新列統(tǒng)計(jì)有多少行多少列,中文編碼問題,單元格為空的問題。如果是將從頭到尾順序添加。,如果是按照相應(yīng)的鍵添加相應(yīng)的鍵值。
【未完成】歡迎添加問題
openpyxl能做到什么。
更系統(tǒng)的文檔。
有沒有覆蓋的函數(shù)。
創(chuàng)建新行、新列、統(tǒng)計(jì)有多少行、多少列,中文編碼問題,單元格為空的問題。
既然是處理excel的,excel自身的特點(diǎn),比如excel函數(shù)、圖表、合并,等等的特性
官方文檔 寫的不太好,大致就是入門的一些操作和比較有特點(diǎn)的地方。
源代碼 包含各個(gè)類和函數(shù)的代碼,比較有用。
創(chuàng)建workbook:
from openpyxl import Workbook wb=Workbook()
創(chuàng)建sheet:
1,默認(rèn)表,在創(chuàng)建wb時(shí)默認(rèn)就創(chuàng)建了sheet,使用 ws=wb.active得到 2,創(chuàng)建新表 ws1=wb.create_sheet(title,index) #插入到結(jié)尾 ws2=wb.create_sheet(0)#插入到開頭 wsn=wb.create_sheet(n)#插入到第n個(gè)位置
創(chuàng)建新行:
這個(gè)方法openpyxl沒有給定函數(shù),overstackflow有相關(guān)函數(shù),請(qǐng)見:[添加行][3]
創(chuàng)建新列
這個(gè)方法openpyxl沒有給定函數(shù),overstackflow有相關(guān)函數(shù),請(qǐng)見:[添加列][4]保存
wb.save(file)讀
讀workbook 文檔
使用: from openpyxl import load_workbook wb=load_workbook(filename)
來源于:
openpyxl.reader.excel.load_workbook(filename, read_only=False, use_iterators=False, keep_vba=False, guess_types=False, data_only=False)
注:
filename是路徑+文件名*
read_only:只讀模式,會(huì)使得讀取更快
use_iterators:該lazy模式,默認(rèn)采用只讀模式,所有的worksheet將openpyxl.worksheet.iter_worksheet.IterableWorksheet類型的
它的特點(diǎn)是跳過empty cells
讀worksheet
ws=wb[sheetname]
ws=wb.get_sheet_by_name(sheetname)
想要知道sheet名可以用
wb.get_sheet_names()得到
逐行讀
ws.iter_rows(range_string=None, row_offset=0, column_offset=0)
range-string(string)-單元格的范圍:例如("A1:C4")
row_offset-添加行
column_offset-添加列
返回一個(gè)生成器,
注意取值時(shí)要用value,例如:
for var in ws.iter_rows(): print var[0].value
讀指定行、指定列
rows=ws.rows#row是可迭代的
columns=ws.columns#column是可迭代的
打印第n行所有數(shù)據(jù)
print rows[n]#不需要用.value
print columns[n]#不需要用.value
讀連續(xù)單元格
cell_range = ws["A1":"C2"]
讀指定的單元格
ws.cell("B12").value
ws.cell(row=12,column=2).value
讀所有單元格數(shù)據(jù)
get_cell_collection()
寫寫一行源代碼和解釋
ws.append(iterable)
添加一行到當(dāng)前sheet的最底部
iterable必須是list,tuple,dict,range,generator類型的。
1,如果是list,將list從頭到尾順序添加。
2,如果是dict,按照相應(yīng)的鍵添加相應(yīng)的鍵值。
append([‘This is A1’, ‘This is B1’, ‘This is C1’]) append({‘A’ : ‘This is A1’, ‘C’ : ‘This is C1’}) append({1 : ‘This is A1’, 3 : ‘This is C1’})
寫一列
寫一格
ws["A4"] = 4
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/37894.html
摘要:特別提醒不支持對(duì)文件的處理,且對(duì)原文件的樣式保存非常不友好,如果你有保存原文件樣式要求的話,建議使用替代基礎(chǔ)操作直接復(fù)制代碼到編輯器,邊看邊運(yùn)行,理解起來估計(jì)還快些第一部分創(chuàng)建并寫入數(shù)據(jù)創(chuàng)建一個(gè)表,并寫入數(shù)據(jù)導(dǎo)入一個(gè)已存在的打開活動(dòng)的工作薄 特別提醒:openpyxl不支持對(duì)xls文件的處理,且對(duì)原文件的樣式保存非常不友好,如果你有保存原文件樣式要求的話,建議使用xlwings替代op...
摘要:意味著字符串必須以結(jié)束。匹配不在方括號(hào)內(nèi)的任意字符中轉(zhuǎn)義字符使用倒斜杠。你需要輸入轉(zhuǎn)義字符,才能打印出一個(gè)倒斜杠。但是,通過在字符串的第一個(gè)引號(hào)之前加上,可以將該字符串標(biāo)記為原始字符串,它不包括轉(zhuǎn)義字符。 每個(gè)英語學(xué)渣(好吧,其實(shí)這個(gè)說的就是學(xué)渣本渣了♀)都有這樣一個(gè)夢(mèng)想: 能夠一邊輕松愉快地看著美劇,一邊自己的英語聽力水平還能蹭蹭地往上漲 。知乎上也有很多人分享了自己通過美劇練習(xí)聽力...
摘要:作者主頁不吃西紅柿不吃西紅柿簡介博客專家核心組成員歡迎點(diǎn)贊收藏評(píng)論粉絲專屬福利簡歷模板模板知識(shí)體系面試題庫技術(shù)互助。知識(shí)體系含編程語言算法大數(shù)據(jù)生態(tài)圈組件數(shù)據(jù)倉庫前端等。 ? 作者主頁:不吃西紅柿? ? 簡介:CSDN博客專家?、HDZ核心組成員? 歡迎點(diǎn)贊、收藏、評(píng)論 ? 粉絲專屬福利...
摘要:基礎(chǔ)操作放棄的基礎(chǔ)理由不支持文件處理親測(cè)目前版本樣式保存的還未解決如果遇到上面兩個(gè)問題,直接放棄,擁抱吧,沒什么出路文檔在國內(nèi)搜索基本很少,如下是基本的單元格操作在如下未滿足的情況,可以看下操作文檔,可以調(diào)它的。 xlwings基礎(chǔ)操作 放棄openpyxl的基礎(chǔ)理由:①不支持xls文件處理; ②親測(cè)目前版本樣式保存的bug還未解決; 如果遇到上面兩個(gè)問題,直接放棄openpyxl,...
摘要:前言用過和庫的同學(xué)都知道,這兩個(gè)庫是相互互補(bǔ)的。絕對(duì)是中處理最快最好用的庫,但是使用的一些優(yōu)勢(shì)是能夠輕松地使用樣式條件格式等自定義電子表格。事實(shí)上,支持將數(shù)據(jù)從轉(zhuǎn)換為工作簿,或者相反,將工作簿轉(zhuǎn)換為。 ...
閱讀 3451·2021-11-08 13:20
閱讀 3375·2021-09-30 09:48
閱讀 2579·2021-09-29 09:41
閱讀 600·2021-09-22 15:04
閱讀 2499·2021-08-23 09:44
閱讀 3689·2020-12-03 17:26
閱讀 1021·2019-08-30 14:10
閱讀 1575·2019-08-29 18:34