zoukankan      html  css  js  c++  java
  • python——日历

     1 #!/usr/bin/env/ python3
     2 # -*- codinf: utf-8 -*-
     3 # year: 2018
     4 # day: 138
     5 #   --> XX/XX
     6 # year: 2000
     7 # day: 63
     8 # --> 03/03
     9 # year: 2014
    10 # day: 63
    11 #   --> 03/04
    12 def is_leap_year(year):
    13     if year % 100 != 0:
    14        if year % 4 == 0:
    15           return 1
    16     else:
    17        if year % 400 == 0:
    18           return 1
    19     return 0
    20 
    21 def get_days_by_year_month(year,month):
    22     days = [ # 01  02  03  04  05  06  07  08  09 10 11 12
    23               [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31],
    24               [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31],
    25     ]
    26     return days[is_leap_year(year)][month-1]
    27 
    28 def get_month_day_by_year_days(year, days):
    29     month, day = 1, 1
    30     ###
    31     while True:
    32         d = get_days_by_year_month(year, month)
    33         if days <= d:
    34            day = days
    35            break
    36         days -= d
    37         month += 1
    38     ###
    39 
    40     return month, day
    41 def get_days_by_year_month_day(year, month, day):
    42     # 2018/3/18  -->  31+28+18
    43     days = day
    44     for i in range(1, month):
    45         days += get_days_by_year_month(year, i)
    46     return days
    47 
    48 if __name__ == '__main__':
    49     year  = int(input('year:  '))
    50     month = int(input('month: '))
    51     day   = int(input('day:   '))
    52     days  = get_days_by_year_month_day(year, month, day)
    53     print('%d/%02d/%02d --> %dday(s) in %d year.' %(year, month, day, days, year))
    54     days  = int(input('day: '))
    55     month, day = get_month_day_by_year_days(year, days)
    56     print('%d of %d --> %02d/%02d' %(days, year, month, day))

    执行结果:
    可以查询2018年开始到指定日期过去多少天,也可以用天数来查询日期
    [root@lpc 05-4-日历]# python3 rili.py
    year:  2018
    month: 5
    day:   27
    2018/05/27 --> 147day(s) in 2018 year.
    day: 148
    148 of 2018 --> 05/28



  • 相关阅读:
    使用NPOI读取Excel表格内容并进行修改
    JSON.parse()和JSON.stringify()
    切图时图片的选择:JPG、PNG、GIF的区别
    用js把数据从一个页面传到另一个页面
    iframe中positioin:fixed失效问题
    YUV格式&像素
    JS中插入节点的方法appendChild和insertBefore的应用
    CSS的相对定位和就对定位
    CSS中的相对定位和绝对定位
    POJ-1734
  • 原文地址:https://www.cnblogs.com/Leonardo-li/p/9096501.html
Copyright © 2011-2022 走看看