写函数比如今天日期是合同到期日期 判断到期时间与今天一样则表是已到期,判断到期日期前30天,则表是续签
时间: 2024-03-17 17:42:41 浏览: 20
好的,针对你的要求,我可以帮你编写一个函数来判断是否到期或需要续签。具体实现代码如下:
```python
from datetime import datetime, timedelta
def check_contract_status(expire_date_str):
# 合同到期日期
expire_date = datetime.strptime(expire_date_str, '%Y-%m-%d')
# 今天的日期
today = datetime.now().replace(hour=0, minute=0, second=0, microsecond=0)
# 判断是否已到期
if today == expire_date:
return '已到期'
else:
# 判断是否需要续签
renew_date = expire_date - timedelta(days=30)
if today >= renew_date:
return '需要续签'
else:
return '未到期'
```
这个函数接受一个字符串类型的日期参数,返回一个字符串类型的判断结果,可以是“已到期”、“需要续签”或“未到期”。在函数内部,首先将合同到期日期和今天的日期转换为 datetime 对象,然后使用 `replace` 方法将今天的时间部分设为 0,因为我们只需要比较日期部分。然后使用等于号比较两个日期是否相等,如果相等则表示已经到期。如果不相等,则需要计算合同到期前 30 天的日期,使用减法操作得到 `renew_date`,然后再使用大于等于号比较今天的日期是否大于等于 `renew_date`,如果是则表示需要续签,否则表示未到期。