请
登录后发表观点
换 js 写好了 😕
引包了还是不行 😕
from datetime import datetime
def get_first_of_each_month(start_date_str, end_date_str):
"""
计算给定开始时间和结束时间之间每个月的第一天,并以格式化的字符串形式返回。
参数:
- start_date_str: 开始日期的字符串,格式为"YYYY-MM-DD"
- end_date_str: 结束日期的字符串,格式为"YYYY-MM-DD"
返回:
- 格式化的日期字符串列表,每个元素为一个月的第一天
"""
# 将字符串转换为datetime对象
start_date = datetime.strptime(start_date_str, "%Y-%m-%d")
end_date = datetime.strptime(end_date_str, "%Y-%m-%d")
dates = [] # 用于存储每个月第一天的日期对象
current_date = start_date
while current_date < end_date:
# 将当前日期设置为下一个月的第一天
next_month = current_date.month + 1 if current_date.month < 12 else 1
next_year = current_date.year if current_date.month < 12 else current_date.year + 1
first_day_next_month = datetime(next_year, next_month, 1)
if first_day_next_month <= end_date:
dates.append(first_day_next_month.strftime("%Y-%m-%d")) # 直接将日期格式化为字符串
current_date = first_day_next_month
return dates
示例使用
start_date_str = input["开始时间"]
end_date_str = input["结束时间"]
formatted_dates = get_first_of_each_month(start_date_str, end_date_str)
打印结果
output = {'生日': formatted_dates}
试试这个代码
字符串拼接
每天笑哈哈 2024-02-20 14:54:55
搞不明白....啥原因报错了
有点懵了,计算出每个月的 1 号?你是要干啥了?
阿良 2024-02-20 14:08:21代码块
搞不明白....啥原因报错了
- 利用代码块计算得出。
- 利用公式中的文本函数中的拼接公式,加上日期函数来实现
CONCAT(YEAR(DATENOW()),'-',MONTH(DATENOW()),'-','01')
代码块