以简单的方式从python字符串中提取数字
发布于 2021-01-29 18:44:08
例如,我有一个存储数字和单位的字符串
x= '$120'
y = ' 90 Degrees F'
banana = '200 kgm'
orange = '300 gm'
total_weight = banana + orange/1000
例如,我想添加权重
total_weight = 200 + 300/1000
谢谢!
我试图提取数字只是为了对它们进行一些操作……最简单的方法是什么?我只处理这两种格式,即数字位于字符串的开头或结尾。
关注者
0
被浏览
149
1 个回答
-
从字符串中提取数字的最简单方法是使用正则表达式和
findall
。>>> import re >>> s = '300 gm' >>> re.findall('\d+', s) ['300'] >>> s = '300 gm 200 kgm some more stuff a number: 439843' >>> re.findall('\d+', s) ['300', '200', '439843']
可能您需要更复杂的东西,但这是一个很好的第一步。
请注意,您仍然必须调用
int
结果以获取正确的数字类型(而不是另一个字符串):>>> map(int, re.findall('\d+', s)) [300, 200, 439843]