欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

(python)输入某年某月某日,判断这一天是这一年的第几天?

程序员文章站 2022-04-04 20:56:51
...

题目输入某年某月某日,判断这一天是这一年的第几天?

此题的关键在于判断闰年和平年:
闰年二月为29天,平年二月为28天!
如果年份能被4整除且不能被100整除的,或者能被400整除的为闰年,其余为平年!

代码如下

x=input("please enter the date:(such as:2020.2.1 )")
a,b,c=x.split(".")
a=int(a)
b=int(b)
c=int(c)
d=[0,31,28,31,30,31,30,31,31,30,31,30,31]
sum=0
if a%4==0 and a%100!=0 or a%400==0:#为闰年,二月为29
    d[2]=29
    for i in range(b):
        sum+=d[i]
    print("The day is ",sum+c)
else:
    d[2]=28
    for i in range(b):
        sum+=d[i]
    print("The day is ",sum+c)

解释如下:

1:因为input()输入的是字符串,我们需要对它进行类型转换:如a=int(a)转换为整型
2:以数组的形式对月份排列:d=[0,31,28,31,30,31,30,31,31,30,31,30,31]
3:用for循环对月份的天数进行相加:for i in range(b): sum+=d[i]
4:最后再加上天数等于总天数:sum+c

就这样啦!
(python)输入某年某月某日,判断这一天是这一年的第几天?