XlsxWriter 模塊python
官網下載地址:https://pypi.python.org/pypi/XlsxWriter/0.9.3spa
官方文檔:http://xlsxwriter.readthedocs.orgexcel
XlsxWriter is a Python module for creating Excel XLSX files.orm
XlsxWriter 是一我的基於Pytohn用於建立Excel文件的庫,只能建立新文件,不支持讀取和修改,因此和xlrd配合使用。utf-8
eg1:建立名爲‘hello.xlsx’文件,並在第一行,第一列寫入數據‘Hello, world’。文檔
代碼:get
# -*- coding: utf-8 -*- # Python操做excel表格(寫) # 建立名爲'hello.xlsx'文件,並在第一行,第一列寫入數據'Hello, world'. import xlsxwriter workbook = xlsxwriter.Workbook('hello.xlsx') worksheet = workbook.add_worksheet('test') worksheet.write('A1', 'Hello, world') workbook.close()
運行結果:string
eg2:新建一個表格‘test’, 新建sheet表‘test1’, 插入數據,中國移動流量包價格大小統計表。it
代碼:form
# -*- coding: utf-8 -*- # 新建一個表格‘test’, 新建sheet表‘test1’, 插入數據,中國移動流量包價格大小統計表。 import xlsxwriter workbook = xlsxwriter.Workbook('test.xlsx') worksheet = workbook.add_worksheet('test1') data = ( # 數據格式 ['value', 'MB'], ['3', '10'], ['5', '30'], ['10', '70'], ['20', '150'], ['30', '500'], ['50', '1024'], ['70', '2048'], ['100', '3072'], ['130', '4096'], ['180', '6144'], ['280', '11264'], ) row = 0 col = 0 for facevalue, size in (data): # 插入數據 worksheet.write(row, col, facevalue) worksheet.write(row, col + 1, size) row += 1 workbook.close()
運行結果:
eg3:建立帶格式的Excel表格
代碼:
# -*- coding: utf-8 -*- # 添加一些格式 import xlsxwriter workbook = xlsxwriter.Workbook('test2.xlsx') worksheet = workbook.add_worksheet('test2') bold = workbook.add_format({'bold': True}) # 設置粗體,默認False money = workbook.add_format({'num_format': '$#,##0'}) # 定義數字格式 worksheet.write('A1', 'Item', bold) # 設置自定義表頭加粗 worksheet.write('B1', 'Cost', bold) expenses = ( ['Rent', 1000], ['Gas', 100], ['Food', 300], ['Gym', 50], ) row = 1 col = 0 for item, cost in (expenses): worksheet.write(row, col, item) # 默認格式寫入 worksheet.write(row, col + 1, cost, money) # 設置帶money格式寫入 row += 1 worksheet.write(row, 0, 'Total', bold) worksheet.write(row, 1, '=SUM(B2:B5)', money) workbook.close()
運行結果:
eg4:建立帶日期的Excel表格
代碼:
# -*- coding: utf-8 -*- import xlsxwriter from datetime import datetime workbook = xlsxwriter.Workbook('test3.xlsx') worksheet = workbook.add_worksheet() # 不命名sheet名稱,默認爲'sheet1' bold = workbook.add_format({'bold': 1}) money_format = workbook.add_format({'num_format': '$#,##0'}) date_format = workbook.add_format({'num_format': 'mmmm d yyyy'}) worksheet.set_column(1, 1, 15) worksheet.write('A1', 'Item', bold) worksheet.write('B1', 'Date', bold) worksheet.write('C1', 'Cost', bold) expenses = ( ['Rent', '2013-01-13', 1000], ['Gas', '2013-01-14', 100], ['Food', '2013-01-16', 300], ['Gym', '2013-01-20', 50], ) row = 1 col = 0 for item, date_str, cost in (expenses): date = datetime.strptime(date_str, "%Y-%m-%d") worksheet.write_string(row, col, item) worksheet.write_datetime(row, col + 1, date, date_format ) worksheet.write_number(row, col + 2, cost, money_format) row += 1 worksheet.write(row, 0, 'Total', bold) worksheet.write(row, 2, '=SUM(C2:C5)', money_format) workbook.close()
運行結果: