定义函数,根据时间间隔,返回字符串。参数为代表时间的字符串,返回值为包含“刚刚、分钟前、小时前、天前、月前、年前”等字样的字符串。例如,发帖时间是“2022-04-28 16:06:33”,当前时间是“2022-04-28 16:43:
时间: 2024-05-06 14:22:08 浏览: 22
SQL表达式函数.doc
33”,则返回“37分钟前”。
可以使用Python中的datetime模块来处理时间。具体实现如下:
```python
from datetime import datetime
def time_interval(time_str):
now = datetime.now()
time = datetime.strptime(time_str, "%Y-%m-%d %H:%M:%S")
delta = now - time
seconds = delta.seconds
days = delta.days
if days > 365:
return f"{days // 365}年前"
elif days > 30:
return f"{days // 30}月前"
elif days > 0:
return f"{days}天前"
elif seconds > 3600:
return f"{seconds // 3600}小时前"
elif seconds > 60:
return f"{seconds // 60}分钟前"
else:
return "刚刚"
```
函数中使用了datetime模块中的now()函数获取当前时间,strptime()函数将字符串转换为datetime格式,然后用当前时间减去发帖时间得到时间差delta。再根据delta的天数和秒数判断返回哪种时间间隔的字符串。最后将结果返回即可。
阅读全文