python常識系列07-->python利用xlwt寫入excel檔案

新夢想IT 發表於 2023-01-04
Python Excel




前言

 讀書之法,在循序而漸進,熟讀而精思。——朱熹

 抽空又來寫一篇,畢竟知識在於分享! 

一、xlwt模組是什麼

python第三方工具包,用於往excel中寫入資料;(ps:只能建立新表格,不能修改表格內容!!)

它支援 xlsx 和 xls 格式的excel表格;

與之對應的還有一個xlrd包,用於讀取excel中的資料。

二、安裝xlwt模組

命令列中輸入:pip install xlwt

下載安裝包進行離線安裝

三、xlwt應用舉例

3.1 xlwt基本應用例項



import xlwt


#建立可寫的workbook物件

workbook = xlwt.Workbook(encoding='utf-8')

#建立工作表sheet

worksheet = workbook.add_sheet('sheet1')

#往表中寫內容,第一個引數 行,第二個引數列,第三個引數內容

worksheet.write(0, 0, 'name')

#在單元格中新增超連結

worksheet.write(0, 1, xlwt.Formula('HYPERLINK(")'))

#儲存表為stu_info.xlsx

workbook.save('stu_info.xlsx')



3.2 給表格內容設定樣式,即設定字型等



import xlwt


#建立可寫的workbook物件

workbook = xlwt.Workbook(encoding='utf-8')

import xlwt


workbook = xlwt.Workbook(encoding='utf-8')

#建立工作表sheet

worksheet = workbook.add_sheet('sheet1')

#建立字型樣式物件

font = xlwt.Font()

#設定字型(常用字型都支援)

font.name = '微軟雅黑'

#設定下劃線

font.underline = True

#設定加粗

font.bold = True

#設定斜體

font.italic = True

# 設定字型為紅色,這裡不能使用16進製表示顏色的方法去設定

font.colour_index=xlwt.Style.colour_map['red']

#建立樣式物件

font_style = xlwt.XFStyle()

#設定字型樣式

font_style.font = font

#往表中寫內容,第四個引數:字型樣式

worksheet.write(0, 0, '小紅', font_style)

workbook.save('students.xls')


3.3 單元格設定(對齊方式、大小)



import xlwt


workbook = xlwt.Workbook(encoding='utf-8')

worksheet = workbook.add_sheet('sheet1')

#建立一個單元格設定格式物件

alignment = xlwt.Alignment()

#設定水平居中

alignment.horz = xlwt.Alignment.HORZ_CENTER

#設定垂直居中

alignment.vert = xlwt.Alignment.VERT_CENTER

#建立樣式物件

style = xlwt.XFStyle()

#把水平\垂直居中放入樣式物件

style.alignment = alignment

#設定單元格寬度

worksheet.col(0).width = 5000

#設定單元格高度

worksheet.row(0).height_mismatch = True

worksheet.row(0).height = 800


worksheet.write(0, 0, 'name', style)

workbook.save('stu_info.xls')


3.4 設定單元格邊框(邊框顏色、邊框樣式)



import xlwt

workbook = xlwt.Workbook()

worksheet = workbook.add_sheet('sheet1')

#建立邊框樣式物件

borders = xlwt.Borders()

#設定上下左右邊框的線條樣式:DASHED 表示虛線

borders.top = xlwt.Borders.DASHED

borders.bottom = xlwt.Borders.DASHED

borders.left = xlwt.Borders.DASHED

borders.right = xlwt.Borders.DASHED

#設定上下左右邊框的顏色 0x0A 表示紅色

borders.top_colour = 0x0A

borders.bottom_colour = 0x0A

borders.left_colour = 0x0A

borders.right_colour = 0x0A

#建立樣式物件

style = xlwt.XFStyle()

#把邊框樣式物件放入樣式物件

style.borders = borders

worksheet.write(1, 1, '小明', style)

workbook.save('stu_info.xls')


3.5 設定單元格背景色



import xlwt


workbook = xlwt.Workbook()

worksheet = workbook.add_sheet('My Sheet')

#建立樣式物件

pattern = xlwt.Pattern()

#設定固定樣式

pattern.pattern = xlwt.Pattern.SOLID_PATTERN # May be: NO_PATTERN, SOLID_PATTERN, or 0x00 through 0x12

#設定背景顏色 0 黑色 1 白色 2 紅色 3 綠色 4 藍色 5 黃色 6 紫紅色等等

pattern.pattern_fore_colour = 5

#建立樣式物件

style = xlwt.XFStyle()

#把樣式物件放入樣式物件

style.pattern = pattern

worksheet.write(0, 0, '小名', style)

workbook.save('stu_info.xls')


上面透過5個例項講解了xlwd的常用操作,讀者可自行執行後檢視效果;

例項中有用到顏色的時候,只講了部分顏色的程式碼,讀者可以去看xlwt模組下的style.py檢視更多顏色;

例項4中有用到線條的樣式,讀者可以去看xlwt模組下的Formatting.py中的Borders類


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69940641/viewspace-2930777/,如需轉載,請註明出處,否則將追究法律責任。