python批处理excel文件
python批处理多个excel文件,excel格式相同,需要得出所有excel文件中某一列的和,具体程序如下:文件都在D:/excel中importosimportxl...
python批处理多个excel文件,excel格式相同,需要得出所有excel文件中某一列的和,具体程序如下:文件都在D:/excel中
import os
import xlrd
files=os.listdir('D:\\excel')
for j in files:
j=j.strip('\n')
wb=xlrd.open_workbook(j)
table=wb.sheet_by_index(0)
numh=0.0
for i in range(1,table.nrows):
numh=table.cell(rowx=i,colx=1).value+numh
print numh
文件迭代有错吗? 展开
import os
import xlrd
files=os.listdir('D:\\excel')
for j in files:
j=j.strip('\n')
wb=xlrd.open_workbook(j)
table=wb.sheet_by_index(0)
numh=0.0
for i in range(1,table.nrows):
numh=table.cell(rowx=i,colx=1).value+numh
print numh
文件迭代有错吗? 展开
展开全部
python代码,都没缩进,没法看。
关于xlrd,可以参考我写的:
【整理】Python中,添加写入数据到已经存在的Excel的xls文件,即打开excel文件,写入新数据
【记录】Python中安装可以读写excel的xls文件的xlutils模块(需依赖于xlrd和xlwt)
【记录】Python中安装xlrd模块
关于xlrd,可以参考我写的:
【整理】Python中,添加写入数据到已经存在的Excel的xls文件,即打开excel文件,写入新数据
【记录】Python中安装可以读写excel的xls文件的xlutils模块(需依赖于xlrd和xlwt)
【记录】Python中安装xlrd模块
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
有个两个问题 :
1,numh=0.0需要放在for j in files:上,不然每次调用for,numh都会被重置为0.0
2,wb=xlrd.open_workbook(j)这个只是打开和你这个py文件同一个目录下的xls文件,比如你D:\\excel下有1.xls,2.xls文件,那你这句就只是打开py同一目录下的1.xls,2.xls而并非是D:\\excel下的
代码是可以用的,能实现功能,就是存在上面的两个问题
1,numh=0.0需要放在for j in files:上,不然每次调用for,numh都会被重置为0.0
2,wb=xlrd.open_workbook(j)这个只是打开和你这个py文件同一个目录下的xls文件,比如你D:\\excel下有1.xls,2.xls文件,那你这句就只是打开py同一目录下的1.xls,2.xls而并非是D:\\excel下的
代码是可以用的,能实现功能,就是存在上面的两个问题
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
import glob, os.path
import xlrd
COLNO = 1
def files(path, fnmatch):
for fname in glob.glob(os.path.join(path, fnmatch)):
yield fname
def suminxlsfile(xlsfile):
wb=xlrd.open_workbook(xlsfile)
table=wb.sheet_by_index(0)
return sum([table.cell(rowx=i,colx=COLNO).value
for i in xrange(1,table.nrows)])
sum(map(suminxlsfile,
files("D:\\excel", "*.xls")))
import xlrd
COLNO = 1
def files(path, fnmatch):
for fname in glob.glob(os.path.join(path, fnmatch)):
yield fname
def suminxlsfile(xlsfile):
wb=xlrd.open_workbook(xlsfile)
table=wb.sheet_by_index(0)
return sum([table.cell(rowx=i,colx=COLNO).value
for i in xrange(1,table.nrows)])
sum(map(suminxlsfile,
files("D:\\excel", "*.xls")))
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询