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

方法一:

"""
3、输入某年某月某日,判断这一天是这一年的第几天
"""
year = int(input("请输入年分:"))
month = int(input("请输入月份:"))
day = int(input("请输入日:"))
count = 0
if month == 1:
    count = day
elif month == 2:
    count = 31 + day
elif month == 3 and ((year % 4 == 0 and year % 100 != 0) or (year % 400 == 0)):
    if month == 3:
        count = 31 + 29 + day
    if month == 4:
        count = 31 + 29 + 31 + day
    if month == 5:
        count = 31 + 29 + 31 + 30 + day
    if month == 6:
        count = 31 + 29 + 31 + 30 + 31 + day
    if month == 7:
        count = 31 + 29 + 31 + 30 + 31 + 30 + day
    if month == 8:
        count = 31 + 29 + 31 + 30 + 31 + 30 + 31 + day
    if month == 9:
        count = 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + day
    if month == 10:
        count = 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + day
    if month == 11:
        count = 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31 + day
    if month == 12:
        count = 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31 + 30 + day
else:
    if month == 3:
        count = 31 + 28 + day
    if month == 4:
        count = 31 + 28 + 31 + day
    if month == 5:
        count = 31 + 28 + 31 + 30 + day
    if month == 6:
        count = 31 + 28 + 31 + 30 + 31 + day
    if month == 7:
        count = 31 + 28 + 31 + 30 + 31 + 30 + day
    if month == 8:
        count = 31 + 28 + 31 + 30 + 31 + 30 + 31 + day
    if month == 9:
        count = 31 + 28 + 31 + 30 + 31 + 30 + 31 + 31 + day
    if month == 10:
        count = 31 + 28 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + day
    if month == 11:
        count = 31 + 28 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31 + day
    if month == 12:
        count = 31 + 28 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31 + 30 + day

print("公共%d天" % count)

方法二:

print("-" * 20)
import datetime
result = datetime.datetime(year, month, day)
# 用来格式化时间,%j 用来表示天数
print(result.strftime("%j"))

方法三:

"""
3、输入某年某月某日,判断这一天是这一年的第几天
"""
year = int(input("请输入年分:"))
month = int(input("请输入月份:"))
day = int(input("请输入日:"))

    
print("-" * 20)
day += (month-1) * 30
if month < 9:
    day += month//2
else:
    day += (month+1)//2

if month > 2:
    if year%400 ==0 or year%4 == 0 and year%100 !=0 :
        day -= 1
    else:
        day -= 2
print("是一年的第%d天"%day)

 

你可能感兴趣的:(Python)