如何设置python time_struct的日,月和年而不更改已经存在的时间。
时间由用户指定,并假定为当天的时间。此代码将给定字符串转换为time_struct,但将日期设置为1/1/1900:
from time import strptime
self._alarmTime = strptime(self._frame.txtAlarmTime.text(), '%H:%M:%S')
我现在想用某种today()
替换这个1/1/1900。
听起来很简单,但我现在还不知道。
答案 0 :(得分:2)
您还可以使用datetime模块:
from datetime import datetime
datetime.combine( datetime.today().date(),
datetime.strptime('23:46:00', '%H:%M:%S').time()
)
答案 1 :(得分:1)
struct_time
(由time.strptime
/ time.localtime
返回)的行为类似于元组。所以你可以这样做:
>>> alarm_time = time.strptime('23:46:00', '%H:%M:%S')
>>> today = time.localtime()
>>> time.struct_time(today[:3] + alarm_time[3:])
time.struct_time(tm_year=2013, tm_mon=12, tm_mday=8,
tm_hour=23, tm_min=46, tm_sec=0, tm_wday=0,
tm_yday=1, tm_isdst=-1)