On Wed, 23 Nov 2016 06:18:38 -0800, jones.dayton wrote: > I'm just learning, so please excuse my ignorance for > what I know is a simple issue... > > I'm writing a "Hello, World" type of script to see how > things work in python3. I'm asking for input to get a > person's birthday, then I want to compare that to > "today" and see how many days have past. > > --code-- > from datetime import datetime, date > > person = input("Enter your name: ") > bmonth = int(input("Enter the numerical month you were born: ")) > bday = int(input("Enter the numerical day of the month you were born: ")) > byear = int(input("Enter the year you were born: ")) > > today = date.today() > -- end -- > > I know to get what I want, I need to do something like: > d0 = date(2008, 8, 18) > d1 = date(2008, 9, 26) > delta = d0 - d1 > print(delta.days) > > > but how do I replace the "2008, 8, 18" and "2008, 9, 26" with *my* values? > I've tried several things (which I can't remember all of) but usually end up > with an error like this: > > ... > delta = (b - a) > TypeError: unsupported operand type(s) for -: 'str' and 'str'
Try the code that is below: import datetime from datetime import date today = date.today() person = input("Enter your name: ") byear = raw_input("Enter the four-digit year you were born: ") bmonth = raw_input("Enter the month (1-12)you were born: ") bday = raw_input("Enter the day (1-31) you were born: ") try: birthdate = date(int(byear), int(bmonth), int(bday)) dif = (today - birthdate).days print person + "'s birthday was " + str(dif) + " days ago." except ValueError: print "The date you entered is not valid!" -- <Wildman> GNU/Linux user #557453 The cow died so I don't need your bull! -- https://mail.python.org/mailman/listinfo/python-list