新聞中心
寫(xiě)入后的格式如下圖所示:

讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來(lái)自于我們對(duì)這個(gè)行業(yè)的熱愛(ài)。我們立志把好的技術(shù)通過(guò)有效、簡(jiǎn)單的方式提供給客戶,將通過(guò)不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長(zhǎng)期合作伙伴,公司提供的服務(wù)項(xiàng)目有:申請(qǐng)域名、雅安服務(wù)器托管、營(yíng)銷(xiāo)軟件、網(wǎng)站建設(shè)、寶山網(wǎng)站維護(hù)、網(wǎng)站推廣。
以下為數(shù)據(jù)用例:
- import xlsxwriter as xw
- import pandas as pd
- import openpyxl as op
- "-------------數(shù)據(jù)用例-------------"
- orderIds = [1,2,3]
- items = ['A','B','C']
- myData = [10,20,30]
- testData = [orderIds,items,myData]
- filename1 = '測(cè)試1.xlsx'
- filename2 = '測(cè)試2.xlsx'
- filename3 = '測(cè)試3.xlsx'
- "--------------執(zhí)行----------------"
- xw_toexcel(testData,filename1)
- pd_toexcel(testData,filename2)
- op_toexcel(testData,filename3)
下面開(kāi)始分別介紹三種方法:
01 xlsxwriter
- def xw_toexcel(data,filename): # xlsxwriter庫(kù)儲(chǔ)存數(shù)據(jù)到excel
- workbook = xw.Workbook(filename) # 創(chuàng)建工作簿
- worksheet1 = workbook.add_worksheet("sheet1") # 創(chuàng)建子表
- worksheet1.activate() # 激活表
- title = ['序號(hào)','項(xiàng)目','數(shù)據(jù)'] # 設(shè)置表頭
- worksheet1.write_row('A1',title) # 從A1單元格開(kāi)始寫(xiě)入表頭
- i = 2 # 從第二行開(kāi)始寫(xiě)入數(shù)據(jù)
- for j in range(len(data)):
- insertData = [data[0][j],data[1][j],data[2][j]]
- row = 'A' + str(i)
- worksheet1.write_row(row, insertData)
- i += 1
- workbook.close() # 關(guān)閉表
02 pandas
- def pd_toexcel(data,filename): # pandas庫(kù)儲(chǔ)存數(shù)據(jù)到excel
- dfData = { # 用字典設(shè)置DataFrame所需數(shù)據(jù)
- '序號(hào)':data[0],
- '項(xiàng)目':data[1],
- '數(shù)據(jù)':data[2]
- }
- df = pd.DataFrame(dfData) # 創(chuàng)建DataFrame
- df.to_excel(filename,index=False) # 存表,去除原始索引列(0,1,2...)
03 openpyxl
- def op_toexcel(data,filename): # openpyxl庫(kù)儲(chǔ)存數(shù)據(jù)到excel
- wb = op.Workbook() # 創(chuàng)建工作簿對(duì)象
- ws = wb['Sheet'] # 創(chuàng)建子表
- ws.append(['序號(hào)','項(xiàng)目','數(shù)據(jù)']) # 添加表頭
- for i in range(len(data[0])):
- d = data[0][i], data[1][i], data[2][i]
- ws.append(d) # 每次寫(xiě)入一行
- wb.save(filename)
小結(jié)
openpyxl 與 xlsxwriter 類(lèi)似,需要逐行寫(xiě)入,如第一行需要得到 [ 1, ‘A’ , 10 ] 的格式,但不同的是使用openpyxl.load_workbook(filepath)可以對(duì)已存在的 .xlsx 進(jìn)行追加數(shù)據(jù),不會(huì)覆蓋;pandas 則需先按列組合,如 [[ 1,2,3],['A','B','C'],[…]]的格式。
方法各有好處,寫(xiě)表時(shí)應(yīng)根據(jù)需要選用。
名稱(chēng)欄目:Python實(shí)現(xiàn)數(shù)據(jù)寫(xiě)入Excel的三種模塊
路徑分享:http://www.5511xx.com/article/djdsiho.html


咨詢
建站咨詢
