Python Timenow没有毫秒吗?

Python Timenow没有毫秒吗?,python,datetime,Python,Datetime,我正在将时间写入一个XML文件,然后回来将其与当前时间进行比较。我以前没有用Python这样做过,时间格式似乎很奇怪 如果我将timenow写入XML时没有毫秒,那么我已经成功地将一些东西组合在一起 如果XML有一个类似2016-01-05 00:39:20的时间戳,那么这是有效的: tree = ET.parse('C:\logs\XMLFILENAME.xml') for matchlisting in tree.findall('Found'): age = mat

我正在将时间写入一个XML文件,然后回来将其与当前时间进行比较。我以前没有用Python这样做过,时间格式似乎很奇怪

如果我将timenow写入XML时没有毫秒,那么我已经成功地将一些东西组合在一起

如果XML有一个类似2016-01-05 00:39:20的时间戳,那么这是有效的:

tree = ET.parse('C:\logs\XMLFILENAME.xml')
    for matchlisting in tree.findall('Found'):
        age = matchlisting.find('FoundTime').text
    dnow=datetime.datetime.now()
    print dnow

    d2 = datetime.datetime.strptime(age, '%Y-%m-%d %H:%M:%S')

    #print d2
    print(dnow-d2)
但默认情况下,time.now不会给出类似2016-01-05 00:39:20的值,它会在后面添加毫秒,如2016-01-05 00:39:20.xxxx

我在文档中没有看到一个毫秒选项,可以用strtime来处理它,也没有一种不用毫秒来编写timenow的方法,这同样适用


我希望有一些简单的语法来修复其中的一个。我很欣赏这里的指针。我想这应该是相当直截了当的事情,已经过去了几个小时。

对于
日期时间
对象的显示,默认转换为
str
,包括微秒。如果不想查看,请使用
strftime
指定自定义格式:

>>> from datetime import datetime
>>> d = datetime.now()
>>> d
datetime.datetime(2016, 1, 4, 17, 31, 32, 976902)
>>> print(d)
2016-01-04 17:31:32.976902
>>> print(d.strftime('%Y-%m-%d %H:%M:%S'))
2016-01-04 17:31:32
datetime
对象还支持
格式的自定义格式:

>>> '{:%Y-%m-%d %H:%M:%S}'.format(d)
'2016-01-04 17:31:32'
此外,微秒的格式字符是
%f

>>> print(d.strftime('%Y-%m-%d %H:%M:%S.%f'))
2016-01-04 17:31:32.976902

Ref:

显示
datetime
对象时默认转换为
str
,包括微秒。如果不想查看,请使用
strftime
指定自定义格式:

>>> from datetime import datetime
>>> d = datetime.now()
>>> d
datetime.datetime(2016, 1, 4, 17, 31, 32, 976902)
>>> print(d)
2016-01-04 17:31:32.976902
>>> print(d.strftime('%Y-%m-%d %H:%M:%S'))
2016-01-04 17:31:32
datetime
对象还支持
格式的自定义格式:

>>> '{:%Y-%m-%d %H:%M:%S}'.format(d)
'2016-01-04 17:31:32'
此外,微秒的格式字符是
%f

>>> print(d.strftime('%Y-%m-%d %H:%M:%S.%f'))
2016-01-04 17:31:32.976902
参考: