1

我只想计算字典中的单词
例如:
有一个文字:
孩子可以通过信用卡再见(支付)。
我想算一下刚付的。
但我的代码很重要(付费)。

import re, sys
d = {}
m = "children can bye (paid) by credit card."
n = m.split()
for i in n:
            d[i] = 0
    for j in n:
            d[j] = d[j] + 1

有什么建议吗?

4

2 回答 2

2

您可以使用以下正则表达式拆分字符串以按非单词字符拆分:

import re
n = re.split('\W+', m)

您可以在此处检查语法。

于 2013-09-17T04:25:30.477 回答
1

您只需要从各个标记中删除标点符号。假设您要删除所有标点符号,请查看string模块。然后(例如),您可以遍历每个标记并删除标点符号。您可以通过一个列表理解来做到这一点:

words = [''.join(ch for ch in token if ch not in string.punctuation) 
         for token in m.split()]

ch这段代码所做的就是遍历每个标记中的每个字符 ( )( 的结果m.split())。它允许所有字符,除了它会删除string.punctuation. 当然,如果您想要一组不同的字符(例如,也许您想允许撇号),您可以定义该组字符并使用它来代替。

于 2013-09-17T04:24:46.480 回答