您的位置:首页 > 编程语言 > Python开发

python根据给定的年月日以数字形式打印日期

2016-12-01 10:21 597 查看
months=[
'January',
'February',
'March',
'April',
'May',
'June',
'July',
'August',
'September',
'October',
'November',
'December'
]


以1-31的数字作为结尾的列表,定义的endings变量赋值后面加上17*和7*,

原来该变量定义的是1-31这31个数的英文后缀,这31个数的英文是1:first 2:second 3:third

4:fourth 5:fifth 6:sixth 7:seventh 8:eighth 9:ninth 10:tenth 11:eleventh 12:twelfth 13:thirteenth 14:fourteenth 15:fifteenth

16:sixteenth 17:seventeenth 18:eighteenth 19:ninteenth 20:twentieth21:twentyfirst 22:twenty-second 23:twenty-third24:twenty-fourth 25:twenty-fifth 26:twenty-sixth 27;twenty-seventh 28:twenty-eighth 29:twenty-ninth 30:thirtieth 31:thirty-first

其中在第一个 [‘st’,’nd’,’rd’]后面从fourth到twentieth一共是17个‘th’,然后是又一个[‘st’,’nd’,’rd’]后面再从twenty-fourth到thirtieth一共是7个‘th’,17 * [‘th’]的意思就是:给这个数据添加17个’th’字符串

endings=['st','nd','rd']+17*['th']\
+['st','nd','rd']+7*['th']\
+['st']


获取用户输入的日期信息

year   =raw_input('Year: ')
month  =raw_input('Month(1-12): ')
day    =raw_input('Day(1-31): ')


将月份和日期转化成整数

month_number=int(month)
day_number=int(day)


因为索引从0开始所以取到的月份和天数会往后推一个月,获取当前的日期需要减一 ,例如:输入month_name 3 ,取到的是April四月,实际上我们想要的是三月

month_name=months[month_number-1]
ordinal=day+endings[day_number-1]


打印日期

print month_name+' '+ordinal+'.'+year
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python 打印日期