如何在python3中准确计算字符串中的一个单词?

时间:2019-03-05 02:13:45

标签: python count

因此,我想准确计算python中“ 100”出现的次数。 我的示例代码:

a = " I love 1000 and 100 dollars."
b = a.count("100")
print(b)

结果是2,但我只想要1。

2
[Finished in 0.1s]

有什么基本的建议吗? 我只是一个初学者,学习python。

2 个答案:

答案 0 :(得分:1)

" I love 1000 and 100 dollars.".split().count('100')

仅供参考,下面是一种方便高效的计算每个单词的方法。

from collections import Counter

Counter("I love 1000 and 100 dollars.".split())

# result: Counter({'I': 1, 'love': 1, '1000': 1, 'and': 1, '100': 1, 'dollars.': 1})

答案 1 :(得分:1)

如果要计算字符串中的子字符串,则正则表达式模块re将非常有用:

import re
len(re.findall(r'\b100\b', a)) # prints 1

len返回re.findall()发现的次数,即1的计数。

100替换为您希望计数的特定子字符串:

b = len(re.findall(r'\bI love\b', a))
>>> b
1

从此答案Find substring in string but only if whole words?中借来的技术