Hướng dẫn check date format python - kiểm tra định dạng ngày python

Thư viện Python

>>> 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
0 đượ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
>>> 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
1 cho bạn và nâng
>>> 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
2 nếu không.

Nội phân Chính showShow

  • Phương pháp số 1: Sử dụng Strptime []
  • Phương pháp #2: Sử dụng DateUtil.Parser.Parse []
  • Làm thế nào để Python xác minh định dạng ngày?
  • Làm thế nào để bạn xác nhận một trường ngày trong Python?
  • Làm thế nào để bạn kiểm tra xem một giá trị có trong một ngày trong Python không?
  • Ngày [] làm gì trong Python?

Ví dụ:

>>> from dateutil.parser import parse
>>> parse["2003-09-25"]
datetime.datetime[2003, 9, 25, 0, 0]

Điều này sẽ tăng

>>> 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
2 nếu ngày không được định dạng chính xác:

>>> 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

>>> 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
0 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 được biết đến một cách thông minh và cho phép bạn sửa đổi thông số kỹ thuật của mình:
>>> 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
0 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:

>>> 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
6 cũng chấp nhận đối số từ khóa
>>> 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
7 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ụ.
:
>>> 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
6 also accepts the keyword argument
>>> 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
7 which controls whether the day or month is expected to come first if a date is ambiguous. This defaults to False. E.g.

>>> 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

Tôi muốn kiểm tra xem một chuỗi trong DataFrame có định dạng DateTime không. Cho đến nay tôi đã thử mã sau nhưng nó không cho kết quả tôi yêu cầu

Nội phân chính

  • Phương pháp số 1: Sử dụng Strptime []
  • Phương pháp #2: Sử dụng DateUtil.Parser.Parse []
  • Làm thế nào để Python xác minh định dạng ngày?
  • Làm thế nào để bạn xác nhận một trường ngày trong Python?
  • Làm thế nào để bạn kiểm tra xem một giá trị có trong một ngày trong Python không?
  • Ngày [] làm gì trong Python?
import dateutil
from dateutil import parser
dt = dateutil.parser.parse['04-13-1994']
print[dt]

output: 1994-04-13 00:00:00

Ví dụ:

x='04-13-1994' 
is_date[x]

output: True

Điều này sẽ tăng

>>> 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
2 nếu ngày không được định dạng chính xác:Mar 25, 2019 at 17:58

1

>>> 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
0 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 được biết đến một cách thông minh và cho phép bạn sửa đổi thông số kỹ thuật của mình:
>>> 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
0 Các ví dụ phân tích cú pháp.

import datetime

date_string = '04-23-2019'
try:
    date = datetime.datetime.strptime[date_string, '%m-%d-%Y']
except ValueError as err:
    print[err]
else:
    print[date.year]
    print[date.month]
    print[date.month]

Nó cũng xử lý thời gian nếu bạn cần điều đó.Mar 25, 2019 at 18:07

Cập nhật dựa trên nhận xét:

>>> 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
6 cũng chấp nhận đối số từ khóa
>>> 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
7 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ụ.fiacre

Tôi muốn kiểm tra xem một chuỗi trong DataFrame có định dạng DateTime không. Cho đến nay tôi đã thử mã sau nhưng nó không cho kết quả tôi yêu cầu2 gold badges9 silver badges26 bronze badges

Nội phân chính

import re
r = re.compile['\d{1,2}/\d{2}/\d{4}']
if r.match['x/x/xxxx'] is not None:
   print 'matches'

Tôi mong đợi kết quả là,

import dateutil
from dateutil import parser

try:
    dt = dateutil.parser.parse['04-13-1994']
    print[dt]
except:
    print['doesn´t matches']

Đã hỏi ngày 25 tháng 3 năm 2019 lúc 17:58

Tôi muốn kiểm tra xem một chuỗi trong DataFrame có định dạng DateTime không. Cho đến nay tôi đã thử mã sau nhưng nó không cho kết quả tôi yêu cầu2 gold badges9 silver badges26 bronze badges

Nội phân chínhMar 25, 2019 at 18:03

4

Tôi mong đợi kết quả là,

Đã hỏi ngày 25 tháng 3 năm 2019 lúc 17:58

Sử dụng Strptime

  • Đã trả lời ngày 25 tháng 3 năm 2019 lúc 18:07
  • Fiacrefiacre
  • Tôi mong đợi kết quả là,

    Đã hỏi ngày 25 tháng 3 năm 2019 lúc 17:58

    Sử dụng Strptime

    Đã trả lời ngày 25 tháng 3 năm 2019 lúc 18:07

    Examples:

    Fiacrefiacre test_str = ’04-01-1997′, format = “%d-%m-%Y”

    1.0902 huy hiệu vàng9 Huy hiệu bạc26 Huy hiệu đồng True

    Nếu bạn cần thực sự kiểm tra nếu nó khớp, hãy sử dụng mã sau Formats match with date.

    Khác, bạn chỉ có thể sử dụng một thử bắt test_str = ’04-14-1997′, format = “%d-%m-%Y”

    fiacre False

    Đã trả lời ngày 25 tháng 3 năm 2019 lúc 18:03 Month cannot be 14.

    Phương pháp số 1: Sử dụng Strptime []

    Xem thảo luận

    Python3

    Cải thiện bài viết

    Lưu bài viết

    Đọc

    Bàn luận

    Đưa ra định dạng ngày và ngày chuỗi, nhiệm vụ là viết chương trình Python để kiểm tra xem ngày có hợp lệ không và khớp với định dạng.

    import dateutil
    from dateutil import parser
    dt = dateutil.parser.parse['04-13-1994']
    print[dt]
    
    output: 1994-04-13 00:00:00
    
    
    7
    import dateutil
    from dateutil import parser
    dt = dateutil.parser.parse['04-13-1994']
    print[dt]
    
    output: 1994-04-13 00:00:00
    
    
    8

    Đầu vào: test_str = xông04 -01-1997 ′, định dạng = Hồi%d-%m-%y

    Đầu ra: Đúng

    Giải thích: Định dạng phù hợp với ngày.

    Đầu vào: test_str = xông04 -14-1997 ′, định dạng = Hồi%d-%m-%y

    Output:

    The original string is : 04-01-1997
    Does date match format? : True

    Phương pháp #2: Sử dụng DateUtil.Parser.Parse []

    Đầu ra: Sai

    Giải thích: Tháng không thể là 14.

    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.

    Lưu bài viết

    Đọc

    Bàn luận

    Đưa ra định dạng ngày và ngày chuỗi, nhiệm vụ là viết chương trình Python để kiểm tra xem ngày có hợp lệ không và khớp với định dạng.

    import dateutil
    from dateutil import parser
    dt = dateutil.parser.parse['04-13-1994']
    print[dt]
    
    output: 1994-04-13 00:00:00
    
    
    7
    import dateutil
    from dateutil import parser
    dt = dateutil.parser.parse['04-13-1994']
    print[dt]
    
    output: 1994-04-13 00:00:00
    
    
    8

    Đầu vào: test_str = xông04 -01-1997 ′, định dạng = Hồi%d-%m-%y

    Đầu ra: Đúng

    Giải thích: Định dạng phù hợp với ngày.

    Đầu vào: test_str = xông04 -14-1997 ′, định dạng = Hồi%d-%m-%y

    Output:

    The original string is : 04-01-1997
    Does date match format? : True

    Làm thế nào để Python xác minh định dạng ngày?

    Đầu ra: SaiUsing strptime[] In this, the function, strptime usually used for conversion of string date to datetime object, is used as when it doesn't match the format or date, raises the ValueError, and hence can be used to compute for validity.

    Làm thế nào để bạn xác nhận một trường ngày trong Python?

    Giải thích: Tháng không thể là 14.split['/'] isValidDate = True try: datetime. datetime[int[year], int[month], int[day]] except ValueError: isValidDate = False if[isValidDate]: print["Input date is valid .."] else: print["Input date is not valid.."]

    Làm thế nào để bạn kiểm tra xem một giá trị có trong một ngày trong Python không?

    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., e.g. if isinstance[today, datetime]: . The isinstance function returns True if the passed in object is an instance or a subclass of the passed in class.

    Ngày [] làm gì trong Python?

    >>> 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
    >>> 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
    
    9
    >>> 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
    
    0
    >>> 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
    
    1instantiate date objects in Python. When an object of this class is instantiated, it represents a date in the format YYYY-MM-DD. Constructor of this class needs three mandatory arguments year, month and date.

    Bài Viết Liên Quan

    Chủ Đề