[Python] 利用python的第三方库xlrd和xlwt来处理excel数据
今天在处理excel表格的时候,有一个需要提取表格中部分数据的操作。如果人工操作的话,有将近几千行,这样重复操作劳民伤财。
所以python就派上用场了。
简单介绍一下我要处理的问题,在excel一列有层级关系的数据,以xxx-xxx-xxx-xxx的格式展示,但是我需要的是提取最后一个符号之前的数据。
废话不多说,上代码。
# _*_ coding: utf-8 _*_
import sys import xlrd
import xlwt test = xlrd.open_workbook('E:\demo.xlsx') # 获取新建一个test表格
sheet = test.sheet_names() # 获取sheet的名字
print(sheet) sheet_1 = test.sheet_by_index(0) # 获取第一个sheet,我的xxlsx只有一个sheet
# 获取列数
myrows = sheet_1.nrows # 获取sheet_1的行数
print(myrows) font0 = xlwt.Font() # 16-19行代码都是在调整单元格的字体
font0.name = "Times New Roman"
style = xlwt.XFStyle()
style.font = font0 xlsx = xlwt.Workbook() # 新建一个xlx文件,这里有一个坑,xlwt建的是xls文件,如果你命名问xlsx后缀的话,会出现打开错误
sht = xlsx.add_sheet('sheet1') # 新建一个名为sheet1的sheet def handle(cell):
str = '.'
str1 = '-'
l = cell[::-1] # 把字符串反向,详细参考https://www.cnblogs.com/jasmine0627/p/9510296.html
l1 = l[l.index(str1):] # 字符串里面获取自定义字符前面的字符串,详细参考https://www.cnblogs.com/java-deft/p/9828399.html
l2 = l1[::-1]
l3 = l2[:-1]
print(l3)
return l3 cell1 = sheet_1.col_values(0, 1, 562) # 获取sheet_1中的1到562的数据,
rows = len(cell1) # 获取cell1的长度 for i in range(rows):
if isinstance(cell1[i], float):
sht.write(i, 0, '', style) # 将符合此条件的数据放入相应的单元格中
else:
sht.write(i, 0, handle(cell1[i]), style) # 将符合此条件的数据放入相应的单元格中 xlsx.save('E:\demo_1.xls') # 最后将处理后的数据保存到一张新的excel表中
代码有点粗糙,但是完成相应的操作,嘻嘻!
代码的质量还有待提高,慢慢来。
最后,人生苦短我用python!
[Python] 利用python的第三方库xlrd和xlwt来处理excel数据的更多相关文章
- Python安装第三方库 xlrd 和 xlwt 。处理Excel表格
1. 到 https://pypi.python.org/simple/xlwt/ 和https://pypi.python.org/simple/xlrt/ 下载 xlrd 和 xlwt ...
- python第三方库——xlrd和xlwt操作Excel文件学习
python第三方库——xlrd和xlwt操作Excel文件学习 1安装: C:\Users\Lenovo>pip install xlwtCollecting xlwt Downloadin ...
- Python之excel第三方库xlrd和xlwt
Python读取excel表格的库xlrd,首先安装xlrd: pip3 install xlrd 代码: #!usr/bin/env python3 #!-*-coding=utf-8 -*- '' ...
- Python常用的数据文件存储的4种格式(txt/json/csv/excel)及操作Excel相关的第三方库(xlrd/xlwt/pandas/openpyxl)(2021最新版)
序言:保存数据的方式各种各样,最简单的方式是直接保存为文本文件,如TXT.JSON.CSV等,除此之外Excel也是现在比较流行的存储格式,通过这篇文章你也将掌握通过一些第三方库(xlrd/xlwt/ ...
- Python中使用第三方库xlrd来写入Excel文件示例
Python中使用第三方库xlrd来写入Excel文件示例 这一篇文章就来介绍下,如何来写Excel,写Excel我们需要使用第三方库xlwt,和xlrd一样,xlrd表示read xls,xlwt表 ...
- python 操作excle 之第三方库 openpyxl学习
目录 python 操作excle 之第三方库 openpyxl学习 安装 pip install openpyxl 英文文档链接 : 点击这里~ 1,定位excel 2,读取excle中的内容 3, ...
- Python用pip安装第三方库时换源下载
pip默认是从Python官网下载第三方库,从国外下载当然不如从国内下载来得快 豆瓣:https://pypi.doubanio.com/simple 还有其它源,阿里云等等,一个就够用了 用pip安 ...
- [置顶] android利用jni调用第三方库——第三篇——编写库android程序整合第三方库libhello.so到自己的库libhelloword.so
0:前言: 在第二篇中,我们主要介绍了丙方android公司利用乙方C++公司给的动态库,直接调用库中的方法,但是这样方式受限于: 乙方C++公司开发的动态库是否符合jni的规范,如果不规范,则不能直 ...
- [置顶] android利用jni调用第三方库——第二篇——编写库android程序直接调用第三方库libhello.so
0:前言 1:本文主要作为丙方android公司的身份来写 2:作者有不对的地方,请指出,谢谢 [第一篇:android利用jni调用第三方库——编写库libhello.so] [第二篇:androi ...
- 人生苦短之我用Python篇(安装第三方库、正则表达式)
安装第三方库 两种方法, 一.在DOS界面下运行 pip3 install requests 二.切换至request目录下 cd E:\ python3 setup.py install ----- ...
随机推荐
- Batch Normalization及其反向传播及bn层的作用
笔记: Batch Normalization及其反向传播 重点: 在神经网络中,网络是分层的,可以把每一层视为一个单独的分类器,将一个网络看成分类器的串联.这就意味着,在训练过程中,随着某一层分类器 ...
- ASP.Net Core 项目部署
安装环境 部署环境有两种: .Net Core SDK 包含所有运行时和程序开发包,用于程序开发使用,体积相对较大. .Net Core Runtime 仅用于程序运行,不包含开发包,体积小. 注:部 ...
- CentOS 7 搭建NFS服务器
服务端安装 # 创建挂载目录 cd ~ cd data/ mkdir www-content cd www-content/ pwd # 安装软件 yum install nfs-utils yum ...
- git 访问仓库错误
通过https访问git出现错误, failed: Error in the pull function 尝试将https改为http
- 巧用 awk 批量杀进程
今天遇到线上的一个问题: 我需要批量杀死某台机器的 PHP 进程,该怎么办? 注意,不是 php-fpm,是常驻任务. 如果是一个进程,那就好办了,ps -ef | grep php,找到 PID 然 ...
- Kernel panic 堆栈信息怎么看
Kernel panic 是指 Linux 内核遇到了无法继续执行的致命错误,此时会在屏幕上输出一些错误信息,其中就包括堆栈信息.堆栈信息是指发生错误时 CPU 执行的代码路径,可以通过堆栈信息来定位 ...
- cesium中文网
http://cesium.xin/cesium/cn/Documentation1.62/CallbackProperty.html
- Cesium 概述 (二) 空间数据可视化
https://blog.csdn.net/happyduoduo1/article/details/51865811/
- 最全linux基础知识
linux基础知识 [root@localhost ~]# 各位置表示什么意识 root:表示用户名 (现在的用户是root切换为test便是张三) localhost:表示主机名 (当前主机名切换为 ...
- Go/C++/Java中的数组对比
数组是大多数编程语言中的基本数据结构.然而,不同的编程语言对数组的实现和语义有所不同.以下是 Go.C++ 和 Java 中数组的主要区别: 1. 基本性质 Go: 数组是值类型.赋值或将数组传递给函 ...