我正在尝试使用pretty_print选项打印出xml doc.但这是一个错误
TypeError:tostring()得到一个意外的关键字参数'pretty_print'
我在这里错过了什么吗?
def CreateXML2():
Date = etree.Element("Date", value=time.strftime(time_format, time.localtime()));
UserNode = etree.SubElement(Date, "User");
IDNode = etree.SubElement(UserNode, "ID");
print(etree.tostring(Date, pretty_print=True));
Run Code Online (Sandbox Code Playgroud) 我正在编写timediff函数来计算2给出日期时间之间的时间(秒)差异
def timediff(time1, time2):
timeformat = '%d%b%Y:%H:%M:%S'
#time1="01MAR2016:07:11:53"
#time2="01MAR2016:16:28:38"
try:
date_object1 = datetime.strptime(time1, timeformat)
date_object2 = datetime.strptime(time2, timeformat)
except ValueError:
print "time1 format: " + repr(time1)
print "time2 format: " + repr(time2)
raise
return abs((date_object2 - date_object1).seconds)
Run Code Online (Sandbox Code Playgroud)
似乎没有把"月,日,年"计算在内.如果它处于相同的"月,日,年",它给出正确的计算
>>> t1="01MAR2016:07:11:53"
>>> t2="01MAR2016:16:28:38"
>>> timediff(t1, t2)
33405
Run Code Online (Sandbox Code Playgroud)
但是对于不同的"月,日,年",它给出了错误的答案.这只计算时差~18小时(约为65k秒)
>>> t1="02APR2016:06:43:51"
>>> t2="06APR2016:00:58:03"
>>> timediff(t1, t2)
65652
Run Code Online (Sandbox Code Playgroud)
或24小时不同,它给出0
>>> t1="01MAR2016:07:11:53"
>>> t2="02MAR2016:07:11:53"
>>> timediff(t1, t2)
0
Run Code Online (Sandbox Code Playgroud)
datetime采用我给出的时间格式
>>> t1="01MAR2016:07:11:53"
>>> t2="02MAR2016:07:11:53"
>>> datetime.strptime(t1, timeformat)
datetime.datetime(2016, 3, 1, 7, 11, 53)
>>> datetime.strptime(t2, …Run Code Online (Sandbox Code Playgroud)