Python 如何写入Excel格式和颜色

作者:威震四海 时间:2023-03-10 20:49:55 

Python写入Excel有时需要合并单元格、或者改变文字内容的颜色

首先导入xlwt模块


import xlwt

创建文件名

创建Excel工作簿对象

创建工作表

创建样式字体红色


filename = (u'商品模板.xls')
wb = xlwt.Workbook()
sheet = wb.add_sheet('sheet1')
style = "font:colour_index red;"
red_style = xlwt.easyxf(style)

准备要写入的数据


datas = [
    ['name','code', 'cost', 'goods_category_id',
    'weight', 'net_weight', 'brand_id',
    'out_id', 'image_url', 'customs_code',
    'hs_code', 'customs_price', 'active',    
    'is_group','cn_name','goods_name','goods_price'],
     [u'商品名称',u'商品编码', u'成本', u'商品类别',
     u'重量', u'净重', u'品牌', u'外部链接',
     u'图片URL', u'海关编码', u'hs编码',
     u'海关报价', u'商品状态(0/f)', u'是否组合商品(t/f)',
     u'申报中文名',u'商品名称',u'销售单价']
   ]

表头数据的写入


row_count = len(datas)
for row in range(0, row_count):
 col_count = len(datas[row])
 for col in range(0, col_count):
   if row == 0:     # 设置表头单元格的格式
     sheet.write(row, col, datas[row][col])
   else:         # 表头下面的数据格式
     sheet.write(row, col, datas[row][col], red_style)

合并单元格、写入注释


note = u'红色字体部分为说明部分,请删除。产品批量更新字段必须要name(就是sku),其他需要更新的信息,自行复制下列字段添加到第一行(t为是,f为否)'
sheet.write_merge(2, 2, 0, len(datas[1]), note, red_style)

效果如下:

Python 如何写入Excel格式和颜色

这里着重介绍一下write_merge(start_row,end_row,start_col,end_col,data,style)中的6个参数

start_row:合并单元格的起始行

end_row:合并单元格的终止行

start_col:合并单元格的起始列

end_col:合并单元格的终止列

data:内容

style:样式

补充:python操作Excel和Docx并控制文字的颜色及其他样式(通俗易懂)

1、Excel


from xlsxwriter.workbook import Workbook
workbook = Workbook(r'test.xlsx') # 创建xlsx
worksheet = workbook.add_worksheet('A') # 添加sheet
red = workbook.add_format({'color':'red'}) # 颜色对象
worksheet.write(0, 0, 'sentences') # 0,0表示row,column,sentences表示要写入的字符串
test_list = ["我爱", "中国", "天安门"]
test_list.insert(1, red) # 将颜色对象放入需要设置颜色的词语前面
print(test_list)
worksheet.write_rich_string(1, 0, *test_list) # 写入工作簿
workbook.close() # 记得关闭

结果如下:

Python 如何写入Excel格式和颜色

2、Docx


from docx import Document # pip install python-docx
from docx.shared import RGBColor, Pt
from docx.oxml.ns import qn
content = ["我爱", "中国"," 北京"]
print(content)
# 创建文档对象
document = Document()
# 创建段落对象,注意,里面的内容会显示在段落开头
para = document.add_paragraph('段落0\n')
# 往para段落对象中添加正文内容
para.add_run(content[0])
# 往para对象添加内容的同时返回内容对象run,之后可以通过这个run对象给这个部分的文字设置样式,比如颜色,大小,字体等
run = para.add_run(content[1])
# 给run对象设置字体颜色属性, RGBColor(250,0,0)表示红色
run.font.color.rgb = RGBColor(250,0,0)
# 给run对象设置字体大小属性
run.font.size = Pt(20)
# 给run对象设置字体类型属性
run.font.name = u'宋体'
run._element.rPr.rFonts.set(qn('w:eastAsia'), u'宋体')
# para对象中添加其他内容
para.add_run(content[2])
# 保存
document.save('test.docx')

结果如下:

Python 如何写入Excel格式和颜色

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。

来源:https://blog.csdn.net/Beyond_F4/article/details/83411519

标签:Python,Excel,颜色
0
投稿

猜你喜欢

  • 3个JS控制图片滚动的效果

    2007-10-23 13:40:00
  • JSP安全开发之XSS漏洞详解

    2023-06-13 13:07:24
  • javascript 自动转到命名锚记

    2024-04-29 13:44:46
  • python处理大日志文件

    2021-11-09 22:21:14
  • python中的__init__ 、__new__、__call__小结

    2021-07-19 20:10:38
  • 不管你的Python报什么错,用这个模块就能正常运行

    2023-08-29 14:42:43
  • 基于webstorm卡顿问题的2种解决方法

    2023-02-23 09:03:17
  • Python制作个性化的词云图实例讲解

    2021-10-17 03:51:02
  • response.setHeader()方法设置http文件头的值

    2010-03-11 22:43:00
  • python中引用与复制用法实例分析

    2022-09-04 09:54:35
  • 一个挺酷的星级投票效果

    2010-08-03 12:44:00
  • Jupyter Notebook读取csv文件出现的问题及解决

    2023-08-09 23:11:50
  • Python实现简易版的Web服务器(推荐)

    2021-04-21 04:41:15
  • 使用Python实现简单的服务器功能

    2021-06-29 09:25:31
  • golang接口IP限流,IP黑名单,IP白名单的实例

    2024-04-25 15:18:14
  • 深入理解Python虚拟机中列表(list)的实现原理及源码剖析

    2022-07-10 22:02:27
  • VB.NET调用MySQL存储过程并获得返回值的方法

    2024-01-12 16:03:45
  • [翻译]寻找圣杯 In Search of the Holy Grail

    2008-11-12 13:10:00
  • Python OpenCV 图像矫正的原理实现

    2021-06-06 20:00:24
  • vue中的mixins混入使用方法

    2023-07-02 17:01:47
  • asp之家 网络编程 m.aspxhome.com