Python實(shí)現(xiàn)對excel文件列表值進(jìn)行統(tǒng)計(jì)的方法
更新時間:2015年07月25日 11:25:14 作者:Sephiroth
這篇文章主要介紹了Python實(shí)現(xiàn)對excel文件列表值進(jìn)行統(tǒng)計(jì)的方法,涉及Python基于win32com組件操作表格文件的相關(guān)技巧,具有一定參考借鑒價值,需要的朋友可以參考下
本文實(shí)例講述了Python實(shí)現(xiàn)對excel文件列表值進(jìn)行統(tǒng)計(jì)的方法。分享給大家供大家參考。具體如下:
#!/usr/bin/env python
#coding=gbk
#此PY用來統(tǒng)計(jì)一個execl文件中的特定一列的值的分類
import win32com.client
filename=raw_input("請輸入要統(tǒng)計(jì)文件的詳細(xì)地址:")
flag=0 #用于判斷文件 名如果不帶‘日'就為 0
if '\xc8\xd5' in filename:flag=1
print 50*'='+'\n\t 請稍等,程序正在統(tǒng)計(jì)中。。。'
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'業(yè)務(wù)類型' or sheet.Cells(3,3).Value!=u'轉(zhuǎn)辦單位':
print '您輸入的表格已不是默認(rèn)的表格,數(shù)據(jù)格式有誤'
exit(1) #這個判斷是當(dāng)文件中的特定列改變時,直接退出程序
i=4
dept=sheet.Cells(i,3).Value
type=sheet.Cells(i,6).Value
typelist=[] #用于存放數(shù)據(jù)的列表,下面就是取sheet表里的某一列數(shù)據(jù)
deptlist=[] #用于存放轉(zhuǎn)辦單位的列表
while type:
typelist.append(type)
deptlist.append(dept)
i=i+1
type=sheet.Cells(i,6).Value
dept=sheet.Cells(i,3).Value
#存放列的數(shù)據(jù)到二個列表中
counts=len(typelist) #總件數(shù)
if counts==0:
print '輸入的文件統(tǒng)計(jì)結(jié)果為0,是否文件的格式有誤?'
exit(1)
typelist=[(i,typelist.count(i)) for i in set(typelist)]
departmentlist=[]
delchar='0123456789' #刪除取出列表中有可能帶數(shù)字 分開字段有空格的話
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信訪件總數(shù)為%d件,下面是各分類件數(shù)' % 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下面是轉(zhuǎn)辦單位的分類\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程序設(shè)計(jì)有所幫助。
您可能感興趣的文章:
- 利用python匯總統(tǒng)計(jì)多張Excel
- python實(shí)戰(zhàn)之實(shí)現(xiàn)excel讀取、統(tǒng)計(jì)、寫入的示例講解
- python jieba分詞并統(tǒng)計(jì)詞頻后輸出結(jié)果到Excel和txt文檔方法
- Python實(shí)現(xiàn)讀寫sqlite3數(shù)據(jù)庫并將統(tǒng)計(jì)數(shù)據(jù)寫入Excel的方法示例
- 用python實(shí)現(xiàn)簡單EXCEL數(shù)據(jù)統(tǒng)計(jì)的實(shí)例
- 利用Python實(shí)現(xiàn)簡單的Excel統(tǒng)計(jì)函數(shù)
相關(guān)文章
Python演化計(jì)算基準(zhǔn)函數(shù)詳解
這篇文章主要介紹了Python演化計(jì)算基準(zhǔn)函數(shù),非常不錯,具有一定的參考借鑒價值,需要的朋友參考下吧,希望能夠給你帶來幫助2021-10-10
python3實(shí)現(xiàn)字符串操作的實(shí)例代碼
這篇文章主要介紹了python3實(shí)現(xiàn)字符串操作的實(shí)例代碼,需要的朋友可以參考下2019-04-04
python實(shí)現(xiàn)tail實(shí)時查看服務(wù)器日志示例
今天小編就為大家分享一篇python實(shí)現(xiàn)tail實(shí)時查看服務(wù)器日志示例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-12-12
Pytorch訓(xùn)練過程出現(xiàn)nan的解決方式
今天小編就為大家分享一篇Pytorch訓(xùn)練過程出現(xiàn)nan的解決方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-01-01
利用pandas進(jìn)行數(shù)據(jù)清洗的7種方式
采集到原始的數(shù)據(jù)中會存在一些噪點(diǎn)數(shù)據(jù),噪點(diǎn)數(shù)據(jù)是對分析無意義或者對分析起到偏執(zhí)作用的數(shù)據(jù),所以這篇文章給大家介紹了利用pandas進(jìn)行數(shù)據(jù)清洗的7種方式,需要的朋友可以參考下2024-03-03
在PyTorch中實(shí)現(xiàn)可解釋的神經(jīng)網(wǎng)絡(luò)模型的方法詳解
這篇文章主要為大家介紹在PyTorch如何中實(shí)現(xiàn)可解釋的神經(jīng)網(wǎng)絡(luò)模型,并為您提供使用簡單的 PyTorch 接口實(shí)現(xiàn)最先進(jìn)的基于概念的模型的工具,需要的朋友可以參考下2023-06-06

