puresoul

 一、安装xlrd模块:

1、mac下打开终端输入命令:

pip install XlsxWriter

2、验证安装是否成功:

  • 在mac终端输入 python  进入python环境
  • 然后输入 import xlswriter

  不报错说明模块安装成功

 

二、常用方法:

1、创建excel文件

# 创建文件
workbook = xlsxwriter.Workbook("new_excel.xlsx"

 

2、创建sheet

# 创建sheet
worksheet = workbook.add_worksheet("first_sheet"

 

3、特定单元格里写入数据

a) 写入文本

# 法一:
worksheet.write(\'A1\', \'write something\')
# 法二:
worksheet.write(1, 0, \'hello world\')

b)写入数字

# 写入数字
worksheet.write(0, 1, 32)
worksheet.write(1, 1, 32.3)

c)写入函数

worksheet.write(2, 1, \'=sum(B1:B2)\')

d)写入图片

# 插入图片
worksheet.insert_image(0, 5, \'test.png\')
worksheet.insert_image(0, 5, \'test.png\', {\'url\': \'http://httpbin.org/\'})

e)写入日期:

# 写入日期
d = workbook.add_format({\'num_format\': \'yyyy-mm-dd\'})
worksheet.write(0, 2, datetime.datetime.strptime(\'2017-09-13\', \'%Y-%m-%d\'), d)

f)设置行、列属性

# 设置行属性,行高设置为40
worksheet.set_row(0, 40)

# 设置列属性,把A到B列宽设置为20
worksheet.set_column(\'A:B\', 20)

 

4、自定义格式:

常用格式:

  • 字体颜色:color
  • 字体加粗:bold
  • 字体大小:font_site
  • 日期格式:num_format
  • 超链接:url
  • 下划线设置:underline
  • 单元格颜色:bg_color
  • 边框:border
  • 对齐方式:align
# 自定义格式
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)

 

5、批量往单元格写入数据

# 批量往单元格写入数据
worksheet.write_column(\'A15\', [1, 2, 3, 4, 5])  # 列写入,从A15开始
worksheet.write_row(\'A12\', [6, 7, 8, 9])        # 行写入,从A12开始

 

6、合并单元格写入

# 合并单元格写入
worksheet.merge_range(7,5, 11, 8, \'merge_range\')

 

7、关闭文件

workbook.close()

 

8、生成图表:

xlswriter还可以用来生成图表,这一部分内容也比较多,下一节单独介绍。

 

示例:

# -*- coding:utf-8 -*-

import xlsxwriter

workbook = xlsxwriter.Workbook("data.xlsx")
worksheet = workbook.add_worksheet()

data = (
    [\'kobe\', 5000],
    [\'T-Mac\', 3000],
    [\'Jordan\', 6000],
    [\'James\', 5000],
)

f = workbook.add_format({\'bold\': True, \'bg_color\': \'yellow\'})

worksheet.write(0, 0, \'name\', f)
worksheet.write(0, 1, \'price\', f)

row = 1
col = 0

for item, cost in data:
    worksheet.write(row, col, item)
    worksheet.write(row, col+1, cost)
    row += 1

workbook.close()

 

 

 

参考官网:http://xlsxwriter.readthedocs.io/ 

分类:

技术点:

相关文章: