如何用Python编写代码实现类似微信的聊天时间格式化显示功能?

2026-05-27 02:271阅读0评论SEO教程
  • 内容介绍
  • 相关推荐

本文共计383个文字,预计阅读时间需要2分钟。

如何用Python编写代码实现类似微信的聊天时间格式化显示功能?

时间格式化使用的算法为:

1. 如果不在同一年,使用格式:'年%m月%d日'

2.如果在同一年:

2.1 如果在同一月: 2.1.1 如果在同一日,使用格式:'H:M' 2.1.2 如果是前一天,使用格式:'前一天 H:M' 2.1.3 如果是同一周,使用格式:'周x 00:00'

如何用Python编写代码实现类似微信的聊天时间格式化显示功能?

时间格式化所使用的算法为:

""" 1.如果不在同一年 '%Y年%m月%d日' 2.如果在同一年 2.1 如果在同一个月 2.1.1 如果在同一天 '%H:%M' 2.1.2 如果是昨天 '昨天 %H:%M' 2.1.2 如果在同一周 '周x 00:00' 去除周日 的情况 2.2 否则 '%m月%d日 %H:%M' """

具体的python代码如下:

def fmtdt_str(dtstr, fmt): result = "" locale.setlocale(locale.LC_CTYPE, 'chinese') curtime = datetime.now() curYear = curtime.year curMonth = curtime.month str_time = datetime.strptime(dtstr, fmt) if str_time.year == curYear: if str_time.month == curMonth: days_interval = (curtime.day - str_time.day) if days_interval == 0: result = str_time.strftime("%H:%M") elif days_interval == 1: result = str_time.strftime("昨天 %H:%M") else: if curtime.strftime("%W") == str_time.strftime("%W"): week_str = ['周日', '周一', '周二', '周三', '周四', '周五', '周六'] str_weekno = str_time.weekday() if str_weekno == 0: result = str_time.strftime("%m月%d日 %H:%M") else: result = str_time.strftime(week_str[str_weekno] + " %H:%M") else: result = str_time.strftime("%m月%d日 %H:%M") else: result = str_time.strftime("%m月%d日 %H:%M") else: result = str_time.strftime("%Y年%m月%d日") return result

总结

到此这篇关于python 实现仿微信聊天时间格式化显示的代码的文章就介绍到这了,更多相关python时间格式化显示内容请搜索易盾网络以前的文章或继续浏览下面的相关文章希望大家以后多多支持易盾网络!

本文共计383个文字,预计阅读时间需要2分钟。

如何用Python编写代码实现类似微信的聊天时间格式化显示功能?

时间格式化使用的算法为:

1. 如果不在同一年,使用格式:'年%m月%d日'

2.如果在同一年:

2.1 如果在同一月: 2.1.1 如果在同一日,使用格式:'H:M' 2.1.2 如果是前一天,使用格式:'前一天 H:M' 2.1.3 如果是同一周,使用格式:'周x 00:00'

如何用Python编写代码实现类似微信的聊天时间格式化显示功能?

时间格式化所使用的算法为:

""" 1.如果不在同一年 '%Y年%m月%d日' 2.如果在同一年 2.1 如果在同一个月 2.1.1 如果在同一天 '%H:%M' 2.1.2 如果是昨天 '昨天 %H:%M' 2.1.2 如果在同一周 '周x 00:00' 去除周日 的情况 2.2 否则 '%m月%d日 %H:%M' """

具体的python代码如下:

def fmtdt_str(dtstr, fmt): result = "" locale.setlocale(locale.LC_CTYPE, 'chinese') curtime = datetime.now() curYear = curtime.year curMonth = curtime.month str_time = datetime.strptime(dtstr, fmt) if str_time.year == curYear: if str_time.month == curMonth: days_interval = (curtime.day - str_time.day) if days_interval == 0: result = str_time.strftime("%H:%M") elif days_interval == 1: result = str_time.strftime("昨天 %H:%M") else: if curtime.strftime("%W") == str_time.strftime("%W"): week_str = ['周日', '周一', '周二', '周三', '周四', '周五', '周六'] str_weekno = str_time.weekday() if str_weekno == 0: result = str_time.strftime("%m月%d日 %H:%M") else: result = str_time.strftime(week_str[str_weekno] + " %H:%M") else: result = str_time.strftime("%m月%d日 %H:%M") else: result = str_time.strftime("%m月%d日 %H:%M") else: result = str_time.strftime("%Y年%m月%d日") return result

总结

到此这篇关于python 实现仿微信聊天时间格式化显示的代码的文章就介绍到这了,更多相关python时间格式化显示内容请搜索易盾网络以前的文章或继续浏览下面的相关文章希望大家以后多多支持易盾网络!