python之xlsxwriter模块(可操作xlsxlsx格式⽂件)
xlsxwriter模块
  ⼀、xlsxwriter 基本⽤法,创建 xlsx ⽂件并添加数据
  ⼆、xlsxwriter 格式处理,将待添加数据转换成相应的格式,添加到 xlsx ⽂件中
  三、xlsxwriter 添加表格,在 xlsx ⽂件中添加表格
  四、深⼊理解格式(Format Class),并运⽤
⼀、xlsxwriter 基本⽤法,创建 xlsx ⽂件并添加数据
  官⽅⽂档:/ 
  xlsxwriter 可以操作xls/xlsx格式⽂件
  注意:xlsxwriter 只能创建新⽂件,不可以修改原有⽂件。如果创建新⽂件时与原有⽂件同名,则会覆盖原有⽂件
  Linux 下安装: sudo pip install XlsxWriter
  Windows 下安装: pip install XlsxWriter
  基本⽤法:
1 #!/usr/bin/python
2 #coding: utf-8
3
4 import xlsxwriter
5
6 #创建⼀个新的xlsx⽂件(如果原有同名⽂件会被覆盖)
7 workbook = xlsxwriter.Workbook("Expenses01.xlsx")
8
9 #创建⼀个新的表单,默认名称为 “sheet1”,输⼊字符参数可指定名称
10 worksheet = workbook.add_worksheet()
11
12 expenses = (
13    ['Rent', 1000],
14    ['Gas' ,  100],
15    ['Food',  300],
16    ['Gym' ,  50],
17 )
18
19 #worksheet 默认是从0⾏、0列开始计数
20 row = 0
21 col = 0
22
23 #worksheet.write ⽅法将数据写⼊ xlsx 表格中
24 #参数依次为:⾏号、列号、数据、[格式]
25 for item, cost in (expenses):
26    worksheet.write(row, col ,    item)
27    worksheet.write(row, col + 1, cost)
28    row += 1
29
30 #显式关闭workbook,若不显式指定,则作⽤域结束后⾃动关闭
31 workbook.close()
  效果展⽰:
⼆、xlsxwriter 格式处理,将待添加数据转换成相应的格式,添加到 xlsx ⽂件中
  先设置格式,使⽤⽅法:workbook.add_format
  再指定格式写⼊,使⽤⽅法:worksheet.write_string
1 #!/usr/bin/python
2 #coding: utf-8
3
4 from datetime import datetime
5 import xlsxwriter
6
7 workbook = xlsxwriter.Workbook('Expenses02.xlsx')
8 worksheet = workbook.add_worksheet()
9
10 #设定格式,等号左边格式名称⾃定义,字典中格式为指定选项
11 #bold:加粗,num_format:数字格式
12 bold_format = workbook.add_format({'bold':True})
13 money_format = workbook.add_format({'num_format':'$#,##0'})
14 date_format =workbook.add_format({'num_format':'mmmm d yyyy'})
15
16 #将⼆⾏⼆列设置宽度为15(从0开始)
17 worksheet.set_column(1, 1, 15)
18
19 #⽤符号标记位置,例如:A列1⾏
20 worksheet.write('A1', 'Item', bold_format)
21 worksheet.write('B1', 'Cost', bold_format)
22 worksheet.write('C1', 'Cost', bold_format)
23
24 expenses = (
25    ['Rent', '2016-03-11', 1000],
26    ['Gad',  '2016-03-12',  100],
27    ['Food', '2016-03-13', 400],
28    ['Gym',  '2016-03-14',  50],
29 )
30
31 row = 1
32 col = 0
33
34 for item, date_str, cost in (expenses):
35    #将数据格式转化为Python datetime.datetime 格式
36    #之后⽤write_datetime⽅法录⼊⽇期格式
37    date = datetime.strptime(date_str, "%Y-%m-%d")
38
39    #使⽤write_string⽅法,指定数据格式写⼊数据
40    worksheet.write_string(row, col,    item)
41    worksheet.write_datetime(row, col + 1, date,  date_format)
42    worksheet.write_number(row, col + 2, cost, money_format)
43    row += 1
44
45 worksheet.write(row, 0, 'Total',      bold_format)
46 worksheet.write(row, 1, '=SUM(B2:B5)', money_format)
47
48 workbook.close()
  效果展⽰:
  写⼊⽇期格式时,指定对象要是 Python 的 datetime.datetime 格式  使⽤ workbook.add_format 绑定时,可以指定如下格式
 三、xlsxwriter 添加表格,在 xlsx ⽂件中添加表格
1 #!/usr/bin/python
2 #coding: utf-8
3
4 import xlsxwriter
5
6 workbook = xlsxwriter.Workbook('chart.xlsx')
7 worksheet = workbook.add_worksheet()
8
9 #新建图标对象
10 chart = workbook.add_chart({'type': 'column'})
11
12 #向 excel 中写⼊数据,建⽴图标时要⽤到
13 data = [
14    [1, 2, 3, 4, 5],
15    [2, 4, 6, 8, 10],
16    [3, 6, 9, 12, 15],
17 ]
18
19 worksheet.write_column('A1', data[0])
20 worksheet.write_column('B1', data[1])
21 worksheet.write_column('C1', data[2])
22
23 #向图表中添加数据,例如第⼀⾏为:将A1~A5的数据转化为图表
24 chart.add_series({'values': '=Sheet1!$A$1:$A$5'})
25 chart.add_series({'values': '=Sheet1!$B$1:$B$5'})
26 chart.add_series({'values': '=Sheet1!$C$1:$C$5'})
27
28 #将图标插⼊表单中
29 worksheet.insert_chart('A7', chart)
30
31 workbook.close()
  效果展⽰:
四、更多可⽤的单元格式对象(Format Class)
  ecxel 中每⼀个单元,都有如下属性:字体(fonts)、颜⾊(colors)、模式(patterns)、边界(borders)、alignment、number formatting
  设置属性:
format = workbook.add_format()
#⽤对象接⼝设置格式属性
format.set_bold()
format.set_font_color('red')
#⽤字典设置格式属性
property = {python怎么读取xls文件
'bold': True,
'font_color': 'red'
}
format = workbook.add_format(property)

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。