Я новичок в python, и я собираюсь сделать эту новую программу, которая будет просить вас на ваш день рождения. Я сделал несколько попыток / исключений, чтобы люди не вводили информацию в виде строк или больших чисел. Я хотел бы, чтобы моя программа выяснила, соответствует ли введенная информация дате в конце. Если это произойдет, я бы хотел, чтобы он был напечатан, а если нет, я бы хотел узнать, какая часть ввода пользователя была неправильной. Поэтому я сделал несколько предложений if в последнем, кроме предложения, с мыслью, что ошибки будут равны сообщению.
Я хотел бы знать, можно ли заставить программу сопоставлять сообщения с ошибкой, чтобы выяснить конкретную ошибку и выяснить, какая часть ввода была неправильной.
Мой код выглядит так:
try:
print(datetime.date(int(birthYear), int(birthMonth), int(birthDay)))
except TypeError:
if ValueError == "ValueError: month must be in 1..12":
print("Month " + str(birthMonth) + " is out of range. The month must be a number in 1...12")
if ValueError == "ValueError: year " + str(birthYear) + " is out of range":
print("Year " + str(birthMonth) + " is out of range. The year must be a number in " + str(datetime.MINYEAR) + "..." + str(datetime.MAXYEAR))
if ValueError == "ValueError: day is out of range for month":
print("Day " + str(birthDay) + " is out of range. The day must be a number in 1..." + str(calendar.monthrange(birthYear, birthMonth)))
Спасибо заранее