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 相关文章推荐
Python2.x与Python3.x的区别
Jan 14 Python
Python学习笔记之解析json的方法分析
Apr 21 Python
python使用pyqt写带界面工具的示例代码
Oct 23 Python
Python定时器实例代码
Nov 01 Python
Python排序算法之选择排序定义与用法示例
Apr 29 Python
对命令行模式与python交互模式介绍
May 12 Python
Python3爬虫学习之应对网站反爬虫机制的方法分析
Dec 12 Python
python 利用pandas将arff文件转csv文件的方法
Feb 12 Python
python 实现GUI(图形用户界面)编程详解
Jul 17 Python
django queryset 去重 .distinct()说明
May 19 Python
Python matplotlib可视化实例解析
Jun 01 Python
python实现批处理文件
Jul 28 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
Terran历史背景
2020/03/14 星际争霸
php批量删除数据
2007/01/18 PHP
基于asp+ajax和数据库驱动的二级联动菜单
2010/05/06 PHP
Yii2中添加全局函数的方法分析
2017/05/04 PHP
PHP基于堆栈实现的高级计算器功能示例
2017/09/15 PHP
php实现姓名根据首字母排序的类与方法(实例代码)
2018/05/16 PHP
一个很简单的办法实现TD的加亮效果.
2006/06/29 Javascript
CSS和Javascript简单复习资料
2010/06/29 Javascript
Safari5中alert的无限循环BUG
2011/04/07 Javascript
jQuery实现图片信息的浮动显示实例代码
2013/08/28 Javascript
javascript event在FF和IE的兼容传参心得(绝对好用)
2014/07/10 Javascript
JS组件系列之Bootstrap table表格组件神器【二、父子表和行列调序】
2016/05/10 Javascript
使用bootstrap实现多窗口和拖动效果
2016/09/22 Javascript
VueJs组件prop验证简单介绍
2017/09/12 Javascript
微信小程序实现搜索历史功能
2020/03/26 Javascript
ES6 Iterator遍历器原理,应用场景及相关常用知识拓展详解
2020/02/15 Javascript
[01:04:31]DOTA2-DPC中国联赛定级赛 iG vs Magma BO3第二场 1月8日
2021/03/11 DOTA
py2exe 编译ico图标的代码
2013/03/08 Python
构建Python包的五个简单准则简介
2015/06/15 Python
浅谈python类属性的访问、设置和删除方法
2016/07/25 Python
Windows下Anaconda的安装和简单使用方法
2018/01/04 Python
Python实现通讯录功能
2018/02/22 Python
Python 数据处理库 pandas 入门教程基本操作
2018/04/19 Python
python实现键盘控制鼠标移动
2020/11/27 Python
Python基础教程(一)——Windows搭建开发Python开发环境
2020/07/20 Python
python 中关于pycharm选择运行环境的问题
2020/10/31 Python
荷兰本土平价百货:HEMA
2017/10/23 全球购物
英国领先的互联网葡萄酒礼品商:Vintage Wine & Port
2019/05/24 全球购物
自荐信模版
2013/10/24 职场文书
小孩百日宴答谢词
2014/01/15 职场文书
企业车辆管理制度
2014/01/24 职场文书
社区维稳工作方案
2014/06/06 职场文书
井冈山红色之旅感想
2014/10/07 职场文书
队列队形口号
2015/12/25 职场文书
Python爬虫入门案例之回车桌面壁纸网美女图片采集
2021/10/16 Python
python turtle绘图命令及案例
2021/11/23 Python