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中IPYTHON入门实例
May 11 Python
Python 操作MySQL详解及实例
Apr 30 Python
Python设计模式之状态模式原理与用法详解
Jan 15 Python
python cumsum函数的具体使用
Jul 29 Python
opencv之为图像添加边界的方法示例
Dec 26 Python
python3+selenium获取页面加载的所有静态资源文件链接操作
May 04 Python
Python使用sqlite3模块内置数据库
May 07 Python
Java ExcutorService优雅关闭方式解析
May 30 Python
关于tf.matmul() 和tf.multiply() 的区别说明
Jun 18 Python
python线程池 ThreadPoolExecutor 的用法示例
Oct 10 Python
Python函数调用追踪实现代码
Nov 27 Python
python中threading和queue库实现多线程编程
Feb 06 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
动漫定律:眯眯眼都是怪物!这些角色狠话不多~
2020/03/03 日漫
mysql_fetch_assoc和mysql_fetch_row的功能加起来就是mysql_fetch_array
2007/01/15 PHP
php include的妙用,实现路径加密
2008/07/29 PHP
解决Codeigniter不能上传rar和zip压缩包问题
2014/03/07 PHP
php单例模式的简单实现方法
2016/06/10 PHP
JavaScript 学习笔记(十二) dom
2010/01/21 Javascript
javascript 使用 NodeList需要注意的问题
2013/03/04 Javascript
简述Jquery与DOM对象
2015/07/10 Javascript
JavaScript实现向右伸出的多级网页菜单效果
2015/08/25 Javascript
js获取及修改网页背景色和字体色的方法
2015/12/29 Javascript
JS模拟的Map类实现方法
2016/06/17 Javascript
mongoose中利用populate处理嵌套的方法
2017/05/26 Javascript
五步轻松实现JavaScript HTML时钟效果
2020/03/25 Javascript
微信小程序实现团购或秒杀批量倒计时
2020/11/01 Javascript
微信小程序实现侧边栏分类
2019/10/21 Javascript
vue中使用element ui的弹窗与echarts之间的问题详解
2019/10/25 Javascript
vue项目中监听手机物理返回键的实现
2020/01/18 Javascript
微信小程序利用for循环解决内容变更问题
2020/03/05 Javascript
jQuery 函数实例分析【函数声明、函数表达式、匿名函数等】
2020/05/19 jQuery
video.js添加自定义组件的方法
2020/12/09 Javascript
在Python中操作字典之update()方法的使用
2015/05/22 Python
Python实现字典按照value进行排序的方法分析
2017/12/23 Python
Django实现分页显示效果
2019/10/31 Python
Python numpy大矩阵运算内存不足如何解决
2020/11/19 Python
利用css3 translate完美实现表头固定效果
2017/02/28 HTML / CSS
橄榄树药房:OLIVEDA
2019/09/01 全球购物
写好自荐信要注意的问题
2013/11/10 职场文书
中学生期中自我鉴定
2014/04/20 职场文书
材料专业大学毕业生自荐书
2014/07/02 职场文书
集体生日活动方案
2014/08/18 职场文书
工资收入证明样本(5篇)
2014/09/16 职场文书
代理词怎么写
2015/05/25 职场文书
公司规章制度范本
2015/08/03 职场文书
先进工作者主要事迹材料
2015/11/03 职场文书
新店开业策划方案怎么书写?
2019/07/05 职场文书
Python实现DBSCAN聚类算法并样例测试
2021/06/22 Python