You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何指定pandas.to_datetime('now')的输出格式?

解决Pandas Timestamp格式化问题

先帮你理清两个报错的核心原因:

  • 用pd.to_datetime('now', format='%Y%m%d-%H%M%S')触发ValueError:format参数的作用是解析输入字符串,告诉Pandas“按照这个格式去解读我传入的时间字符串”,而非用来输出格式化结果。你传入的是'now',它完全不符合%Y%m%d-%H%M%S的格式规则,所以直接报错。
  • 直接调用pd.to_datetime('now').dt_strftime(...)出现AttributeError:dt_strftime是Pandas的Series或DatetimeIndex专属方法,而pd.to_datetime('now')返回的是单个Timestamp对象——单个时间对象没有dt访问器(dt是给批量时间序列用的),自然调用失败。

正确的格式化方案

针对单个Timestamp对象,直接用它自带的strftime方法即可,这和Python原生datetime对象的用法完全一致,你的Python 3.6.4和Pandas 0.22.0版本完全支持:

import pandas as pd
current_ts = pd.to_datetime('now')
formatted_time = current_ts.strftime('%Y%m%d-%H%M%S')
print(formatted_time)  # 输出示例:'20180509-095636'

如果之后需要处理批量时间序列(比如Series类型),再用dt访问器配合strftime:

time_series = pd.Series([pd.to_datetime('now'), pd.to_datetime('now')])
formatted_series = time_series.dt.strftime('%Y%m%d-%H%M%S')
print(formatted_series)

内容的提问来源于stack exchange,提问作者absurd

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 06:33:32