পাইথনdateutil লাইব্রেরী (এবং আরও অনেক কিছু) এই জন্য নির্মিত হয়েছে। এটি স্বয়ংক্রিয়ভাবে আপনার জন্য এটি একটি datetimeবস্তুতে রূপান্তর করবে এবং ValueErrorএটি যদি না পারে তবে উত্থাপন করবে।
উদাহরণ হিসাবে:
>>> from dateutil.parser import parse
>>> parse("2003-09-25")
datetime.datetime(2003, 9, 25, 0, 0)
ValueErrorতারিখটি সঠিকভাবে ফর্ম্যাট না করা হলে এটি উত্থাপন করে :
>>> parse("2003-09-251")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
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
dateutil: যদি আপনি ভবিষ্যতে অন্যান্য ফরম্যাটের বিশ্লেষণ করতে যেমন সবচেয়ে পরিচিত ফরম্যাটের বুদ্ধিমত্তার হ্যান্ডেল এবং আপনি আপনার স্পেসিফিকেশন পরিবর্তন করতে পারবেন পারেন প্রয়োজন, শুরু এছাড়াও অত্যন্ত দরকারী dateutilপার্স উদাহরণ ।
আপনার যদি প্রয়োজন হয় তবে এটি টাইমজোনগুলিও পরিচালনা করে।
মন্তব্যের উপর ভিত্তি করে আপডেট করুন : parseকীওয়ার্ড আর্গুমেন্টকে গ্রহণ করে dayfirstযা কোনও তারিখ অস্পষ্ট থাকলে দিন বা মাসের প্রথম আসবে কিনা তা নিয়ন্ত্রণ করে। এটি ডিফল্ট ফালসের কাছে। যেমন
>>> 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