Python输入输出-自然语言处理+json格式化
NLP自然语言处理
- 读取文件
- 去除所有标点符号和换行符,并把所有大写变成小写;
- 合并相同的词,统计每个词出现的频率,并按照词频从大到小排序;
- 将结果按行输出到文件 out.txt。
import re
def parse(text):
#使用正则表达式去除text文件内标点符号和换行符,替换为空格,
text = re.sub(r'[^\W]',' ',text)
#转换为小写
text = text.lower()
#生成所有单词的列表。split将输入的字符串分割后为列表
word_list = text.split(' ')
#去除空白单词,https://blog.csdn.net/Jerry_1126/article/details/84640993
#filter方法,若第一个参数为None,则默认去除序列中所有值为假的元素(None、False、0、''、()、[]、{})
word_list = filter(None,word_list)
word_cnt = {
}
'''
>>> word_list = ['xxx','yyy','zzz','xxx','yyy','yyy']
>>> word_cnt = {}
>>> for word in word_list:
... if word not in word_cnt:
... word_cnt[word] = 0
... word_cnt[word] += 1
...
>>> word_cnt.i