Python 如何在一段文字中提取出全部数字?

如题,数据为:
{'LIE': 1, 'EGY': 45, 'PAR': 21, 'BOL': 17, 'PAK': 43, 'PAN': 11, 'JOR': 3, 'TAW': 71, 'SAL': 19, 'SAF': 45, 'PRK': 2, 'SPN': 50, 'MYA': 22, 'SAU': 30, 'HAI': 18, 'CHL': 37, 'OMA': 2, 'CHN': 43, 'URU': 36, 'THI': 29, 'FIN': 47, 'PHI': 31, 'YEM': 2, 'NIC': 23, 'SNM': 1, 'SYR': 33, 'GUA': 16, 'BEL': 68, 'DEN': 53, 'ROK': 7, 'HUN': 41, 'YUG': 35, 'BUL': 29, 'MNC': 0, 'AFG': 6, 'LBR': 7, 'GRC': 31, 'AND': 0, 'TBT': 0, 'INS': 39, 'MON': 3, 'IND': 59, 'LEB': 19, 'NOR': 55, 'CZE': 62, 'COS': 19, 'DOM': 21, 'LUX': 69, 'ISR': 24, 'PER': 39, 'NEW': 37, 'ETH': 18, 'COL': 24, 'NEP': 4, 'ECU': 23, 'SRI': 42, 'FRN': 69, 'AUS': 51, 'CUB': 44, 'VEN': 34, 'GDR': 6, 'RUM': 33, 'TUR': 33, 'ALB': 9, 'ITA': 69, 'NTH': 67, 'RUS': 34, 'MEX': 43, 'BRA': 49, 'USA': 69, 'SWD': 67, 'SWZ': 68, 'CAN': 66, 'UKG': 70, 'POR': 33, 'POL': 56, 'HON': 13, 'IRQ': 31, 'ICE': 23, 'AUL': 51, 'IRN': 43, 'IRE': 19, 'JPN': 56, 'GFR': 68, 'ARG': 48, 'BHU': 17}
如何将上面出现的所有数字都提取出来?

先用json模块把上面的字符串转换为python的字典a,然后vs = a.values()这个vs里面就是所有的数字组成的list。

如果用正则的话:
import re
s="{'LIE':……}"
vs=re.findall(r'\d+', s)
这里前提是key中没有数字,values全部为数字
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-02-11
图片文字提取大师_V10.08
第2个回答  推荐于2016-05-09
import re
a = [列表]
c = []
for x in a:
c.append(re.findall(r'\d+',x))
第3个回答  2012-02-01
正则表达式更方便
第4个回答  2012-01-31
提取字典的value值
dic = {...}
value = []
for k,v in dic.items():
value.append(v)