python——处理xls表格
因为工作需要,现有一个运营商导出的xls固定电话话费账单。
账单比较详细,而我最终需要的数据只有那个号码这个月用了多少话费的统计结果。
当年没有好好学office,以致于无从下手。泪奔/(ㄒoㄒ)/~~
账单结构如下:
想想这几百个号码每个月都有账单,作为一个会偷懒的员工肯定不能抵消地人力处理啦。我们要提倡自动化办公嘛!
好吧,幸好当初学了那么一点点的python可以实际应用一下。事实证明学了不用的东西会很快生锈的。
代码如下:
'''from openpyxl import load_workbook
wb=load_workbook(filename=r'201506.xlsx')
print "worksheet range(s):",wb.get_named_ranges()
'''
#coding=utf-8 #代码中包含汉字
import xlrd def extracttelfree():
workbook=xlrd.open_workbook('201506.xls')
table=workbook.sheets()[0]
excel_colB=table.col_values(1) #excel col B
excel_colC=table.col_values(2) #excel col C
telnum=[]
telfree=[]
for colb in range(1,len(excel_colB)):
if excel_colB[colb]!="":
telnum.append(excel_colB[colb])
for colf in range(1,len(excel_colC)):
if excel_colC[colf]==u'小计':
telfree.append(table.cell(colf,3).value)
phonecount=len(telnum)
print "电话号码合计 %d 个"%phonecount
print "话费个数合计 %d 个"%len(telfree) dict={}
for i in range(0,phonecount):
dict[telnum[i]]=telfree[i]
print u"号码话费映射队列长度:",len(dict) f =open('telnumber.txt')
fread=f.readlines()
print u"号码文本列表长度:",len(fread) for num in range(0,len(fread)):
numfile =fread[num].strip()
freefind=dict.get(numfile,0)
freefind=str(freefind)
print freefind
f.close()
extracttelfree()
然后,就这样把需要的东东提取了。
python——处理xls表格的更多相关文章
- python 处理 Excel 表格
see: http://www.cnblogs.com/sunada2005/p/3193300.html 一.可使用的第三方库 python中处理excel表格,常用的库有xlrd(读excel)表 ...
- python 对Excel表格的写入
python对Excel表格写入需要导入xlrd ,和xlutils两个库 from xlrd import open_workbook from xlutils.copy import copy o ...
- python对Excel表格操作
操作场景,给一个Excel表格随机生成10万个手机号码 python中常见的对Excel操作模块 xlwt module 将数据写入Excel表 xlrd module 读取Excel表格 xlsxw ...
- Python 利用Python操作excel表格之xlwt介绍
利用Python操作excel表格之xlwt介绍 by:授客 QQ:1033553122 直接上代码 案例1 #!/usr/bin/env python # -*- coding:utf-8 ...
- Python读写Excel表格
最近在做一些数据处理和计算的工作,因为数据是以.CSV格式保存的,因此刚开始直接用Excel来处理. 但是做着做着发现重复的劳动,其实并没有多大的意义,于是就想着写个小工具帮着处理. 以前正好在一本书 ...
- python - 操作excel表格
说明:由于公司oa暂缺,人事妹子在做考勤的时候,需要通过几个excel表格去交叉比对员工是否有旷工或迟到,工作量大而且容易出错. 这时候it屌丝的机会来啦,花了一天时间给妹子撸了一个自动化脚本. 1. ...
- Python实现自动处理表格,让你拥有更多的自由时间!
相信有不少朋友日常工作会用到 Excel 处理各式表格文件,更有甚者可能要花大把时间来做繁琐耗时的表格整理工作.最近有朋友问可否编程来减轻表格整理工作量,今儿我们就通过实例来实现 Python 对表格 ...
- Python 利用Python操作excel表格之openyxl介绍Part2
利用Python操作excel表格之openyxl介绍 by:授客 QQ:1033553122 欢迎加入全国软件测试交流qq群(群号:7156436) ## 绘图 c = LineChart() ...
- Python 利用Python操作excel表格之openyxl介绍Part1
利用Python操作excel表格之openyxl介绍 by:授客 QQ:1033553122 欢迎加入全国软件测试交流qq群(群号:7156436),免费获取以下性能监控工具(类似Nmon精简版) ...
随机推荐
- .html() 与.text() 获取值、取值 区别
1.html代码<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <t ...
- vue iview tree checked改变 不渲染的问题
子级的状态 改为checked=false 需要把父的状态改为 false
- 【C++】cout未刷新缓冲区仍会输出的问题
众所周知,cout是一个流对象,管理一个缓冲区.当使用<<操作符输出字符串时,字符串不是直接被输出到屏幕上,而是首先被插入到该流的缓存(buffer)中.而只有当缓冲区被刷新时,字符串才会 ...
- eclipse环境的搭建(转载)
原文地址:http://hanqunfeng.iteye.com/blog/982182 此文章发表于2011年到2012年 使用eclipse真的有年头了,相信java程序员没有不知道它的,最近在给 ...
- Application的特点
1.生命周期长.(内存泄漏) 2.单实例(一个进程就只有一个Application的实例对象) 3.onCreate的方法,可以认为一个应用程序的入口,做一些初始化的事情 4.不能自己new出 App ...
- gridview空间使用
1.HTML代码 <asp:GridView ID="gv_Info" runat="server" AutoGenerateColumns=" ...
- 填坑专记-手脱FSG壳
妈呀,脱FGS壳真的是坎坷颇多,多亏吾爱破解前辈们的帮忙.我一定要记录下来,省的以后再无法解决. 已经查看是FSG壳了.找到入口也容易了.重点就是脱壳并修复好它. 脱壳 OEP为: 使 ...
- Java-排序算法-插入排序
一.插入排序的原理 将一个记录插入到一个已经排好序的有序表中,从而得到一个新的,记录数增1的新的有序表.从第一个元素开始,先将第一个元素看做一个排好序的子序列,然后从第二个元素开始起,对第二个元素进行 ...
- c#调用dll接口传递utf-8字串方法
1. 起源: VCU10之视频下载模块,采用纯python编码实现,c++代码调用pythonrun.h配置python运行环境启动python模块,编译为dll给c#调用,以使界面UI能够使用其中功 ...
- Jedis cluster集群初始化源码剖析
Jedis cluster集群初始化源码剖析 环境 jar版本: spring-data-redis-1.8.4-RELEASE.jar.jedis-2.9.0.jar 测试环境: Redis 3.2 ...