字典转换为Python列表

时间:2012-11-08 03:46:56

标签: python dictionary

我有一个例子的字典: E = 527:{('GENERAL MOTORS CORP。',datetime.date(1,1,1),False,'KENOSHA','WI')}

我需要取出datetime.date(1,1,1)并将其转换为元组之外的单独列表。我应该访问多个密钥的日期并将它们包含在列表中。我很困惑,并希望为任何关键的一般做这个。这取自一般数据表,其中键是索引1,元组中的值是下一个索引值。 [E [527] [1]会是正确的吗?

2 个答案:

答案 0 :(得分:0)

[ t[1] for _, t in E.iteritems() ]

答案 1 :(得分:0)

使用:

dates = [v[1] for k,v in E.iteritems()]

OR:

dates = [v[1] for v in E.itervalues()] 

OR:

from operator import itemgetter

dates = map(itemgetter(1), E.itervalues())

根据你的评论,它可以是:

from datetime import datetime

def get_dates(filename, A, B):
    with open(filename) as f:
        dates = [datetime.strptime(row.split()[2], format) for row in f.readlines()]
    dates = [dt for dt in dates if dt.year == A and dt.month == B]
    return [(dt, dates.count(dt)) for dt in set(dates)]