import argparse
import datetime
def vali_date(text: str) -> datetime.datetime:
#return datetime.datetime.strptime(text, "%Y-%m-%d")
try:
return datetime.datetime.strptime(text, "%Y-%m-%d")
except ValueError:
raise argparse.ArgumentTypeError(f"This {text!r} is not a valid date.")
parser = argparse.ArgumentParser()
parser.add_argument(
"--date",
help = "Date in format YYYY-MM-DD",
required = True,
type = vali_date
)
args = parser.parse_args()
print(args.date)
import argparse
def is_age(age: str) -> float:
try:
new_age = float(age)
except ValueError:
raise argparse.ArgumentTypeError(f"This: {age!r} is not a valid number.")
if new_age < 0:
raise argparse.ArgumentTypeError(f"It must be a non-negative number. We received {age!r} ")
return new_age
parser = argparse.ArgumentParser()
parser.add_argument("--age", type=is_age, required=True)
args = parser.parse_args()
print(args.age)
import getpass
secret = getpass.getpass()
print(secret)