在Python中,有多个DateTime解析器可以自动解析日期字符串,而无需证明datetime格式。例如DateParser,DateUtils。但是,它们中的任何一个都没有选项可以返回解析日期的格式。如何获得自动解析器解析日期的格式,如下例所示? 例如parse(“ 2019/05/20”)-> [datetime(2019,5,20,0,0),“%Y /%m /%d”]
答案 0 :(得分:0)
如果查看这些库的源代码,则可以了解它们如何解析其日期。
例如,DataParser
使用正则表达式和datetime字符串格式设置指令的组合。这是指向其解析器的链接:https://github.com/scrapinghub/dateparser/blob/master/dateparser/parser.py
答案 1 :(得分:0)
如果您希望格式化字符串能够以相同的方式格式化日期时间对象,那么我认为这是不可能的,因为这些解析器(至少是dateparser)可以解析根本无法表示为格式化字符串的日期。
但是有一个feature request for it。也许可以以某种方式实现,也可以针对所有可能输入的一部分来实现。
如果您想将此用于调试目的,以了解给定的字符串如何导致给定的日期时间,那么我也不认为目前有任何简便的方法。但是,如果您得到意想不到的结果,则可以使用settings来影响不同的解析方面以获得所需的结果。日期顺序,输入格式字符串和语言环境会有所不同。