【发布时间】:2011-05-27 13:29:41
【问题描述】:
我一直在使用 excel 创建我想使用 python 解析的 .csv 工作表。每个工作表都以商店命名(例如工作表 1:“Waitrose”,工作表 2:“Tesco”,工作表 3:“Asda”)并包含产品列表(第 1 列)及其相关价格(第 2 列)。我编写了一个 python 脚本,可以访问工作表并将内容转换为字典(见下文),但我正在努力寻找一种方法让程序访问工作簿中的下一个工作表。我想最终得到与工作表一样多的字典。 csv 模块似乎没有太大帮助,我找不到当前与 excel 打交道的第三方 python 3 兼容模块。我在想可能是applescript,但不确定如何将它嵌入到python脚本中
waitrose = {'apples' : 25, 'oranges' : 45 等}
有什么建议吗?
保罗。
【问题讨论】:
-
CSV 文件只能代表一个表格/工作表,所以我猜您将 Excel 文件导出为多个 CSV 文件,每个工作表一个。然后您必须按顺序阅读这些文件中的每一个。到目前为止你有什么?您的脚本读入哪个文件?为什么不使用
csv模块来读取CSV?您不能只使用os.listdir()或glob.glob()获取所有CSV 文件并使用您的代码依次读取每个文件吗? -
Ferdinand Beyer 已经注意到 CSV 文件仅代表一个工作表。如果我没记错,当您将工作簿保存为 CSV 时,Excel 会警告您。如果您不使用多个文件,请查看可以处理 Excel 格式工作簿的模块。为此,您可以尝试python-xlsx。该模块可以通过多个工作表访问 .xlsx 文件中的数据,非常易于使用。
标签: python excel csv applescript worksheet