python实现简单的日期计算器

因为一直要计算当天日期往前推N天的日期,所以想做一个简单的日期计算器实现这个功能。

另外把计算两个日期之间的天数也一起给加进去了,就更完整。

这个日期计算器的界面很简陋,功能也非常简单。

暂时没有做通过日历选择天数的优化,因为不会!如果有大佬可以私信我,教教我这个菜鸟。。。。

以下是运行截图

在日期计算类中:

初始化窗口(该窗口用来让用户输入日期或者天数)

cal_days计算两个日期之间的天数

cal_date计算日期(输入一个日期和天数N,计算N天前/后的日期)

import tkinter
import datetime

class DateCalculator:
    def __init__(self,window):
        self.window=window
        # window.geometry("800x500")
        window.title("日期计算器")
        tkinter.Label(text="请输入两个日期,格式:20230509", font=80, height=4).grid()
        tkinter.Label(text="开始日期:", font=15).grid()
        self.entry1 = tkinter.Entry(window)
        self.entry1.grid(pady=5)
        tkinter.Label(text="结束日期:", font=15).grid()
        self.entry2 = tkinter.Entry(window)
        self.entry2.grid()
        tkinter.Button(window,text="计算天数", width=10, height=1,command=self.cal_days).grid(pady=20)

        self.result_day=tkinter.Label(text="")
        self.result_day.grid()

        tkinter.Label(text="输入日期",font=15).grid()
        self.entry3 =tkinter.Entry(window)
        self.entry3.grid()

        tkinter.Label(text="输入天数,负数往前计算",font=15).grid()
        self.entry4 =tkinter.Entry(window)
        self.entry4.grid()

        tkinter.Button(window,text="结果计算",width=10,height=1,command=self.cal_date).grid(pady=20)

        self.result_day1=tkinter.Label(text="")
        self.result_day1.grid()

    def cal_days(self):
        start=self.entry1.get()
        end=self.entry2.get()
        try:
            day = (datetime.datetime.strptime(end, '%Y%m%d') - datetime.datetime.strptime(start, '%Y%m%d')).days
            self.result_day.config(text=f"日期间隔{day}天",fg="red",font=15)
        except ValueError:
            self.result_day.config(text="日期格式错误")

    def cal_date(self):
        date1=self.entry3.get()
        day=self.entry4.get()

        try:
            day1=((datetime.datetime.strptime(date1,'%Y%m%d'))+datetime.timedelta(days=int(day))).date()
            self.result_day1.config(text=f"相差{day}天:{day1}",fg="red",font=15)
        except ValueError:
            self.result_day1.config(text="输入格式错误")
if __name__ == '__main__':
    window = tkinter.Tk()

    date_cal=DateCalculator(window)

    window.mainloop()

main函数里:

创建主窗口

创建日期计算器

程序循环执行,并进入等待和处理事件

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值