有没有办法在python中将字符串转换为具有这种格式(19年2月2日)的日期?

时间:2019-04-18 03:06:14

标签: python pandas datetime

我想先将string转换为date,然后再对日期进行一些算术运算。

我的字符串的格式为2-FEB-19,在将其转换为date之后,我想保持相同的格式。我怎样才能做到这一点?

我尝试了df['dates'].to_datetime('2-Feb-19', format='%d-%m-%y'),但收到了一条错误消息"time data '2-Feb-19' does not match format '%d-%m-%y' (match)"

2 个答案:

答案 0 :(得分:1)

您正在使用.myDiv::after { content: url(image.jpg); display: block; width: 100%; } ,它需要一个月作为零填充数字,例如%m。使用02


从您的问题看来,您正在处理的是单个字符串,而不是Pandas系列或其他序列。为此,您可以使用标准库中Python的%b模块中的strptime()

datetime

如果您确实想使用Pandas,无论是在标量(字符串)还是序列上,都可以使用>>> datetime.datetime.strptime('2-FEB-19', '%d-%b-%y') datetime.datetime(2019, 2, 2, 0, 0) 格式说明符:

%b

Python关于>>> pd.to_datetime('2-FEB-19', format='%d-%b-%y') Timestamp('2019-02-02 00:00:00') 指令的参考在datetime文档中。


被授予的熊猫(以及它使用的基础的日期解析库)在推理方面非常出色,并且通常会猜对了:

strptime

答案 1 :(得分:0)

您应该使用适当的格式:

df['dates'].to_datetime('2-Feb-19', format='%d-%b-%y')

%b“月份为语言环境的缩写名称”:Jan,Feb,…,Dec(zh_CN);

参考https://docs.python.org/3/library/datetime.html