《python语言程序设计》(2018)第6章编程题-32题 最终代码 这不是最好的以后还有更好的

在这里插入图片描述


def month_list(month_data):
    month_dist = {1: "一月", 2: "二月", 3: "三月", 4: "四月", 5: "五月", 6: "六月", 7: "七月", 8: "八月", 9: "九月",
                  10: "十月", 11: "十一月", 12: "十二月"}
    return month_dist[month_data]


def week_list(w_day):
    week_dist = {0: "星期六", 1: "星期日", 2: "星期一", 3: "星期二", 4: "星期三", 5: "星期四", 6: "星期五"}
    return week_dist[w_day]


def count_day(year_data, month_num, input_data):
    year_data_type = year_data
    after_years = year_data - 1

    for i in range(month_num, 13):
        month_day = i
        if i <= 2:
            i += 12
            year_data = after_years

        elif i >= 3:
            i = i
            year_data = year_data_type
            # print(i,year_data)

        j = year_data // 100
        k = year_data % 100
        m1 = (26 * (i + 1)) // 10
        w_day = (input_data + m1 + k + (k // 4) + (j // 4) + (5 * j)) % 7
        print(month_list(month_day), input_data, year_data_type, "is", week_list(w_day))


def main():
    year_data = eval(input("Enter year number is: "))
    month_num = eval(input("Enter month number is: "))
    input_data = eval(input("Enter day number is: "))
    count_day(year_data, month_num, input_data)


main()

结果

在这里插入图片描述

终于想明白了。不是题有多难。而是想明白了,有些事就是要通过想通来解决。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

电饭叔

谢谢各位兄弟们的关注,谢谢破费

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值