广告合作
  • 今日头条

    今日头条

  • 百度一下

    百度一下,你就知道

  • 新浪网

    新浪网 - 提供新闻线索,重大新闻爆料

  • 搜狐

    搜狐

  • 豆瓣

    豆瓣

  • 百度贴吧

    百度贴吧——全球领先的中文社区

  • 首页 尚未审核订阅工具 订阅

    给定一个日期计算该日期在年内是第几天(python)

    来源:网络收集  点击:  时间:2024-03-10
    【导读】:
    计算一个给定年月日在该年内是第几天看似简单,但实际在限定时间内做出正确计算的,又似乎没有那么理想,现在把python计算的过程予以描述。工具/原料morepython numpypycharm windows7方法/步骤1/6分步阅读

    1)计算给定的年月日时间 首先要判断是否是闰年

    闰年的判断 有三个条件,实际中 忘掉year % 400 == 0 的条件

    2)使用numpay的cumsum提前把累加和计算好,后面就方便了

    否则 要麻烦很多!

    import numpy as np

    ymd = input(输入年月日(yyyy-mm-dd) :)

    year = int(ymd) # 获取年份

    mon = int(ymd) # 获取月份

    day = int(ymd) # 获取日

    print(year, mon, day)

    pingYear =

    RunYear =

    2/6

    使用numpay的cumsum 计算列表的累加和,方便计算!

    sumSpan =0;cumpingYear = np.array(pingYear).cumsum()cumRunYear = np.array(RunYear).cumsum()# print(np.array(pingYear))# print(np.array(pingYear).sum())print(cumpingYear)print(cumRunYear)

    3/6

    if(mon == 1): 如果是一月 直接输出day即可

    sumSpan = day

    print(sumSpan)

    else:

    if (year % 4 ==0 and year % 100 != 0) or (year % 400 == 0):

    sumSpan = cumRunYear 闰年: 按cumRunYear取值

    # print(sumSpan)

    sumSpan += day

    print(sumSpan)

    else:

    sumSpan = cumpingYear 平年: 按cumpingYear取值

    # print(sumSpan)

    sumSpan += day

    print(sumSpan)

    4/6

    输入年月日(yyyy-mm-dd) :? 2019-03-01

    2019 3 1

    60

    5/6

    再输入2019-01-30 验证1月算法正确性

    输入年月日(yyyy-mm-dd) :? 2019-01-30

    2019 1 30

    30

    6/6

    小结:

    优点: 使用np计算累加和,方便计算

    缺点: 缺乏对输入数据的判断,实际使用要加入数据合法性判断

    比如: 输入2019-02-31 本程序不会判断31的合法性,这点要注意。

    注意事项

    使用numpy的累加和计算 大大方便计算

    程序不具备对输入数据合法性的判断

    注意闰年的判断有三个条件

    PYTHONNUMPY累加和年内第几天闰年
    本文关键词:

    版权声明:

    1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。

    2、本站仅提供信息发布平台,不承担相关法律责任。

    3、若侵犯您的版权或隐私,请联系本站管理员删除。

    4、文章链接:http://www.1haoku.cn/art_308833.html

    相关资讯

    ©2019-2020 http://www.1haoku.cn/ 国ICP备20009186号05-06 11:07:30  耗时:0.030
    0.03s