SWUST派森 #P109. 日期计算

描述

输入一个日期,输出这个日期是这一年的第几天

样例

输入

2023-3-14

输出

73

代码:

import datetime
a = input().split('-')
d1 = datetime.datetime(int(a[0]),int(a[1]),int(a[2]))
d2 = datetime.datetime(int(a[0]),1,1)
print((d1-d2).days+1)

代码解析:

  1. import datetime:导入datetime模块,用于处理日期和时间的操作。

  2. a = input().split('-'):输入一个日期,使用split()方法以"-"为分隔符将其拆分为列表。

    • input()用于接收用户的输入,这里是一个日期字符串。

    • split('-')将日期字符串按照"-"分隔,返回一个包含拆分后的子字符串的列表。例如,输入"2022-06-15",则返回列表["2022", "06", “15”],分别表示年、月、日。

  3. d1 = datetime.datetime(int(a[0]), int(a[1]), int(a[2])):创建一个datetime对象d1,表示输入的日期。

    • datetime.datetime()是datetime模块中的一个类,用于表示日期和时间。

    • int(a[0])int(a[1])int(a[2])将拆分后的列表中的元素转换为整数,分别表示年、月、日。

    • datetime.datetime(year, month, day)创建一个datetime对象,表示具体的日期。

  4. d2 = datetime.datetime(int(a[0]), 1, 1):创建一个datetime对象d2,表示输入日期的当年的1月1日。

    • 这里的参数分别是输入日期的年份、月份(设置为1)、日份(设置为1)。

  5. (d1 - d2).days + 1:计算输入日期和当年1月1日之间的天数,并加1表示包括输入日期。

    • d1 - d2计算两个日期之间的时间差,得到一个timedelta对象。

    • .days访问timedelta对象的days属性,表示时间差的天数。

    • + 1将计算得到的天数加1,以包括输入日期。

    • 最终结果表示输入日期是该年的第几天。

  6. print((d1 - d2).days + 1):输出计算得到的结果,即输入日期是该年的第几天。

你可能感兴趣的:(Python,开发语言,科技,学习方法,python,pycharm,算法)