python-3.x - 使用文件和工作表名称中的动态日期在python中读取excel文件
问题描述
我有一种情况,我想每天读取一个 excel 文件,其中文件名以以下格式写入:file_name 08.20.2018 xyz.xlsx
并每天更新,其中日期每天都在更改。
在读取此文件时我需要做的同样的事情是,我需要从一张表中提取数据,该表的命名约定也随着日期每天发生变化。示例工作表名称是sheet1-08.20.2020-data
我应该如何实现这一目标?我正在使用以下代码,但它不起作用:
df = pd.read_Excel(r'file_name 08.20.2018 xyz.xlsx', sheet_name = 'sheet1-08.20.2020-data')
我如何更新这行代码,以便它每天动态地选择数据,并有新的日期进入。这里要清楚的是,日期也将是递增的,没有间隙。
解决方案
您可以使用pathlib
和datetime
模块来自动化该过程:
from pathlib import Path
from datetime import date
#assuming you have a directory of files:
folder = Path(directory of files)
sheetname = f"sheet1-0{date.today().month}.{date.today().day}.{date.today().year}-data"
date_string = f"filename 0{date.today().month}.{date.today().day}.{date.today().year}.xlsx"
xlsx_file = folder.glob(date_string)
#read in data
df = pd.read_excel(io=next(xlsx_file), sheet_name = sheetname)
推荐阅读
- typescript - 如何使用 nyc 从函数覆盖范围中排除用 TypeScript 编写的私有构造函数?
- php - 为什么我只在下面的代码中获得数组“row”中的第一行值。我需要与查询对应的所有值
- apache-spark - 由于 bigendian 火花测试失败
- php - 无法在 React Native 中通过 Axios 发布到 PHP 服务器
- javascript - CKEditor 5:无法将多个属性添加到“img”标签
- javascript - 当没有行匹配搜索输入时如何隐藏表格的元素?- Javascript
- c# - Unity 错误 - UnityEditor.EditorApplication.delayCall 未找到
- embedded - Verilog中1和1'b1之间的区别
- c++ - Qt 在其自己的二进制文件中引发工作代码错误
- android - 如何在刮刮卡视图中禁用刮擦?