有python时间对象的问题

时间:2015-06-09 06:12:15

标签: python date time

我正在制作一个小程序,从系统中获取时间,并在其上加上一些arithemetic。 这是我的代码:

import time
import datetime
c_time = time.strftime("%H:%M;%S")

# now to convert it into time object i am using 

c_time_converted = datetime.datetime.strptime(c_time,"%H:%M;%S")

print c_time_converted

输出格式为:

1900-01-01 11:39:40 但我只想要时间部分,当我分裂并执行其他操作时,我得到一个字符串返回,但我需要时间格式,以便我可以执行时间是绝对的

我希望它的形式 11:39:40

3 个答案:

答案 0 :(得分:3)

只需使用.time():

from datetime import datetime
c_time = '2015-06-08 23:13:57'
c_time_converted = datetime.strptime(c_time,"%Y-%m-%d %H:%M:%S")
print c_time_converted
print c_time_converted.time()

打印:

2015-06-08 23:13:57
23:13:57

编辑(处理有关日期时间的评论)

以下是使用日期时间差异的简单示例:

from datetime import timedelta

c_time_later = '2015-06-08 23:50:21'
c_time_later_converted = datetime.strptime(c_time_later,"%Y-%m-%d %H:%M:%S")
dt = c_time_later_converted - c_time_converted
print dt  # time I was away from stackoverflow

打印:0:36:24

现在我们会将dt时间添加回上面c_time,并看到我们恢复c_time_later

print (c_time_converted + dt).time()

打印:23:50:21

或使用timedelta添加一小时:

print (c_time_converted + timedelta(hours=1)).time() # prints 00:13:57

答案 1 :(得分:0)

我对您的代码做了一些小改动。请检查。它会给你时间。

import time
import datetime
c_time = time.strftime("%H:%M:%S")
# now to convert it into time object i am using 
c_time_converted = datetime.datetime.strptime(c_time,"%H:%M:%S")
print c_time_converted.time()

答案 2 :(得分:0)

尝试这个。

import time
import datetime
c_time = time.strftime("%H:%M;%S")

c_time_converted = datetime.datetime.strptime(c_time,"%H:%M;%S")

print c_time_converted.time()

输出:

12:04:31

获取当前日期和时间。

from datetime import datetime
print datetime.now().strftime('%Y-%m-%d %H:%M:%S')

输出:

2015-06-09 12:09:09