import datetime
def main():
date_string = input('Enter a date in mm/dd/yy format: ')
date_list = date_string.split('/')
month = int(date_list[0])
day = int(date_list[1])
year = int(date_list[2])
while month < 1 or month > 12:
print('Month entered is out of range')
date_string = input('Re-enter a date in mm/dd/yy format: ')
date_list = date_string.split('/')
month = int(date_list[0])
day = int(date_list[1])
year = int(date_list[2])
while day < 1 or day > 31:
print('Day entered is out of range')
date_string = input('Re-enter a date in mm/dd/yy format: ')
date_list = date_string.split('/')
month = int(date_list[0])
day = int(date_list[1])
year = int(date_list[2])
while year != 13:
print('Year does not represent 2013')
date_string = input('Re-enter a date in mm/dd/yy format: ')
date_list = date_string.split('/')
month = int(date_list[0])
day = int(date_list[1])
year = int(date_list[2])
print(month, day, year)
main()
프로그램을 실행하고 유효하지 않은 달과 요일을 입력하면 유효성 검사가 끝날 때까지 진행되며 입력이 다른 입력 중 하나에 대해 유효하지 않은 경우에도 해당 프롬프트를 계속 게시합니다.루프가 너무 일찍 깨지는 동안.
코드는 읽을 수있는 기능을 위해 밖으로 울고 값을 분할합니다. 또한 사용자가 유효한 월 번호와 잘못된 날짜 번호를 입력하면 유효하지 않은 월 번호와 유효한 날짜 번호가있는 데이터를 다시 입력 할 수있는 문제가 있습니다. 등등. –
코드가 올바르게 작동합니다. "17/20/2013"을 입력하면 예상됩니까? –