我有以下列表:
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']
任何会解决它的人请给我解决方案。
仅循环遍历并检查元素的类型:
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)