diff options
author | Georg Brandl <georg@python.org> | 2009-10-10 21:48:05 (GMT) |
---|---|---|
committer | Georg Brandl <georg@python.org> | 2009-10-10 21:48:05 (GMT) |
commit | 2a354cd8cd9a778978b5c9995aee1cb102846480 (patch) | |
tree | 6781758174895fe920ba393614484b6258032eab /Demo/scripts | |
parent | a328029c9a027f85c3626c0f52b21b778f42f9fe (diff) | |
download | cpython-2a354cd8cd9a778978b5c9995aee1cb102846480.zip cpython-2a354cd8cd9a778978b5c9995aee1cb102846480.tar.gz cpython-2a354cd8cd9a778978b5c9995aee1cb102846480.tar.bz2 |
Recorded merge of revisions 75321 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r75321 | georg.brandl | 2009-10-10 23:43:21 +0200 (Sa, 10 Okt 2009) | 1 line
Remove outdated comment and fix a few style issues.
........
Diffstat (limited to 'Demo/scripts')
-rwxr-xr-x | Demo/scripts/unbirthday.py | 48 |
1 files changed, 20 insertions, 28 deletions
diff --git a/Demo/scripts/unbirthday.py b/Demo/scripts/unbirthday.py index 991537d..af58f8f 100755 --- a/Demo/scripts/unbirthday.py +++ b/Demo/scripts/unbirthday.py @@ -9,35 +9,27 @@ import sys import time import calendar -def raw_input(prompt): - sys.stdout.write(prompt) - sys.stdout.flush() - return sys.stdin.readline() - def main(): - # Note that the range checks below also check for bad types, - # e.g. 3.14 or (). However syntactically invalid replies - # will raise an exception. if sys.argv[1:]: year = int(sys.argv[1]) else: year = int(input('In which year were you born? ')) - if 0<=year<100: + if 0 <= year < 100: print("I'll assume that by", year, end=' ') year = year + 1900 print('you mean', year, 'and not the early Christian era') - elif not (1850<=year<=2002): + elif not (1850 <= year <= time.localtime()[0]): print("It's hard to believe you were born in", year) return - # + if sys.argv[2:]: month = int(sys.argv[2]) else: month = int(input('And in which month? (1-12) ')) - if not (1<=month<=12): + if not (1 <= month <= 12): print('There is no month numbered', month) return - # + if sys.argv[3:]: day = int(sys.argv[3]) else: @@ -46,36 +38,36 @@ def main(): maxday = 29 else: maxday = calendar.mdays[month] - if not (1<=day<=maxday): + if not (1 <= day <= maxday): print('There are no', day, 'days in that month!') return - # + bdaytuple = (year, month, day) bdaydate = mkdate(bdaytuple) print('You were born on', format(bdaytuple)) - # + todaytuple = time.localtime()[:3] todaydate = mkdate(todaytuple) print('Today is', format(todaytuple)) - # + if bdaytuple > todaytuple: print('You are a time traveler. Go back to the future!') return - # + if bdaytuple == todaytuple: print('You were born today. Have a nice life!') return - # + days = todaydate - bdaydate print('You have lived', days, 'days') - # + age = 0 for y in range(year, todaytuple[0] + 1): if bdaytuple < (y, month, day) <= todaytuple: age = age + 1 - # + print('You are', age, 'years old') - # + if todaytuple[1:] == bdaytuple[1:]: print('Congratulations! Today is your', nth(age), 'birthday') print('Yesterday was your', end=' ') @@ -83,8 +75,8 @@ def main(): print('Today is your', end=' ') print(nth(days - age), 'unbirthday') -def format(xxx_todo_changeme): - (year, month, day) = xxx_todo_changeme +def format(date): + (year, month, day) = date return '%d %s %d' % (day, calendar.month_name[month], year) def nth(n): @@ -93,12 +85,12 @@ def nth(n): if n == 3: return '3rd' return '%dth' % n -def mkdate(xxx_todo_changeme1): - # Januari 1st, in 0 A.D. is arbitrarily defined to be day 1, +def mkdate(date): + # January 1st, in 0 A.D. is arbitrarily defined to be day 1, # even though that day never actually existed and the calendar # was different then... - (year, month, day) = xxx_todo_changeme1 - days = year*365 # years, roughly + (year, month, day) = date + days = year*365 # years, roughly days = days + (year+3)//4 # plus leap years, roughly days = days - (year+99)//100 # minus non-leap years every century days = days + (year+399)//400 # plus leap years every 4 centirues |