拆分列表中的列表

时间:2013-09-03 01:39:09

标签: python list append strip

我有这种格式的列表:

["['05-Aug-13 10:17', '05-Aug-13 10:17', '05-Aug-13 15:17']"]

我正在使用:

for d in date:
    print d

这会产生:

['05-Aug-13 10:17', '05-Aug-13 10:17', '05-Aug-13 15:17'] 

然后我尝试将其添加到defaultdict,因此在我写的print d下面:

myDict[text].append(date)

稍后,我尝试使用以下方法迭代:

for text, date in myDict.iteritems():
    for d in date:
        print d, '\n'

但这不起作用,只是在这个问题的第一行代码中生成格式show。格式建议列表中的列表,所以我尝试使用:

for d in date:
    for e in d:
        myDict[text].append(e)

但这包括该行的每个字符,而不是每个单独的日期。我究竟做错了什么?如何使用此格式defaultdict

text : ['05-Aug-13 10:17', '06-Aug-13 11:17'] 

其价值是否都可以达到?

2 个答案:

答案 0 :(得分:3)

您的列表只包含一个元素:另一个列表的字符串表示形式。在将其处理为一个之前,您必须将其解析为实际列表:

import ast

actual_list = ast.literal_eval(your_list[0])

答案 1 :(得分:0)

作为替代方案(虽然正则表达式可能需要调整以供您使用)

import re
pattern = r"\d{2}-[A-Z][a-z]{2}-\d{1,2} \d{2}:\d{2}"
re.findall(ptrn, your_list[0])