一、安裝XlsxWriter模塊
pip install XlsxWriter
二、常用方法
import xlsxwriter import datetime workbook = xlsxwriter.Workbook("new_excel.xlsx") #創建Excel worksheet = workbook.add_worksheet("first_sheet") #添加sheet #寫入文本 # 法一: worksheet.write('A1', 'write something,this is A1') # 法二: worksheet.write(1, 0, 'hello A2') # 寫入數字 worksheet.write(0, 1, 32) #B1 = 32 worksheet.write(1, 1, 32.3) #B2 = 32.3 #寫入函數 worksheet.write(2, 1, '=sum(B1:B2)') #B3 = 64.3 # 插入圖片 worksheet.insert_image(0, 5, '2.jpeg') # worksheet.insert_image(0, 5, 'test.png', {'url': 'http://httpbin.org/'}) # 寫入日期 d = workbook.add_format({'num_format': 'yyyy-mm-dd'}) worksheet.write(0, 2, datetime.datetime.strptime('2019-12-17', '%Y-%m-%d'), d) #C1 # 設置行屬性,行高設置為40 worksheet.set_row(0, 40) # 設置列屬性,把A到B列寬設置為20 worksheet.set_column('A:B', 20) # 自定義格式 f = workbook.add_format({'border': 1, 'font_size': 13, 'bold': True, 'align': 'center','bg_color': 'cccccc'}) worksheet.write('A3', "python excel", f) worksheet.set_row(0, 40, f) worksheet.set_column('A:E', 20, f) # 批量往單元格寫入數據 worksheet.write_column('A15', [1, 2, 3, 4, 5]) # 列寫入,從A15開始 worksheet.write_row('A12', [6, 7, 8, 9]) # 行寫入,從A12開始 # 合並單元格寫入 worksheet.merge_range(7,5, 11, 8, 'merge_range') #關閉文件 workbook.close()
xlsxwriter模塊寫入格式
write_boolean 寫boolean值
write_datetime 寫日期
write_number 寫數字
write_string 寫字符串
write_blank 空
write_url 寫連接
write_formula 寫公式
insert_image 插入圖片
merge_range 合並單元格寫入
xlsxwrite單元格格式:add_format
color:red 字體顏色
bold:True 字體加粗
font_site:12 字體大小
num_format:yy-mm-dd 日期格式
url:www.baidu.com 超鏈接
underline:True 下划線設置
bg_color:red 單元格顏色
邊框:border
對齊方式:align
# 導入模塊 import xlsxwriter # 打開student.xlsx文件 workbook = xlsxwriter.Workbook("student.xlsx") # 創建一張工作表 worksheet = workbook.add_worksheet() # 設置第一行信息 worksheet.write(0, 0, "學號") worksheet.write(0, 1, "姓名") worksheet.write(0, 2, "年齡") # 學生信息列表 student_list = [{"name": "小明", "age": 20, "no": "20170901001"}, {"name": "小紅", "age": 21, "no": "20170901002"}, {"name": "小剛", "age": 20, "no": "20170901003"}, {"name": "小海", "age": 23, "no": "20170901004"}, {"name": "小陽", "age": 25, "no": "20170901005"}] # 遍歷列表 for i, info in enumerate(student_list): # 寫入數據 # write(第x行, 第x列, 寫入的數據) worksheet.write(i + 1, 0, info["no"]) worksheet.write(i + 1, 1, info["name"]) worksheet.write(i + 1, 2, info["age"]) # 關閉文件 workbook.close()
完