一.安裝xlwt模塊
1.pip3
install
xlwt
二.簡單使用xlwt
1.import
xlwt
#導入模塊
2.workbook = xlwt.Workbook(encoding=
'utf-8'
)
#創建workbook 對象
3.worksheet = workbook.add_sheet(
'sheet1'
)
#創建工作表sheet
4.worksheet.write(0, 0,
'hello'
)
#往表中寫內容,第一各參數 行,第二個參數列,第三個參數內容
5.workbook.save(
'students.xls'
)
#保存表為students.xls
6.#在Java中使用poi操作excel 在創建workbook對象的時候就需要寫好表名,創建workbook對象完成后
7.#這個表就已經存在,但是使用xlwt 需要在最后調用保存的時候為表命名,並且只有調入save方法后才會#創建表
三.為內容設置style
1.workbook
=
xlwt.Workbook(encoding
=
'utf-8'
)
2.worksheet
=
workbook.add_sheet(
'sheet1'
)
#設置字體樣式
3.font
=
xlwt.Font()
#字體
4.font.name
=
'Time New Roman'
#加粗
5.font.bold
=
True
#下划線
6.font.underline
=
True
#斜體
7.font.italic
=
True
#創建style
8.style
=
xlwt.XFStyle()
9.style.font
=
font
#根據樣式創建workbook
10.worksheet.write(
0
,
1
,
'world'
, style)
11.workbook.save(
'students.xls'
)
四.合並單元格
使用xlwt 合並單元格時不用像poi通過style來設置,直接創建和並單元格就可以,
1.workbook
=
xlwt.Workbook(encoding
=
'utf-8'
)
2.worksheet
=
workbook.add_sheet(
'sheet1'
)
#通過worksheet調用merge()創建合並單元格
#第一個和第二個參數單表行合並,第三個和第四個參數列合並,
#合並第0列到第2列的單元格
3.worksheet.write_merge(
0
,
0
,
0
,
2
,
'first merge'
)
#合並第1行第2行第一列的單元格
4.worksheet.write_merge(
0
,
1
,
0
,
0
,
'first merge'
)
5.workbook.save(
'students.xls'
)
如果需要了解具體調合並單元格規則就自己試着合並,查看合並效果.才能清晰明了
五.設置單元格的對齊方式
1.workbook
=
xlwt.Workbook(encoding
=
'utf-8'
)
2.worksheet
=
workbook.add_sheet(
'sheet1'
)
3.alignment
=
xlwt.Alignment()
# 水平居中
4.alignment.horz
=
xlwt.Alignment.HORZ_CENTER
# 垂直居中
5.alignment.vert
=
xlwt.Alignment.VERT_CENTER
6.style
=
xlwt.XFStyle()
7.style.alignment
=
alignment
#設置單元格寬度
8.worksheet.col(
0
).width
=
6666
#設置單元格的高度
9.worksheet.row(
0
).height_mismatch
=
True
10.worksheet.row(
0
).height
=
1000
11.worksheet.write(
0
,
0
,
'hello world'
, style)
12.workbook.save(
'center.xls'
)
六.設置單元格調邊框
1.workbook
=
xlwt.Workbook(encoding
=
'utf-8'
)
2.worksheet
=
workbook.add_sheet(
'sheet1'
)
3.border
=
xlwt.Borders()
# DASHED虛線
# NO_LINE沒有
# THIN實線
4.border.left
=
xlwt.Borders.THIN
# 設置顏色
5.border.left_coloure
=
0x40b
6.border.right
=
xlwt.Borders.THIN
7.border.right_colour
=
0x40b
8.border.top
=
xlwt.Borders.THIN
9.border.top_colour
=
0x40b
10.border.bottom
=
xlwt.Borders.THIN
11.border.bottom_colour
=
0x40b
12.style
=
xlwt.XFStyle()
13.style.borders
=
border
14.worksheet.write(
0
,
0
,
'love'
, style)
15.workbook.save(
'dashed.xls'
)
七.設置單元格邊框
1.workbook
=
xlwt.Workbook(encoding
=
'utf-8'
)
2.worksheet
=
workbook.add_sheet(
'sheet1'
)
3.border
=
xlwt.Borders()
# DASHED虛線
# NO_LINE沒有
# THIN實線
4.border.left
=
xlwt.Borders.THIN
5.border.right
=
xlwt.Borders.THIN
6.border.top
=
xlwt.Borders.THIN
7.border.bottom
=
xlwt.Borders.THIN
8.style
=
xlwt.XFStyle()
9.style.borders
=
border
10.worksheet.write(
1
,
1
,
'love'
, style)
11.workbook.save(
'dashed.xls'
)
八.設置單元格背景色
1.workbook
=
xlwt.Workbook(encoding
=
'utf-8'
)
2.worksheet
=
workbook.add_sheet(
'sheet1'
)
3.pattern
=
xlwt.Pattern()
4.pattern.pattern
=
xlwt.Pattern.SOLID_PATTERN
# 8 through 63
# 0 = Black, 1 = White,
# 2 = Red, 3 = Green, 4 = Blue,
# 5 = Yellow, 6 = Magenta, 7 = Cyan,
# 16 = Maroon, 17 = Dark Green,
# 18 = Dark Blue, 19 = Dark Yellow ,
# almost brown), 20 = Dark Magenta,
# 21 = Teal, 22 = Light Gray,
# 23 = Dark Gray, the list goes on...
5.pattern.pattern_fore_colour
=
3
6.style
=
xlwt.XFStyle()
7.style.pattern
=
pattern
8.worksheet.write(
1
,
1
,
'shit'
, style)
9.workbook.save(
'shit.xls'
)
九.設置字體顏色
1.workbook
=
xlwt.Workbook(encoding
=
'utf-8'
)
2.worksheet
=
workbook.add_sheet(
'sheet1'
)
3.font
=
xlwt.Font()
# 設置字體為紅色
4.font.colour_index
=
xlwt.Style.colour_map[
'red'
]
5.style
=
xlwt.XFStyle()
6.style.font
=
font
7.worksheet.write(
0
,
1
,
'world'
, style)
8.workbook.save(
'students.xls'
)
遇到的問題:
1.PermissionError: [Errno 13] Permission denied: 'dashed.xls'
原因:測試寫入調時候文件被打開了,無法寫入,關閉文件后再寫入就ok了
2.TypeError: 'module' object is not callable
創建style的時候調錯對象將
1.style
=
xlwt.Style()
改為
1.style
=
xlwt.XFStyle()