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常用web框架简单性能测试结果分享(包含django、flask、bottle、tornado)
Aug 25 Python
Python Web框架Flask信号机制(signals)介绍
Jan 01 Python
如何将python中的List转化成dictionary
Aug 15 Python
解决Python 爬虫URL中存在中文或特殊符号无法请求的问题
May 11 Python
Python 输入一个数字判断成绩分数等级的方法
Nov 15 Python
Django框架实现分页显示内容的方法详解
May 10 Python
python实现LRU热点缓存及原理
Oct 29 Python
python Django框架实现web端分页呈现数据
Oct 31 Python
Python urllib2运行过程原理解析
Jun 04 Python
浅析python中的del用法
Sep 02 Python
利用python+ffmpeg合并B站视频及格式转换的实例代码
Nov 24 Python
只需要100行Python代码就可以实现的贪吃蛇小游戏
May 27 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
自己动手做一个SQL解释器
2006/10/09 PHP
php+MySQL判断update语句是否执行成功的方法
2014/08/28 PHP
laravel 解决paginate查询多个字段报错的问题
2019/10/22 PHP
CL vs ForZe BO5 第三场 2.13
2021/03/10 DOTA
使用javascript获取flash加载的百分比的实现代码
2011/05/25 Javascript
js或者jquery判断图片是否加载完成实现代码
2013/03/20 Javascript
js function定义函数的几种不错方法
2014/02/27 Javascript
JS获取iframe中marginHeight和marginWidth属性的方法
2015/04/01 Javascript
基于JavaScript实现 网页切出 网站title变化代码
2016/04/03 Javascript
利用Query+bootstrap和js两种方式实现日期选择器
2017/01/10 Javascript
前端编码规范(3)JavaScript 开发规范
2017/01/21 Javascript
ES6新特性四:变量的解构赋值实例
2017/04/21 Javascript
React-Native实现ListView组件之上拉刷新实例(iOS和Android通用)
2017/07/11 Javascript
Layui 设置select下拉框自动选中某项的方法
2018/08/14 Javascript
js实现图片实时时钟
2020/01/15 Javascript
vue form表单post请求结合Servlet实现文件上传功能
2021/01/22 Vue.js
通过C++学习Python
2015/01/20 Python
python实现将元祖转换成数组的方法
2015/05/04 Python
在Python的Flask中使用WTForms表单框架的基础教程
2016/06/07 Python
Python之多线程爬虫抓取网页图片的示例代码
2018/01/10 Python
python 修改本地网络配置的方法
2019/08/14 Python
用Python爬取QQ音乐评论并制成词云图的实例
2019/08/24 Python
Keras自定义IOU方式
2020/06/10 Python
python pandas dataframe 去重函数的具体使用
2020/07/20 Python
sublime3之内网安装python插件Anaconda的流程
2020/11/10 Python
Python 可视化神器Plotly详解
2020/12/26 Python
不同浏览器对CSS3和HTML5的支持状况
2009/10/31 HTML / CSS
Halston Heritage官网:简洁的日装,稍显奢华的晚装
2018/11/20 全球购物
国外的一些J2EE面试题一
2012/10/13 面试题
2013年保送生自荐信格式
2013/11/20 职场文书
办公室前台岗位职责
2014/01/04 职场文书
公司前台辞职报告
2014/01/19 职场文书
物理力学求职信
2014/02/18 职场文书
法律专业大学生职业生涯规划书:向目标一步步迈进
2014/09/22 职场文书
干部作风建设工作总结
2014/10/29 职场文书
大卫科波菲尔读书笔记
2015/06/30 职场文书