从Python中的字符串中提取数字

2024-03-29 07:33:11 发布

您现在位置:Python中文网/ 问答频道 /正文

我是新来的Python我有一个字符串,我想从字符串中提取数字。例如:

str1 = "3158 reviews"
print (re.findall('\d+', str1 ))

输出是['4', '3']

我只想得到3158,最好是一个整数,而不是列表。


Tags: 字符串re列表数字整数reviewsprintfindall
3条回答

您可以使用str.isdigit方法通过数字来filter字符串

>>> int(filter(str.isdigit, str1))
3158

这个代码工作正常。肯定还有其他问题:

>>> str1 = "3158 reviews"
>>> print (re.findall('\d+', str1 ))
['3158']

你的正则表达式看起来很正确。你确定你没有弄错变量名吗?在上面的代码中,您将total_hotel_reviews_stringstr混合在一起。

>>> import re
>>> s = "3158 reviews"
>>> print re.findall("\d+", s)
['3158']

相关问题 更多 >