Python基础编程20例之五:判断某一天是一年中的第几天

liftword2周前 (12-16)技术文章11

20221230星期五:


输入指定格式的日期,然后判断这一天是一年中的第几天:

# 方式一:datetime函数:
from datetime import *
da = input("请输入年月日,输入格式为xxxx-xx-xx:")
da1 = datetime.strptime(da[:4] + '-1-1','%Y-%m-%d')
da2 = datetime.strptime(da,'%Y-%m-%d')
print(type(da1),da1) # <class 'datetime.datetime'> 2022-01-01 00:00:00
print(type(da2),da2) # <class 'datetime.datetime'> 2022-12-22 00:00:00
print("今天是一年中的第 {} 天".format((da2-da1).days+1),type(da2))



# 方式二:datetime.date函数:
from datetime import *
def findDays():
    year = int(input("请输入年份:"))
    month = int(input("请输入月份:"))
    day = int(input("请输入日期:"))

    da1 = date(year,month,day)
    da2 = date(year,month=1,day=1)

    count = (da1-da2).days+1
    print(count)
findDays()



# 方式三:比较繁琐的办法:
'''
    以3月5日为例,应该先把前两个月的加起来,然后再加上5天即本年的第几天,特殊
    情况,闰年且输入月份大于3时需考虑多加一天
'''

da = input("请输入日期,格式为XXXX-XX-XX:")
date = da.split('-')
year = int(date[0])
month = int(date[1])
day = int(date[2])

list_month = [31,28,31,30,31,30,31,31,30,31,30,31]
print('计算前:平年闰年:',list_month[1])
count_day = 0
if((year % 4 == 0 and year % 100 != 0) or (year % 400 == 0)):
    list_month[1] = 29
print('平年闰年:',list_month[1])
for i in range(12):
    if month > i + 1:
        count_day += list_month[i]
    else:
        count_day += day
        break
print("这一天是 {} 年的第 {} 天".format(year,count_day))

相关文章

Python 日期格式和时间以及当前时间和时间戳

#Python#Python 程序在运行的时候可能需要获得当前的时间。在这个时候我们需要导入 datetime 包。获得当前时间例如,可以使用下面的代码获得当前的日期。today = datetim...

python 日期、时间处理,各种日期时间格式/字符串?

阅读原文模块函数说明''' date 日期对象,常用的属性有year,month,day time 时间对象,常用的属性有hour,minute,second,毫秒...

Python 编程的“时间魔术”:掌握日期与时间的20+妙招

在Python中,管理时间和日期可能是我们经常面对的一项任务,而datetime模块正是帮我们处理这些问题的利器。datetime模块不仅让我们轻松搞定时间和日期的转换、操作,还能帮助我们应对日常工作...

Python中的日期和时间处理 python处理日期数据

在Python编程语言中,日期和时间的处理是一项常见且重要的任务。Python提供了一个强大的内置模块datetime,它允许我们以多种方式操作日期和时间。本文将通过一系列示例,深入探讨如何在Pyth...

Python计算程序运行时间—time.time()、time.clock()

我们先来看一下python3中help(time):关于time库中表示时间的方法,官方给出了2种:1.从1970-01-01 00:00:00 UTC,开始到现在所经历的时间,以浮点数的'秒...

如何在Python中获取和使用当前时间

要在Python应用程序中获取和输出当前时间的最直接方法是使用datetime模块中.now()方法。>>> from datetime import datetime >&g...