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实现哈希表
Feb 07 Python
python删除列表中重复记录的方法
Apr 28 Python
python计算方程式根的方法
May 07 Python
解决python大批量读写.doc文件的问题
May 08 Python
Python中的支持向量机SVM的使用(附实例代码)
Jun 26 Python
Python叠加两幅栅格图像的实现方法
Jul 05 Python
基于python中__add__函数的用法
Nov 25 Python
简单了解python filter、map、reduce的区别
Jan 14 Python
Python异常继承关系和自定义异常实现代码实例
Feb 20 Python
Pycharm激活码激活两种快速方式(附最新激活码和插件)
Mar 12 Python
Python 实现一行输入多个数字(用空格隔开)
Apr 29 Python
python math模块的基本使用教程
Jan 16 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
JAVA/JSP学习系列之七
2006/10/09 PHP
php利用fsockopen GET/POST提交表单及上传文件
2017/05/22 PHP
js输出列表实现代码
2010/09/12 Javascript
JQuery中的$.getJSON 使用说明
2011/03/10 Javascript
checkbox勾选判断代码分析
2014/06/11 Javascript
jquery 3D 标签云示例代码
2014/06/12 Javascript
javascript检测浏览器的缩放状态实现代码
2014/09/28 Javascript
JS实现仿京东淘宝竖排二级导航
2014/12/08 Javascript
jQuery+ajax实现动态执行脚本的方法
2015/01/27 Javascript
Javascript控制input输入时间格式的方法
2015/01/28 Javascript
再谈javascript常见错误及解决方法
2016/09/16 Javascript
javaScript实现滚动条事件详解
2020/03/24 Javascript
vue2.0获取鼠标位置的方法
2018/09/13 Javascript
node app 打包工具pkg的具体使用
2019/01/17 Javascript
JS实现旋转木马轮播图
2020/01/01 Javascript
antd design table更改某行数据的样式操作
2020/10/31 Javascript
[53:13]DOTA2-DPC中国联赛 正赛 DLG vs PHOENIX BO3 第三场 1月18日
2021/03/11 DOTA
[01:11:21]DOTA2-DPC中国联赛 正赛 VG vs Elephant BO3 第一场 3月6日
2021/03/11 DOTA
火车票抢票python代码公开揭秘!
2018/03/08 Python
Python登录注册验证功能实现
2018/06/18 Python
TensorFlow数据输入的方法示例
2018/06/19 Python
Empty test suite.(PyCharm程序运行错误的解决方法)
2018/11/30 Python
使用OpenCV实现人脸图像卡通化的示例代码
2021/01/15 Python
python制作抽奖程序代码详解
2021/01/15 Python
利用CSS3实现的文字定时向上滚动
2016/08/29 HTML / CSS
HTML5应用之文件上传
2016/12/30 HTML / CSS
如何配置、使用和清除Smarty缓存
2015/12/23 面试题
Linux如何为某个操作添加别名
2013/03/01 面试题
材料化学专业求职信
2014/07/15 职场文书
领导干部作风建设总结
2014/10/23 职场文书
小公司融资,商业计划书的8切记
2019/07/15 职场文书
JavaScript 事件捕获冒泡与捕获详情
2021/11/11 Javascript
解析MySQL索引的作用
2022/03/03 MySQL
MySQL如何快速创建800w条测试数据表
2022/03/17 MySQL
TV动画《政宗君的复仇》第二季制作决定PV公布
2022/04/02 日漫
mysql 体系结构和存储引擎介绍
2022/05/06 MySQL