python 文本单词提取和词频统计的实例

yipeiwu_com6年前Python基础

这些对文本的操作经常用到, 那我就总结一下。 陆续补充。。。

操作:

strip_html(cls, text) 去除html标签

separate_words(cls, text, min_lenth=3) 文本提取

get_words_frequency(cls, words_list) 获取词频

源码:

class DocProcess(object):

 @classmethod
 def strip_html(cls, text):
  """
   Delete html tags in text.
   text is String
  """
  new_text = " "
  is_html = False
  for character in text:
   if character == "<":
    is_html = True
   elif character == ">":
    is_html = False
    new_text += " "
   elif is_html is False:
    new_text += character
  return new_text

 @classmethod
 def separate_words(cls, text, min_lenth=3):
  """
   Separate text into words in list.
  """
  splitter = re.compile("\\W+")
  return [s.lower() for s in splitter.split(text) if len(s) > min_lenth]

 @classmethod
 def get_words_frequency(cls, words_list):
  """
   Get frequency of words in words_list.
   return a dict.
  """
  num_words = {}
  for word in words_list:
   num_words[word] = num_words.get(word, 0) + 1
  return num_words

以上这篇python 文本单词提取和词频统计的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python continue语句用法实例

Python continue语句用法实例

Python使用 continue 语句跳出循环,而break跳出整个循环。continue 语句用来告诉Python跳过当前循环的剩余语句,然后继续进行下一轮循环。continue语句...

python实现发送form-data数据的方法详解

python实现发送form-data数据的方法详解

本文实例讲述了python实现发送form-data数据的方法。分享给大家供大家参考,具体如下: 源代码 -----------------------------2793612435...

浅谈Python2.6和Python3.0中八进制数字表示的区别

在Python2.x中表示八进制的方式有两种:以'0'开头和以'0o'(字母o)开头:   Python2.7中: >>> 0100 64 >>&g...

python生成器的使用方法

什么是生成器?生成器是一个包含了特殊关键字yield的函数。当被调用的时候,生成器函数返回一个生成器。可以使用send,throw,close方法让生成器和外界交互。 生成器也是迭代器,...

Python线性拟合实现函数与用法示例

Python线性拟合实现函数与用法示例

本文实例讲述了Python线性拟合实现函数与用法。分享给大家供大家参考,具体如下: 1. 参考别人写的: #-*- coding:utf-8 -*- import math impo...