我正在开发一个API,其中用户以以下格式输入输入日期:2019-07-29,该日期将转换为日期时间以得到“ 2019-07-29”。这将用于对数据库的查询。
input_date = str(input_date)
input_date_formatted = "'" + datetime.strptime(input_date, '%Y-%m-%d').strftime('%Y-%m-%d') + "'"
我正在尝试以XXXX-XX-01
这样的输入日期获取月份的开始日期。有什么想法吗?
答案 0 :(得分:3)
如果以后将其用作日期时间而不是字符串,则可以按以下步骤进行操作(假设input_date
是字符串):
date = datetime.strptime(input_date, '%Y-%m-%d')
first_day_of_month = date.replace(day=1)
答案 1 :(得分:0)
我假设您可能需要实际输入和月份的开始日期。 按照这种逻辑,下面的代码可能对您有用。
from datetime import datetime
input_date = '2019-07-29'
input_date = str(input_date)
input_date_formatted = "'" + datetime.strptime(input_date, '%Y-%m-%d').strftime('%Y-%m-%d') + "'"
input_date_formatted = input_date_formatted[:9]+"01'"
print(input_date_formatted)
答案 2 :(得分:0)
from datetime import datetime
input_date = '2019-07-29'
input_date_object = datetime.strptime(input_date, '%Y-%m-%d')
first_date_object = input_date_object.date().replace(day=1)
print (first_date_object) # <class 'datetime.date'>
print (first_date_object.strftime('%Y-%m-%d')) # <class 'str'>
输出:
2019-07-01
2019-07-01
注意:
使用
datetime.date
仅获取日期,而不显示小时:分钟:秒函数
日期时间对象的replace()
用于替换特定或所有属性 日期时间对象。Date属性,可以用 replace()函数:
年
月
日