|
|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
#输入某年某月某日,判断这一天是这一年的第几天?
def a(y,m,d):
x = {1:31,2:28,3:31,4:30,5:31,6:30,7:31,8:31,9:30,10:31,11:30,12:31}
s = 0
i = 1
if (y % 400 == 0) or ((y % 4 == 0) and (y % 100 != 0)):
while i <= m:
s = s + a[i]
i=i+1
return s + d
else :
while i <= m:
s = s + a[i]
i=i+1
if m<2:
return s+d
else :
return s+d+1
y =int(input('请输入查询年'))
m =int(input('请输入查询月'))
d =int(input('请输入查询日'))
s = a(y,m,d)
print('这天在这一年中是第%d天'%s)
- #输入某年某月某日,判断这一天是这一年的第几天?
- def a(y,m,d):
- x = {1:31,2:28,3:31,4:30,5:31,6:30,7:31,8:31,9:30,10:31,11:30,12:31}
- s = 0
- i = 1
- if (y % 400 == 0) or ((y % 4 == 0) and (y % 100 != 0)):
- while i < m:
- s = s + x[i]
- i=i+1
- if m<=2:
- return s+d
- else :
- return s+d+1
- else :
- while i < m:
- s = s + x[i]
- i=i+1
- return s + d
-
-
- y =int(input('请输入查询年'))
- m =int(input('请输入查询月'))
- d =int(input('请输入查询日'))
- s = a(y,m,d)
- print('这天在这一年中是第%d天'%s)
- import datetime
- start = datetime.datetime(y, m, d)
- end = datetime.datetime(y, 1, 1)
- print((start-end).days+1)
复制代码
自己对照我的改,你的问题有好几个地方:
我随便说一下:①算月份的字典应该用a[i],②有三个地方的<=你设置错了,改写=的你不写,不该写的你写了,自己对照我的改,③致命错误,你的闰年判断之后,到底哪个调节要加1天,你写反了,闰年的要加1天,你却把不是闰年的加了
其他地方你自己慢慢看,我后面加了一个用datetime做验证的,每次都会验证一次你的这个方式判断的天数对不对
|
|