There’s lots of documentation in the standard library, but generally, something like:
import argparse
import datetime
parser = argparse.ArgumentParser()
parser.add_argument(
'date',
type=lambda s: datetime.datetime.strptime(s, '%Y-%m-%d'),
)
# For testing. Pass no arguments in production
args = parser.parse_args(['2012-01-12'])
print(args.date) # prints datetime.datetime object