我是python的新手,尝试与Pandas一起处理几个具有可预测名称Log_(yyyy / mm / dd)的.csv文件。
我的计划很简单,但是打开文件给我带来了问题。
today = date.today()
m,d,y = today.month, today.day, today.year
file_name = 'Log_{}-{}-{}'.format(y,m,d)
pd.read_csv(file_name)
这会给我一个错误,但这是可行的
file_name = 'Log_2015-01-10'
pd.read_csv(file_name)
他们打印相同的东西,并且str(file_name)
不能解决问题。
您有两个问题:元组分配交换日期和年份值,并且需要将10以下的值零填充。实际上是在生成字符串'Log_10-1-2015'
,而不是'Log_2014-01-10'
。
通过将格式化留给date对象而不是自己提取单个组件,最容易完成将日期格式化为字符串的操作:
today = date.today()
file_name = 'Log_{:%Y-%m-%d}'.format(today)
这些%
字段是strftime()
格式说明,默认情况下使用零填充。
演示:
>>> from datetime import date
>>> today = date.today()
>>> 'Log_{:%Y-%m-%d}'.format(today)
'Log_2015-01-11'
是的,它已经是我所在时区的第11位。:-)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句