我试图用句子分割句子.
words = content.lower().split()
这给了我一些单词列表
'evening,', 'and', 'there', 'was', 'morning--the', 'first', 'day.'
并使用此代码:
def clean_up_list(word_list):
clean_word_list = []
for word in word_list:
symbols = "~!@#$%^&*()_+`{}|\"?><`-=\][';/.,']"
for i in range(0, len(symbols)):
word = word.replace(symbols[i], "")
if len(word) > 0:
clean_word_list.append(word)
我有类似的东西:
'evening', 'and', 'there', 'was', 'morningthe', 'first', 'day'
如果你在列表中看到“morningthe”这个词,它曾经在单词之间有“ – ”.现在,有什么方法可以用“早晨”,“这个”这两个词来分割它们吗?
解决方法:
我建议使用基于正则表达式的解决方案:
import re
def to_words(text):
return re.findall(r'\w+', text)
这会查找所有单词 – 字母字符组,忽略符号,分隔符和空格.
>>> to_words("The morning-the evening")
['The', 'morning', 'the', 'evening']
请注意,如果您循环使用单词,则使用返回生成器对象的re.finditer可能会更好,因为您没有一次存储整个单词列表.