我编写了这个程序来编目和枚举文本文档中的单词.如果我不必单独列出所有可能的标点符号,代码就会非常整齐string.translate()......是否有可能,而不是排除特定情况,只允许字母(也许是数字)字符?
from sys import argv
script_, filename = argv
bang = open(filename, 'r+')
words = bang.read()
words = words.translate(None, ',')
words = words.translate(None, '"')
words = words.translate(None, '.')
words = words.translate(None, '...')
words = words.translate(None, '?')
words = words.translate(None, '!')
words = words.translate(None, ';')
words = words.translate(None, '-')
words = words.translate(None, '\'')
words = words.translate(None, '.\'')
words = words.translate(None, '(')
words = words.translate(None, ')')
words = words.translate(None, ':')
words = str(words)
words = words.lower()
liste = words.split()
sorte = sorted(liste)
i = 0
f = 'nullooosdfgkjlkjasdihaiwuehlfkj898'
z = 1
w = 0
for wordss in sorte:
if f == wordss:
z += 1
w += 1
elif f != wordss:
w += 1
print "-", z
z = 1
i += 1
print "%d. %s" % (i, wordss),
f = wordss
print "\n\n word count - %d\n" % w
Run Code Online (Sandbox Code Playgroud)
我想在文本文档中列出单词
这个算法怎么样?拆分空格上的文本,然后删除标点符号.
>>> text = "'I wonder how many miles I've fallen by this time?' she said aloud."
>>> import string
>>> words = [x.strip(string.punctuation) for x in text.split()]
>>> words
['I', 'wonder', 'how', 'many', 'miles', "I've", 'fallen', 'by', 'this', 'time', 'she', 'said', 'aloud']
Run Code Online (Sandbox Code Playgroud)
请参阅此类应对措辞,例如不要.所以,你可以区分我们的人.
| 归档时间: |
|
| 查看次数: |
4389 次 |
| 最近记录: |