How to validate a specific Date and Time format using Python
我正在编写一个程序来验证XML文件的各个部分。 我想验证的一点是日期时间格式。 我已经在论坛上阅读了关于使用
1 | 2/26/2009 3:00 PM |
我确信有一些内置的东西很容易,但我找不到。 非常感谢你以前经营过这个并提出建议。
是的,您可以使用
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | from datetime import datetime def validate_date(d): try: datetime.strptime(d, '%m/%d/%Y %I:%M %p') return True except ValueError: return False print validate_date('2/26/2009 3:00 PM') # prints True print validate_date('2/26/2009 13:00 PM') # prints false print validate_date('2/26/2009') # prints False print validate_date("Should I use regex for validating dates in Python?") # prints False |
这是你如何做到的:
1 2 3 4 5 6 7 | from datetime import datetime def validate(datetime_string): try: return datetime.strptime(datetime_string,"%m/%d/%Y %I:%M %p") except ValueError: return False |
1 2 3 4 | import datetime parsed = datetime.datetime.strptime("2/26/2009 3:00 PM", r'%m/%d/%Y %H:%M %p') iso_formatted = parsed.isoformat() print(iso_formatted) |
您可以使用与
...我不是一个正则表达式的职业选手,可能有一个更好的模式。
您还可以使用
祝好运!