从清单中分类金额清单和货币清单代码

问题描述 投票:-3回答:1

我有以下列表:

list_a = ['USD', 'Notional Amount:', 'USD', '50,000,000.00', 'KRW', 'Notional Amount:', 'KRW', '53,585,000,000']

list_a包括货币代码(如“ usd”)和金额(如50,000,000)。通过使用python,我想分类以下内容:

am_list = [50000000,53585000000]
cu_list = ['USD','USD','KRW' 'KRW']

任何会解决它的人请给我解决方案。

python regex
1个回答
1
投票

仅循环遍历并检查元素的类型:

import re

list_a = ['USD', 'Notional Amount:', 'USD', '50,000,000.00', 'KRW', 'Notional Amount:', 'KRW', '53,585,000,000']

am_list  = []
cu_list  = []
for element in list_a:
    # if element is number like combination of "number" and "," and "."
    if re.match('^[\d\.,]+$', element):
        am_list.append(element)
    # curency symble 2 or 3 letters
    if re.match('^[A-Z]{2,3}$', element):
        cu_list.append(element)

print(am_list) # ['50,000,000.00', '53,585,000,000']
print(cu_list) # ['USD', 'USD', 'KRW', 'KRW']

如果您要确保它是一个如下所示的有效金额:'50,000,000.00', '50.00', '50,000.00'

   re.match('^(\d+,)*\d+(\.\d+)?$', element)
© www.soinside.com 2019 - 2024. All rights reserved.