datetime.date(TimeStamp).replace(day = 01)给出整数是必需的错误

时间:2019-07-29 05:09:50

标签: python python-datetime

我的Db表中有一个timestamp列(定义为datetime列) 并且我尝试将当天的值设为该月的第一天。

for (ObservationRawDataId, TimeStamp, TankSystemId, RawDeliveryLitres, ProductName, SiteCode) in cursor:
    print TimeStamp <----2019-06-21 00:00:00

     startdate = datetime.date(TimeStamp).replace(day=01)

但是我收到以下错误;

 an integer is required

我在这里做错了什么?

1 个答案:

答案 0 :(得分:2)

您需要使用datetime.strptime将日期字符串解析为日期对象。您只能在startdate.replace(day=1)

中使用日期时间对象
from datetime import datetime
startdate = datetime.strptime("2019-06-21 00:00:00","%Y-%m-%d %H:%M:%S").replace(day=1)
print(startdate)

输出:

2019-06-01 00:00:00

查看实际操作here