【问题标题】:Opening unknown Excel filename using Python使用 Python 打开未知的 Excel 文件名
【发布时间】:2013-05-25 10:37:15
【问题描述】:
我正在开发一个 Python 脚本,用于在不知道文件名的情况下从特定目录打开 Excel 文件。目录是固定的并以某种方式控制,以便用户可以访问文件所在的目录。每个目录中只有一个 Excel 文件。是否可以使用 xlrd open 命令打开 Excel 文件而不指定给定目录中的文件名?
或者,有没有办法解决这个问题,并且有一个函数可以在给定目录中搜索 .xlsx 扩展名,然后将这些文件名存储在一个数组中,以便xlrd.open_workbook() 然后可以使用数组中的元素打开那个文件?
【问题讨论】:
标签:
python
excel
python-2.7
filenames
【解决方案1】:
这是一个包装open_workbook()的简单函数,使用glob.glob()将folder中的任意.xlsx文件传递给它:
import os.path
from glob import glob
from xlrd import open_workbook
def open_arbitrary_workbook(folder, *args, **kwargs):
try:
path = glob(os.path.join(folder, "*.xlsx"))[0]
except IndexError:
raise IOError("No .xlsx files found in %r" % folder)
return open_workbook(path, *args, **kwargs)