11from datetime import date
2- from traceback import format_exc , format_exception
2+
3+ def age (birthdate ):
4+ today = date .today ()
5+ age = today .year - birthdate .year - ((today .month , today .day ) < (birthdate .month , birthdate .day ))
6+ return age
37
48def ap1 ():
59 print ("-------------Hire Employee Process-------------" )
10+
11+ #Employee number
612 while True :
713 emp_no = input ("Enter emp_no (max 5 int): " )
814 if len (emp_no ) <= 5 :
@@ -15,7 +21,7 @@ def ap1():
1521 break
1622 else :
1723 print ("Maximum length is 5!" )
18-
24+ #Employee Birth date
1925 while True :
2026 while True :
2127 year = input ("Enter birth year (4 int): " )
@@ -58,11 +64,15 @@ def ap1():
5864
5965 try :
6066 birth_date = date (year ,month ,day )
61- break
6267 except ValueError :
6368 import traceback
64- traceback .print_exc
65-
69+ traceback .print_exc ()
70+ else :
71+ if age (birth_date )>= 20 :
72+ break
73+ else :
74+ print ("Employee must be atleast 20 years of age!!" )
75+ #Employee name
6676 while True :
6777 first_name = input ("Enter first name (max 15 char)" )
6878 if len (first_name )<= 15 :
@@ -76,7 +86,7 @@ def ap1():
7686 break
7787 else :
7888 print ("Max 15 characters" )
79-
89+ #Employee Gender
8090 while True :
8191 print ("1.Male" )
8292 print ("2.Female" )
@@ -89,7 +99,7 @@ def ap1():
8999 break
90100 else :
91101 print ("Wrong input!!" )
92-
102+ #Employee hire date
93103 while True :
94104 while True :
95105 hyear = input ("Enter hire year (4 int): " )
@@ -132,32 +142,23 @@ def ap1():
132142
133143 try :
134144 hire_date = date (hyear ,hmonth ,hday )
135- break
136145 except ValueError :
137146 import traceback
138- traceback .print_exc
139-
140- while True :
141- age = input ("Enter employee age:" )
142- if len (age ) == 2 :
143- try :
144- age = int (age )
145- print ("Done OK" )
146- except ValueError :
147- print ("Age should be an integer!!" )
148- else :
149- break
147+ traceback .print_exc ()
150148 else :
151- print ("Age consists of 2 integers!!" )
149+ if age (birth_date )- age (hire_date )>= 20 :
150+ break
151+ else :
152+ print ("Employee must atleast be 20 years of age!!" )
153+
152154
153- print ("=========== Final Data ===========\n " )
155+ print ("=========== Final Data ===========" )
154156 print (emp_no ,
155157 birth_date ,
156158 first_name ,
157159 last_name ,
158160 gender ,
159- hire_date ,
160- age )
161+ hire_date )
161162ap1 ()
162163
163164# def ap():
0 commit comments