Python 如何解析此unicode字符串列表

Python 如何解析此unicode字符串列表,python,unicode,Python,Unicode,我希望将此unicode字符串列表解析为一个表: [u'$760,507,625 (USA) (18 November 2010)', u'$760,505,847 (USA) (14 November 2010)', u'$760,462,559 (USA) (7 November 2010)', u'$760,410,799 (USA) (31 October 2010)', 所以我想要的结果是: [[760507625, 11, 18, 2010, 'USA'], [76050584

我希望将此unicode字符串列表解析为一个表:

[u'$760,507,625 (USA) (18 November 2010)', u'$760,505,847 (USA) (14 November 2010)', u'$760,462,559 (USA) (7 November 2010)', u'$760,410,799 (USA) (31 October 2010)',
所以我想要的结果是:

[[760507625, 11, 18, 2010, 'USA'], 
 [760505847, 11, 7, 2010, 'USA'],
  ....
]
如您所见,格式为[货币、月、日、年、国家]

也许你能给我提供处理这个问题的工具。
我说清楚了吗?非常感谢

我通常的处理方法是使用正则表达式从每行中提取字段,然后为每个字段提取一两行,将其转换为所需的格式。这并不是万无一失的,例如,如果一行中有一个月拼写错误的条目,它就会崩溃,但对于大多数临时任务来说,这已经足够了

#!/usr/bin/env python2.7

import re

data = [u'$760,507,625 (USA) (18 November 2010)',
        u'$760,505,847 (USA) (14 November 2010)',
        u'$760,462,559 (USA) (7 November 2010)',
        u'$760,410,799 (USA) (31 October 2010)',
       'blah']

RE_DATA = re.compile(r'^\$([0-9,]+) \(([A-Z]+)\) \(([0-9]+) ([A-Za-z]+) ([0-9]+)\)$')

MONTHS = {
    'January': 1,
    'February': 2,
    'March': 3,
    'April': 4,
    'May': 5,
    'June': 6,
    'July': 7,
    'August': 8,
    'September': 9,
    'October': 10,
    'November': 11,
    'December': 12
}

for entry in data:
    match = RE_DATA.match(entry)
    if match is None:
        print 'Error! %r did not match pattern' % entry
        continue

    amount, country, day, month, year = match.groups()
    amount = int(amount.replace(',', ''))
    country = str(country)
    day = int(day)
    month = MONTHS[month]
    year = int(year)

    print [amount, month, day, year, country]
印刷品:

[760507625, 11, 18, 2010, 'USA']
[760505847, 11, 14, 2010, 'USA']
[760462559, 11, 7, 2010, 'USA']
[760410799, 10, 31, 2010, 'USA']
Error! 'blah' did not match pattern

告诉别人总是很重要的,包括任何失败尝试的片段,这样他们就能理解你错过了什么。这一点很重要,因为它激励人们回答问题,这一点很重要,因为它使人们更容易给出高质量、相关的答案。就目前的状况而言,这一目标尚未实现。如果您编辑问题,可能会阻止问题被关闭,并且您得到的答案的数量、质量和清晰度也会提高。是的。你是对的。我是Python新手。所以我不知道这次该试什么谢谢!这正是我需要的。FWIW,更容易构建月名目录,等等,你可以从
日历中获得月名列表。month_name
,它还有一个工作日名称列表,并且月名和工作日名称都有缩写形式。您也可以通过使用
datetime().strftime()
来获得这样的列表,但是使用日历模块更干净,IMHO。(我想日历使用了隐藏的日期时间)。这两个模块都是区域设置感知的,非常方便。