圆月山庄资源网 Design By www.vgjia.com

本文实例为大家分享了python实现简单日历的具体代码,供大家参考,具体内容如下

首先要理清楚逻辑,日历的难点在于如何使用基础知识将周几与对应的日期进行对应,我这里利用了1917年1月1日为星期1,计算累计到我们要查询的月份的天数来确定所查询月份的第一天为周几.

# 输出日历界面

print("*" * 50)
print("欢迎使用【天天日历】v2.0")

# 接收用户输入的年份
year_int = int(input("请输入年份:\n"))
# 定义全局变量用于记录天数总和
sum = 0
if year_int >= 1917:
  month_int = int(input("请输入月份\n"))
  for year_every in range(1917, year_int): # 遍历从1917年到用户输入年份 用于计算到用户所输入年份共多少天
    if (year_every % 4 == 0 and year_every % 100 != 0) or                 year_every % 400 == 0: # 如果是瑞年则366天否则平年365天
      sum += 366
    else:
      sum += 365
  for month_every in range(1, month_int): # 遍历月份用于计算由1月份到用户输入月份的总天数
    if month_every == 4 or month_every == 6 or             month_every == 9 or month_every == 11:
      sum += 30
    elif month_every == 2:
      if (year_int % 1 == 0 and year_int % 100 != 0) or                   year_int % 400 == 0:
        sum += 29
      else:
        sum += 28
    else:
      sum += 31
  # 定义变量用于定义每个月的天数
  day = 0
  # 定义变量 用于计算当月第一天为周几
  weak = sum % 7

  print("日\t一\t二\t三\t四\t五\t六")
  # 判断用户输入月份为多少天
  if month_int == 4 or month_int == 6 or month_int == 9 or month_int == 11:
    day = 30
  elif month_int == 2:
    if (year_int % 4 == 0 and year_int % 100 != 0) or                 year_int % 400 == 0:
      day = 29
    else:
      day = 28
  else:
    day = 31
  # 输出指定空格数让第一天与周几对齐
  print("\t"*weak,end="")
  i = 1
  while i <= day: # 遍历用户查询月份
    weakend = ((sum+i)-1)% 7
    # 如果余数为6 换行否则输出空格
    if weakend == 6:
      print("%d" %i)
    else:
      print(i,end="\t")
    i += 1
else:
  print("系统正在维护暂时无法获取1917年之前的信息")

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

标签:
python,日历

圆月山庄资源网 Design By www.vgjia.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
圆月山庄资源网 Design By www.vgjia.com

P70系列延期,华为新旗舰将在下月发布

3月20日消息,近期博主@数码闲聊站 透露,原定三月份发布的华为新旗舰P70系列延期发布,预计4月份上市。

而博主@定焦数码 爆料,华为的P70系列在定位上已经超过了Mate60,成为了重要的旗舰系列之一。它肩负着重返影像领域顶尖的使命。那么这次P70会带来哪些令人惊艳的创新呢?

根据目前爆料的消息来看,华为P70系列将推出三个版本,其中P70和P70 Pro采用了三角形的摄像头模组设计,而P70 Art则采用了与上一代P60 Art相似的不规则形状设计。这样的外观是否好看见仁见智,但辨识度绝对拉满。