假设您有一个常规字典,每个键代表一个时间对象,您可以对其进行格式化并将其打印到屏幕上,如下所示:
d = { key : DT_object}
#Print formatted key with corresponding formatted datetime object.
for key, value in d.iteritems():
print '%s %s' % (key,value)
现在,如果我们复杂一点,并为每个键存储一个日期时间对象列表:
from collections import defaultdict
d = { key : [DT_object,DT_object]}
for key, value in d.iteritems():
print '%s %s' % (key,value)
我们的格式化过程现在崩溃了。让python循环遍历列表中的每个对象并格式化它的正确代码是什么?
答案 0 :(得分:0)
使用join
并在值列表中创建所有对象字符串
'%s %s' % (key," ".join([str(x) for x in value]))
将str.format
与示例结合使用:
d = { "foo" : [datetime.now(),datetime.now()]}
for key, value in d.iteritems():
print '{} {}'.format(key, " ".join([str(x) for x in value]))
foo 2014-08-13 20:34:11.940936 2014-08-13 20:34:11.940981
您还可以使用其中一种datetime
方法更改为字符串:
print '{} {}'.format(key, " ".join([x.isoformat() for x in value]))
foo 2014-08-13T20:36:08.900873 2014-08-13T20:36:08.900910
答案 1 :(得分:-1)
d = { key : [DT_object,DT_object]}
for key, value in d.iteritems():
print '%s %s' % (key,list(map(str,value)))
可能是你想要的......