|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
实例(Python 2.0+)
#!/usr/bin/python
# -*- coding: UTF-8 -*-
year = int(raw_input('year:\n'))
month = int(raw_input('month:\n'))
day = int(raw_input('day:\n'))
months = (0,31,59,90,120,151,181,212,243,273,304,334)
if 0 < month <= 12:
sum = months[month - 1]
else:
print 'data error'
sum += day
leap = 0
if (year % 400 == 0) or ((year % 4 == 0) and (year % 100 != 0)):
leap = 1
if (leap == 1) and (month > 2):
sum += 1
print 'it is the %dth day.' % sum
------------
这个题目也有个问题,就是在输入月份之后输入日期时,倘若日期不对,也得报错,但我想了一顿也不知应该如何写?求高手指教。
修改一个:
- months = (31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31)
- months_leap = (31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31)
- while True:
- year = int(input('year:\n'))
- if 0 < year < 9999:
- break
- else:
- print('year error.')
- while True:
- month = int(input('month:\n'))
- if 0 < month < 13:
- break
- else:
- print('month error.')
- if (year % 400 == 0) or ((year % 4 == 0) and (year % 100 != 0)):
- leap = 1
- else:
- leap = 0
- while True:
- day = int(input('day:\n'))
- if leap:
- if 0 < month <= months_leap[month - 1]:
- break
- else:
- if 0 < month <= months[month - 1]:
- break
- print('day error.')
- if leap:
- days = sum(months_leap[:month - 1]) + day
- else:
- days = sum(months[:month - 1]) + day
- print ('it is the %dth day.' % days)
复制代码
|
|