python向xls写入数据(包括合并,边框,对齐,列宽)


Posted in Python onFebruary 02, 2021

1、常规写入

# -*- encoding=utf-8 -*-
import xlwt

if __name__ == '__main__':
  head = ['姓名', '年龄', '出生年月']
  data = [
    ['盖伦', '20', '2012-02-04'],
    ['赵信', '18', '2013-05-12'],
    ['女枪', '18', '2015-12-12'],
    ['剑圣', '20', '2012-11-14'],
    ]
  workbook = xlwt.Workbook()
  # 添加一个表,
  # cell_overwrite_ok=True表示覆盖,如果下标相同,则覆盖,不写,下标相同,则抛出异常
  sheet1 = workbook.add_sheet('Sheet1', cell_overwrite_ok=False)
  for index, info in enumerate(head): # 写入表头
    sheet1.write(0, index, info)
  for index, row_data in enumerate(data): # 写入数据,注意拼接下标
    for line, line_data in enumerate(row_data):
      sheet1.write(index + 1, line, line_data)

  sheet2 = workbook.add_sheet('Sheet2') # 添加一个表
  for index, info in enumerate(head): # 写入表头
    sheet2.write(0, index, info)
  for index, row_data in enumerate(data): # 写入数据,注意拼接下标
    for line, line_data in enumerate(row_data):
      sheet2.write(index + 1, line, line_data)
  workbook.save('savexls.xls')

运行后

python向xls写入数据(包括合并,边框,对齐,列宽)

 2、合并单元格写入

# -*- encoding=utf-8 -*-
import xlwt

if __name__ == '__main__':
  workbook = xlwt.Workbook()
  sheet1 = workbook.add_sheet('Sheet1')
  # 合并从0行到0行,从0列到1列
  sheet1.write_merge(0, 0, 0, 1, '合并单元格')

  # 合并从2行到4行,从0列到3列
  sheet1.write_merge(2, 4, 0, 3, '合并单元格')
  workbook.save('merge.xls')

运行截图

python向xls写入数据(包括合并,边框,对齐,列宽)

3、追加写入

源xls文件

python向xls写入数据(包括合并,边框,对齐,列宽)

# -*- encoding=utf-8 -*-

import xlrd
from xlutils.copy import copy

if __name__ == '__main__':
  pass
  filename = 'readxls.xls'
  f = xlrd.open_workbook(filename) # 打开Excel为xlrd对象
  old_sheet = f.sheet_by_index(0) # 取到第一个旧表
  old_sheet_rows = old_sheet.nrows # 第一个旧表的行数,下面追加就得在这个后面写入数据
  copy_read = copy(f) # 把xlrd对象转为xlwt对象
  new_sheet = copy_read.add_sheet('new_sheet') # 添加新表,表名不能重复
  head = ['name', 'age', 'birthday']
  data = [[1, 2, 3], [4, '2019/02/01', 6], [7, 8, 9]]
  for index, info in enumerate(head): # 写入表头
    new_sheet.write(0, index, info)
  for index, row_data in enumerate(data): # 写入数据,注意拼接下标
    for line, line_data in enumerate(row_data):
      new_sheet.write(index + 1, line, line_data)
  exist_sheet = copy_read.get_sheet(0) # 取旧表
  exist_sheet.write(old_sheet_rows, 0, '新数据1')
  exist_sheet.write(old_sheet_rows, 1, '新数据2')
  exist_sheet.write(old_sheet_rows, 2, '新数据3')
  copy_read.save('append.xlsx')

运行截图

python向xls写入数据(包括合并,边框,对齐,列宽)

4、设置对齐,边框,列宽

# -*- encoding=utf-8 -*-import xlwtbook = xlwt.Workbook()sheet = book.add_sheet('sheet')sheet.write(6, 6, 'data')align = xlwt.Alignment()align.horz = xlwt.Alignment.HORZ_CENTER # 水平居中align.vert = xlwt.Alignment.VERT_CENTER # 垂直居中font = xlwt.Font() # 字体基本设置font.name = u'新宋体'font.colour_index = 32764 # 字体颜色font.height = 160 # 字体大小borders = xlwt.Borders()borders.left = xlwt.Borders.THIN # 添加边框,细实线borders.right = xlwt.Borders.THINborders.top = xlwt.Borders.THINborders.bottom = xlwt.Borders.THINsheet.col(6).width = 12 * 256 # 设置列宽,一个中文等于两个英文等于两个字符,12为字符数,256为衡量单位style = xlwt.XFStyle()style.font = fontstyle.alignment = alignstyle.borders = borderssheet.write(6, 8, 'data', style)book.save('style.xls')

python向xls写入数据(包括合并,边框,对齐,列宽)

以上就是python向xls写入数据(包括合并,边框,对齐,列宽)的详细内容,更多关于python向xls写入数据的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
Python创建xml的方法
Mar 10 Python
举例讲解Python中is和id的用法
Apr 03 Python
Python中使用urllib2模块编写爬虫的简单上手示例
Jan 20 Python
简单了解什么是神经网络
Dec 23 Python
Windows下anaconda安装第三方包的方法小结(tensorflow、gensim为例)
Apr 05 Python
Java与Python两大幸存者谁更胜一筹呢
Apr 12 Python
Python3利用print输出带颜色的彩色字体示例代码
Apr 08 Python
python 利用浏览器 Cookie 模拟登录的用户访问知乎的方法
Jul 11 Python
彻底搞懂 python 中文乱码问题(深入分析)
Feb 28 Python
TensorFlow keras卷积神经网络 添加L2正则化方式
May 22 Python
python如何写个俄罗斯方块
Nov 06 Python
Django url 路由匹配过程详解
Jan 22 Python
Python datetime模块的使用示例
Feb 02 #Python
Python基于argparse与ConfigParser库进行入参解析与ini parser
Feb 02 #Python
python中子类与父类的关系基础知识点
Feb 02 #Python
python中time包实例详解
Feb 02 #Python
python+playwright微软自动化工具的使用
Feb 02 #Python
python爬虫智能翻页批量下载文件的实例详解
Feb 02 #Python
Python3.9.0 a1安装pygame出错解决全过程(小结)
Feb 02 #Python
You might like
php str_pad() 将字符串填充成指定长度的字符串
2010/02/23 PHP
百度UEditor编辑器如何关闭抓取远程图片功能
2015/03/03 Javascript
轻量级javascript 框架Backbone使用指南
2015/07/24 Javascript
JavaScript Math 对象常用方法总结
2016/04/28 Javascript
基于jQuery插件实现点击小图显示大图效果
2016/05/11 Javascript
简单的分页代码js实现
2016/05/17 Javascript
JQuery的attr 与 val区别
2016/06/12 Javascript
Jquery on绑定的事件 触发多次实例代码
2016/12/08 Javascript
JS填写银行卡号每隔4位数字加一个空格
2016/12/19 Javascript
input file样式修改以及图片预览删除功能详细概括(推荐)
2017/08/17 Javascript
详解vue项目接入微信JSSDK的坑
2018/12/14 Javascript
JavaScript实现密码强度实时验证
2020/03/18 Javascript
Python中random模块用法实例分析
2015/05/19 Python
使用Django的模版来配合字符串翻译工作
2015/07/27 Python
python实现列表中由数值查到索引的方法
2018/06/27 Python
python实现飞机大战
2018/09/11 Python
Centos部署django服务nginx+uwsgi的方法
2019/01/02 Python
使用TensorFlow实现简单线性回归模型
2019/07/19 Python
基于tensorflow for循环 while循环案例
2020/06/30 Python
仿酷狗html5手机音乐播放器主要部分代码
2013/05/15 HTML / CSS
前端实现弹幕效果的方法总结(包含css3和canvas的实现方式)
2018/07/12 HTML / CSS
阿迪达斯俄罗斯官方商城:adidas俄罗斯
2017/03/08 全球购物
全球速卖通:AliExpress(国际版淘宝)
2017/09/20 全球购物
Coccinelle官网:意大利的著名皮具品牌
2019/05/15 全球购物
伊莱克斯阿根廷网上商店:Tienda Electrolux
2021/03/08 全球购物
总经理岗位职责
2013/11/09 职场文书
作文批改评语大全
2014/04/23 职场文书
思想作风建设心得体会
2014/10/22 职场文书
国际贸易实训报告
2014/11/05 职场文书
就业推荐表自我评价范文
2015/03/02 职场文书
2015年中学校长工作总结
2015/05/19 职场文书
《假如》教学反思
2016/02/17 职场文书
用Python监控你的朋友都在浏览哪些网站?
2021/05/27 Python
在 SQL 语句中处理 NULL 值的方法
2021/06/07 SQL Server
MyBatis 动态SQL全面详解
2021/10/05 MySQL
Mysql InnoDB 的内存逻辑架构
2022/05/06 MySQL