Python dateparser.parse date_formats(日期格式)

dateparser这个包解析日期非常方便, 但有时需要自定义解析格式.

参考链接: https://docs.python.org/2/library/datetime.html#strftime-and-strptime-behavior

记录一下如何使用以及各个类型怎么写. 写几个常用的, 需要其他格式请自行到上面参考链接里查阅.

%Y 年 – 格式: 1990, 2000, 2022
%y 年 – 格式: 00 ~ 99
%m 月 – 格式: 01 ~ 12
%d 日 – 格式: 01 ~ 31
%H 时 – 格式: 00 ~ 23
%I 时 – 格式: 01 ~ 12
%M 分 – 格式: 00 ~ 59
%S 秒 – 格式: 00 ~ 59
%p 根据环境识别 AM, PM (en_US); am, pm (de_DE) #ps:(没用过, 请自测)

代码示例:

import dateparser
date_str = '20220222 23:59:59'
date = dateparser.parse(date_str, date_formats=['%Y%m%d %H%M%S'])

date_str2 = '2022-02-22'
date2 = dateparser.parse(date_str2, date_formats=['%Y-%m-%d'])
### 关于日期长度处理的编程问题 在处理日期字符串时,不同格式和长度可能会带来一系列挑战。为了确保程序能正确解析各种长度的日期输入,通常需要考虑标准化日期格式以及异常情况。 #### Python 中处理日期长度的方法 Python 提供了 `datetime` 模块来操作时间数据。对于不确定长度的日期字符串,可以通过尝试多种可能的格式来进行匹配: ```python from datetime import datetime def parse_date(date_string): formats = [ "%Y-%m-%d", # 年-月-日 "%y-%m-%d", # 两位年份-月-日 "%Y/%m/%d", # 使用斜杠分隔符 "%b %d, %Y", # 缩写月份名 日, 年 "%B %d, %Y" # 完整月份名 日, 年 ] for fmt in formats: try: return datetime.strptime(date_string, fmt).date() except ValueError: continue raise ValueError(f"Invalid date format: {date_string}") # 测试不同的日期格式 print(parse_date("2023-10-05")) # 输出:2023-10-05 print(parse_date("23/10/05")) # 输出:2023-10-05 print(parse_date("Oct 5, 2023")) # 输出:2023-10-05 ``` 这段代码展示了如何定义多个常见日期格式并逐一尝试解析给定的日期字符串[^1]。如果遇到不支持的格式,则会抛出错误提示用户输入有效的时间戳。 此外,在实际应用中还应考虑到国际化需求,即根据不同地区习惯调整相应的日期表示方式。这涉及到本地化设置(locale),使得应用程序更加灵活友好地适应全球用户的使用场景。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值