在下面显示的代码中,我需要操作python中的time var来在python中显示日期/时间戳来表示延迟。
例如,当用户以小时为单位输入延迟时间时,我需要设置jcarddeliver var以使用当前日期/时间+延迟的值更新自身。
它也应该更新日期变量。例如,如果日期是2月24日,时间是15:00,延迟时间是10小时,则jcarddeliver日期应更改为2月25日。
jcarddate = time.strftime("%a %m/%d/%y", time.localtime())
jcardtime = time.strftime("%H:%M:%S", time.localtime())
delay = raw_input("enter the delay: ")
jcarddeliver = ??
我只是希望我有意义。
答案 0 :(得分:3)
您可以尝试日期时间模块,例如
import datetime
now = datetime.datetime.now()
delay = float (raw_input ("enter delay (s): "))
dt = datetime.timedelta (seconds=delay)
then = now + dt
print now
print then
答案 1 :(得分:1)
time.time()
的结果是自Epoch以来秒数的浮点值。您可以为此值添加秒数,并使用time.localtime()
,time.ctime()
和其他函数以各种形式获取结果:
>>> now = time.time()
>>> time.ctime(now)
'Fri Sep 04 16:19:59 2009' # <-- this is local time
>>> then = now + (10.0 * 60.0 * 60.0) # <-- 10 hours in seconds
>>> time.ctime(then)
'Sat Sep 05 02:19:59 2009'
答案 2 :(得分:0)
“我需要设置jcarddeliver var以使用当前日期/时间+延迟的值更新自己”
如何重新制定
jcarddeliver
应该是当前的日期时间加上延迟。
“更新本身”并不是完全明智的。
尝试以下方法:
尝试以最明显的方式计算“当前日期时间加上延迟”
打印结果。
尝试在此结果上使用localtime()
。你得到了什么?
答案 3 :(得分:0)
试试这个:
now = time.time()
then = now + 365*24*3600
print time.strftime('%Y-%m-%d', time.localtime(then))