前言

python操作excel主要用到xlrd和xlwt这两个库,即xlrd是读excel,xlwt是写excel的库。本文主要介绍了python使用xlrd与xlwt对excel的读写和格式设定,下面话不多说,来看看详细的实现过程。

脚本里先注明# -*- coding:utf-8 -*-

1. 确认源excel存在并用xlrd读取第一个表单中每行的第一列的数值。

1

2

3

4

5

6

7

8

9

10

import xlrd, xlwt

import os

assert os.path.isfile('source_excel.xls'),"There is no timesheet exist. Exit..."

book= xlrd.open_workbook('source_excel.xls')

sheet=book.sheet_by_index(0)

for rowsin range(sheet.nrows):

value= sheet.cell(rows,0).value

2. 用xlwt准备将从源表中读出的数据写入新表,并设定行宽和表格的格式。合并单元格2行8列后写入标题,并设定格式为之前定义的tittle_style。

使用的是write_merge。

1

2

3

4

5

wbk= xlwt.Workbook(encoding='utf-8')

sheet_w= wbk.add_sheet('write_after', cell_overwrite_ok=True)

sheet_w.col(3).width= 5000

tittle_style= xlwt.easyxf('font: height 300, name SimSun, colour_index red, bold on; align: wrap on, vert centre, horiz center;')

sheet_w.write_merge(0,2,0,8,u'这是标题',tittle_style)

3. 当函数中要用到全局变量时,注意加global。否则会出现UnboundLocalError:local variable'xxx' referenced before assignment.

1

2

3

4

5

check_num= 0

def check_data(sheet):

global check_num

check_num=check_num+1

4. 写入日期和带格式的数值。原来从sheet中读取的日期格式为2014/4/10,处理后只保留日期并做成数组用逗号分隔后写入新的excel。

1

2

3

4

5

6

date_arr= []

date=sheet.cell(row,2).value.rsplit('/')[-1]

if datenot in date_arr:

date_arr.append(date)

sheet_w.write_merge(row2,row2,6,6,date_num, normal_style)

sheet_w.write_merge(row2,row2,7,7,','.join(date_arr), normal_style)

5. 当从excel中读取的日期格式为xldate时,就需要使用xlrd的xldate_as_tuple来处理为date格式。先判断表格的ctype确实是xldate才能开始操作,否则会报错。之后date格式可以使用strftime来转化为string。如:date.strftime("%Y-%m-%d-%H")

1

2

3

4

5

6

7

from datetimeimport date,datetime

from xlrdimport xldate_as_tuple

if (sheet.cell(rows,3).ctype== 3):

num=num+1

date_value= xldate_as_tuple(sheet.cell_value(rows,3),book.datemode)

date_tmp= date(*date_value[:3]).strftime("%d")

6. 最后保存新写的表

1

wbk.save('new_excel.xls')

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。

python设置excel的格式_python使用xlrd与xlwt对excel的读写和格式设定相关推荐

  1. python xlrd pandas_python处理excel方式(openpyxl,xlrd,xlwt,openpyxl,panda)

    一.python操作excel之openpyxl 前言 根据官方文档,openpyxl 是一个第三方库, 它可以可以处理 xlsx/xlsm 格式的 Excel 文件(A Python library ...

  2. Python 读写操作Excel —— 安装第三方库(xlrd、xlwt、xlutils、openpyxl)

    数据处理是 Python 的一大应用场景,而 Excel 则是最流行的数据处理软件.因此用 Python 进行数据相关的工作时,难免要和 Excel 打交道. 如果仅仅是要以表单形式保存数据,可以借助 ...

  3. coot怎么调用python_python使用xlrd与xlwt对excel的读写和格式设定

    前言 python操作excel主要用到xlrd和xlwt这两个库,即xlrd是读excel,xlwt是写excel的库.本文主要介绍了python使用xlrd与xlwt对excel的读写和格式设定, ...

  4. xlrd和xlwt操作Excel文件

    DAY8 xlrd和xlwt操作Excel文件 一.xlrd获取文件内容 1.打开excel文件 import xlrd wb = xlrd.open_workbook('files/data1.xl ...

  5. python扩展库xlwt支持对_python第三方库——xlrd和xlwt操作Excel文件学习

    一.xlrd和xlwt的安装 xlrd和xlwt是python的第三方库,所以是需要自己安装的,可以在python的官网https://pypi.python.org/pypi下载该模块来安装,也可以 ...

  6. 【转】经典!python中使用xlrd、xlwt操作excel表格详解

    最近遇到一个情景,就是定期生成并发送服务器使用情况报表,按照不同维度统计,涉及python对excel的操作,上网搜罗了一番,大多大同小异,而且不太能满足需求,不过经过一番对源码的"研究&q ...

  7. Python xlrd和xlwt操作Excel实现自动化

    ​ ​ 活动地址:CSDN21天学习挑战赛 目录 一.7大库优缺点对比 二.xlrd读取Excel表 1.安装xlrd模块 2.xlrd读取Excel表 1)打开Excel表 2)获取全部表名 3)指 ...

  8. python中使用xlrd、xlwt操作excel表格详解

    近遇到一个情景,就是定期生成并发送服务器使用情况报表,按照不同维度统计,涉及python对excel的操作,上网搜罗了一番,大多大同小异,而且不太能满足需求,不过经过一番对源码的"研究&qu ...

  9. python如何使用ppip安装xlwt_Python中xlrd和xlwt模块使用方法 (python对excel文件的操作)...

    本文主要介绍可操作excel文件的xlrd.xlwt模块.其中xlrd模块实现对excel文件内容读取,xlwt模块实现对excel文件的写入. 安装xlrd和xlwt模块 xlrd和xlwt模块不是 ...

最新文章

  1. 不仅仅是手机,MWC现全球首例 5G NR 商用部署
  2. ArcGIS Engine开发前基础知识(2)
  3. Android开发之--Preferences的使用
  4. java中function实现_Java中的functor实现
  5. Qt文档阅读笔记-Advanced Signals and Slots Usage解析与实例
  6. rest-assured之获取响应数据(Getting Response Data)
  7. 【Kafka】kafka 0.10.0 版本低级消费 API
  8. mongodb查询的语法(大于,小于,大于或等于,小于或等于等等)
  9. PSENet PANNet DBNet 三个文本检测算法异同
  10. 电脑文件一键实时备份同步至云端(百度云盘)
  11. CSS单行文本溢出时显示省略号
  12. 四叶草剧场服务器维修价格,四叶草剧场服务器介绍 服务器选择攻略
  13. CF1076C Meme Problem(韦达定理)
  14. utf-8的英文字母和中文汉字是一个字符占几个字节
  15. VXE-TABLE V4 表格表尾合并
  16. Python Flask No.1_简介
  17. Linux系统磁盘大小比raid小,挂载磁盘阵列柜后,显示的大小比实际小1TB
  18. java打字游戏课程设计_Java课程设计打字游戏.docx
  19. HEVC学习笔记 第1章 编码结构
  20. Devops 开发运维基础篇之使用Maven构建项目

热门文章

  1. 机器学习朴素贝叶斯算法_机器学习中的朴素贝叶斯算法
  2. SpringCloud Ribbon中的7种负载均衡策略!
  3. nohup xxx 后台进程关闭,可以这样避免
  4. 传播时延、发送时延、处理时延和排队时延各自的物理意义是什么?
  5. 彩票模拟选号程序java_java课程设计-彩票购买抽奖程序
  6. python zip函数转制_Python zip函数及用法
  7. 面积积分_袁颖妍:用定理积分求平面区域面积(有代表性的9个例题)
  8. php三级分销系统制作_微分销商城系统创建三级微商分销体系方法
  9. 最拼爹的css属性:z-index失效情况记录
  10. 微软:Win11很受欢迎、正式版将于秋季如期发布