Hướng dẫn date validation in python - xác thực ngày trong python
Thư viện Python 2 được thiết kế cho việc này (và hơn thế nữa). Nó sẽ tự động chuyển đổi điều này thành đối tượng 3 cho bạn và nâng 4 nếu không. Show
Nội dung chính ShowShow
Ví dụ:
Điều này sẽ tăng 4 nếu ngày không được định dạng chính xác:
2 cũng cực kỳ hữu ích nếu bạn bắt đầu cần phân tích các định dạng khác trong tương lai, vì nó có thể xử lý hầu hết các định dạng đã biết một cách thông minh và cho phép bạn sửa đổi đặc điểm kỹ thuật của mình: 2 Các ví dụ phân tích cú pháp.Nó cũng xử lý thời gian nếu bạn cần điều đó. Cập nhật dựa trên nhận xét: 1 cũng chấp nhận đối số từ khóa 2 kiểm soát xem ngày hoặc tháng dự kiến sẽ đến trước nếu ngày không rõ ràng. Điều này mặc định là sai. Ví dụ.: 1 cũng chấp nhận
đối số từ khóa 2 kiểm soát xem ngày hoặc tháng dự kiến sẽ đến trước nếu ngày không rõ ràng. Điều này mặc định là sai. Ví dụ.: 1 also accepts the keyword argument 2 which controls whether the day or month is expected to come first if a date is ambiguous. This defaults to False. E.g.
Xem thảo luận Cải thiện bài viết Lưu bài viết Xem thảo luận Cải thiện bài viết Lưu bài viết Đọc Examples:
Đầu ra: SaiĐầu vào: test_str = xông04 -14-1997 ′, định dạng = Hồi%d-%m-%y Month cannot be 14. Python3Giải thích: Tháng không thể là 14. Phương pháp số 1: Sử dụng Strptime () Trong đó, hàm, Strptime thường được sử dụng để chuyển đổi ngày chuỗi sang đối tượng DateTime, được sử dụng như khi nó không khớp với định dạng hoặc ngày, tăng giá trịerror và do đó có thể được sử dụng để tính toán hiệu lực.Output: 9>>> parse("2003-09-251")
Traceback (most recent call last):
File " The original string is : 04-01-1997 Does date match format? : True4>>> parse('11/12/2001') >>> datetime.datetime(2001, 11, 12, 0, 0) # Nov 12 >>> parse('11/12/2001', dayfirst=True) >>> datetime.datetime(2001, 12, 11, 0, 0) # Dec 11 9>>> parse("2003-09-251") Traceback (most recent call last): File "", line 1, in File "/Users/jacinda/envs/dod-backend-dev/lib/python2.7/site-packages/dateutil/parser.py", line 720, in parse return DEFAULTPARSER.parse(timestr, **kwargs) File "/Users/jacinda/envs/dod-backend-dev/lib/python2.7/site-packages/dateutil/parser.py", line 317, in parse ret = default.replace(**repl) ValueError: day is out of range for month 8 The original string is : 04-01-1997 Does date match format? : True6 |