我在Tcl编写了一个程序,它可以让一个旋转框以YYYY / MM / DD格式旋转日期,如下所示:
proc datespin {way w} {
set datoa [$w get] ; # current date from spinbox
set oldsecs [clock scan $datoa -format {%Y/%m/%d}]
if {$way eq "up"} {
set newsecs [clock add $oldsecs 1 day]
} else {
set newsecs [clock add $oldsecs "-1" day]
}
set datoa [clock format $newsecs -format {%Y/%m/%d}]
$w delete 0 end
$w insert 0 $datoa ; # new date
}
现在我正在尝试使用tkinter在Python中重写程序,但我还没有找到一个简单的Python等效的Tcl clock add
命令。有吗?的种类?我查看了time
和datetime
模块文档,但我还是Python新手,有点迷失。请帮忙!
答案 0 :(得分:1)
您可能正在寻找datetime.timedelta
。
>>> from datetime import date, timedelta
>>>
>>> current_date = date(year=2000, month=1, day=1)
>>> current_date.isoformat()
'2000-01-01'
>>>
>>> next_date = current_date + timedelta(days=1)
>>> next_date.isoformat()
'2000-01-02'
>>>
>>> previous_date = current_date - timedelta(days=1)
>>> previous_date.isoformat()
'1999-12-31'
您可以使用datetime.date.today
获取系统日期,并使用datetime.date.strftime
格式化日期。例如:
>>> from datetime import date
>>> date.today().strftime('%Y/%m/%d')