Python实现对excel文件列表值进行统计的方法


Posted in Python onJuly 25, 2015

本文实例讲述了Python实现对excel文件列表值进行统计的方法。分享给大家供大家参考。具体如下:

#!/usr/bin/env python
#coding=gbk
#此PY用来统计一个execl文件中的特定一列的值的分类
import win32com.client
filename=raw_input("请输入要统计文件的详细地址:")
flag=0    #用于判断文件 名如果不带‘日'就为 0
if '\xc8\xd5' in filename:flag=1
print 50*'='+'\n\t 请稍等,程序正在统计中。。。'
try:
  xls=win32com.client.Dispatch('et.Application')
  try:
    xlsfile=xls.Workbooks.Open(filename)
    #打开指定的文件,一般打开的是sheet1
    sheet=xlsfile.Worksheets('Sheet1')
  except:
    print '文件找开错误!'
    exit(1)
    print '程序正在自动退出。。。'
  if sheet.Cells(3,6).Value!=u'业务类型' or sheet.Cells(3,3).Value!=u'转办单位':
    print '您输入的表格已不是默认的表格,数据格式有误'
    exit(1) #这个判断是当文件中的特定列改变时,直接退出程序
  i=4
  dept=sheet.Cells(i,3).Value
  type=sheet.Cells(i,6).Value
  typelist=[] #用于存放数据的列表,下面就是取sheet表里的某一列数据
  deptlist=[] #用于存放转办单位的列表
  while type:
    typelist.append(type)
    deptlist.append(dept)
    i=i+1
    type=sheet.Cells(i,6).Value
    dept=sheet.Cells(i,3).Value
  #存放列的数据到二个列表中
  counts=len(typelist) #总件数
  if counts==0:
    print '输入的文件统计结果为0,是否文件的格式有误?'
    exit(1)
  typelist=[(i,typelist.count(i)) for i in set(typelist)]
  departmentlist=[]
  delchar='0123456789' #删除取出列表中有可能带数字 分开字段有空格的话
  for i in deptlist[:]:
    i=''.join([j for j in i if j not in delchar])
    while '.' in i: i=i.replace('.',' ')
    deptlist+=i.split()
  deptlist=deptlist[counts:]
  deptlist=[(i,deptlist.count(i)) for i in set(deptlist)]
  #下面是打印格式等 。。。
  print '\n'+50*'='
  print '\t信访件总数为%d件,下面是各分类件数' % counts,
  print '\n'+50*'='+'\n'
  for i in range(len(typelist)):
    print '\t',typelist[0],typelist[1],'\t',
    if i % 2 ==1 : print '\n'
  if flag==0:
    print '\n'+50*'='+'\n\t下面是转办单位的分类\n'+50*'='
    for i in range(len(deptlist)):
      print '\t',deptlist[0],deptlist[1],'\t',
      if i % 2 ==1 : print '\n'
finally:
  xls.Quit()
raw_input('\n\n'+50*'='+'\n请输入回车键退出程序!')
print '正在退出程序,请稍等。。。'

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
在Python中使用cookielib和urllib2配合PyQuery抓取网页信息
Apr 25 Python
在Linux命令行终端中使用python的简单方法(推荐)
Jan 23 Python
对Python3中的print函数以及与python2的对比分析
May 02 Python
python 使用值来排序一个字典的方法
Nov 16 Python
解决python 3 urllib 没有 urlencode 属性的问题
Aug 22 Python
python生成器推导式用法简单示例
Oct 08 Python
Python实现屏幕录制功能的代码
Mar 02 Python
keras实现多种分类网络的方式
Jun 11 Python
使用SimpleITK读取和保存NIfTI/DICOM文件实例
Jul 01 Python
Django ORM判断查询结果是否为空,判断django中的orm为空实例
Jul 09 Python
浏览器常用基本操作之python3+selenium4自动化测试(基础篇3)
May 21 Python
Python+Selenium实现读取网易邮箱验证码
Mar 13 Python
Python自动扫雷实现方法
Jul 25 #Python
Python导出DBF文件到Excel的方法
Jul 25 #Python
Python实现的RSS阅读器实例
Jul 25 #Python
Python获取央视节目单的实现代码
Jul 25 #Python
Python实现将DOC文档转换为PDF的方法
Jul 25 #Python
将Django框架和遗留的Web应用集成的方法
Jul 24 #Python
将Python的Django框架与认证系统整合的方法
Jul 24 #Python
You might like
ThinkPHP的cookie和session冲突造成Cookie不能使用的解决方法
2014/07/01 PHP
HTML中嵌入PHP的简单方法
2016/02/16 PHP
js 绑定带参数的事件以及手动触发事件
2010/04/27 Javascript
基于jquery的当鼠标滚轮到最底端继续加载新数据思路分享(多用于微博、空间、论坛 )
2011/10/10 Javascript
JavaScript高级程序设计(第3版)学习笔记6 初识js对象
2012/10/11 Javascript
js分页代码分享
2014/04/28 Javascript
js弹出对话框方式小结
2015/11/17 Javascript
JavaScript文本框脚本编写的注意事项
2016/01/25 Javascript
基于jQuery的select下拉框选择触发事件实例分析
2016/11/18 Javascript
vue.js的手脚架vue-cli项目搭建的步骤
2017/08/30 Javascript
javascript将非数值转换为数值
2018/09/13 Javascript
《javascript设计模式》学习笔记三:Javascript面向对象程序设计单例模式原理与实现方法分析
2020/04/07 Javascript
在Django的上下文中设置变量的方法
2015/07/20 Python
Python实现对一个函数应用多个装饰器的方法示例
2018/02/09 Python
对numpy中数组元素的统一赋值实例
2018/04/04 Python
Php多进程实现代码
2018/05/07 Python
如何利用Boost.Python实现Python C/C++混合编程详解
2018/11/08 Python
python截取两个单词之间的内容方法
2018/12/25 Python
Python微医挂号网医生数据抓取
2019/01/24 Python
Python中文分词库jieba,pkusegwg性能准确度比较
2020/02/11 Python
Python 程序报错崩溃后如何倒回到崩溃的位置(推荐)
2020/06/23 Python
html5新增的属性和废除的属性简要概述
2013/02/20 HTML / CSS
html5实现的便签特效(实战分享)
2013/11/29 HTML / CSS
阿玛尼美国官方网站:Armani.com
2016/11/25 全球购物
阿迪达斯法国官方网站:adidas法国
2018/03/20 全球购物
金融专业推荐信
2013/11/14 职场文书
绿化先进工作者事迹材料
2014/01/30 职场文书
公证委托书大全
2014/04/04 职场文书
激励员工的口号
2014/06/16 职场文书
领导干部查摆“四风”问题自我剖析材料思想汇报
2014/10/05 职场文书
青年文明号申报材料
2014/12/23 职场文书
2015年幼儿园班务工作总结
2015/05/12 职场文书
经费申请报告
2015/05/15 职场文书
革命电影观后感
2015/06/18 职场文书
PHP中strval()函数实例用法
2021/06/07 PHP
磁贴还没死, 微软Win11可修改注册表找回Win10开始菜单
2021/11/21 数码科技