繁体   English   中英

Python-从文件中提取Excel文档,需要帮助来读取数据

[英]Python - Extracting excel docs from file, need help reading data

因此,我一直在一个项目中尝试从文件中提取.xlsx文档,以尝试将数据编译为一个工作表。

因此,对于我来说,我已经设法处理了一个循环以拉出文档,但是现在我一直试图读取文档。

Python 2.7

如下,我的脚本和响应在shell中

#-------------- loop that pulls in files from folder--------------
import os

#create directory from which to pull the files
rootdir = 'C:\Users\username\Desktop\Mults'

for subdir, dir, files in os.walk(rootdir):
for file in files:
    print os.path.join(subdir,file)
#----------------------merge work books-----------------------

import xlrd
import xlsxwriter


wb = xlsxwriter.workbook('merged.xls')
ws = workbook.add_worksheet()
for file in filelist:
    r = xlrd.open_workbook(file)
    head, tail = os.path.split(file)
    count = 0
    for sheet in r:
        if sheet.number_of_rows()>0:
            count += 1
    for sheet in r:
        if sheet.number_of_rosw()>0:
            if count == 1:
                sheet_name = tail
            else:
                sheet_name = "%s_%s" (tail, sheet.name)
            new_sheet = wb.create_sheet(sheet_name)
            new_sheet.write_reader(sheet)
            new_sheet.close()
wb.close()

运行程序时收到的错误

C:\Users\username\Desktop\Mults\doc1.xlsx
C:\Users\username\Desktop\Mults\doc2.xlsx
C:\Users\username\Desktop\Mults\doc3.xlsx
C:\Users\username\Desktop\Mults\doc4.xlsx

Traceback (most recent call last):
  File "C:\Users\username\Desktop\Work\Python\excel practice\xlsx - loops files 
- 09204.py", line 20, in <module>
wb = xlsxwriter.workbook('merged.xls')
TypeError: 'module' object is not callable

我知道我在某个地方缺少连接数据的步骤。

我在其他脚本中使用xlsxwriter进行了练习,该模块运行良好。 由于某种原因,此处无法识别。

另外,如建议的那样,我尝试了xlwt,但是即使将模块相应地安装,也无法将模块导入我的外壳。

任何提示都会有所帮助!

谢谢!

它是WorkBook的大写W

 wb = xlsxwriter.Workbook('merged.xls')

您还应该在Windows的路径中使用/斜杠或r原始字符串:

r'C:\Users\username\Desktop\Mults'

'C:/Users/username/Desktop/Mults'

ws = workbook.add_worksheet()也将导致错误,因为未在任何地方定义workbook

我想你的意思是wb.add_worksheet()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM