Python编程入门:英文词频统计

text = "Got tho on super sale. Love it! Cuts my drying time in half Reckon I have had this about a year now,\
        at least 7 months. Works great, I use it 5 days a week, blows hot air, doesnt overheat,\
        isnt to big, came quick, didnt cost much. Get you one, you will like it.The styling tip does not stay on,\
        keeps falling off in the middle of blow drying and then it's too hot to put back"
text = text.lower()
# 将特殊字符替换成为空格
for ch in '!@#$%:^&*()-.;':
    text = text.replace(ch, " ")
# 对字符串通过空格进行分割
words = text.split()
counts = {}

for word in words:
    if word in counts:
        counts[word] = counts[word] + 1
    else:
        counts[word] = 1

items = list(counts.items())
items.sort(key=lambda x: x[1], reverse=True)
# 输出词频统计的结果
for i in range(3):
    word, count = items[i]
    if  i<2:
       print("{0}:{1}".format(word, count))
    else:
       print("{0}:{1}".format(word, count),end="")

要统计英文词频,可以使用Python中的字典数据结构和字符串操作函数。

下面是一个简单的示例代码,用于统计一个英文文本中每个单词出现的次数:

def word_frequency(text):
    # 将文本转换为小写并按空格分割为单词列表
    words = text.lower().split()
    
    # 创建一个空字典用于存储单词及其出现次数
    frequency = {}
    
    # 遍历单词列表
    for word in words:
        # 去除单词中的标点符号
        word = word.strip(".,!?")
        
        # 如果单词已经在字典中,则将其出现次数加1;否则将单词添加到字典中,并将出现次数设为1
        if word in frequency:
            frequency[word] += 1
        else:
            frequency[word] = 1
    
    # 返回字典
    return frequency

# 示例用法
text = "This is a sample text. It contains some words, some of which are repeated."
result = word_frequency(text)
print(result)

运行以上代码,输出结果如下:

{'this': 1, 'is': 1, 'a': 1, 'sample': 1, 'text': 1, 'it': 1, 'contains': 1, 'some': 2, 'words': 1, 'of': 1, 'which': 1, 'are': 1, 'repeated': 1}

可以看到,每个单词及其出现次数被存储在一个字典中。

125jz网原创文章。发布者:江山如画,转载请注明出处:http://www.125jz.com/12276.html

(0)
江山如画的头像江山如画管理团队
上一篇 2023年10月3日 上午10:36
下一篇 2023年10月3日 上午11:21

99%的人还看了以下文章

  • ADODB.Connection ���� ‘800a0e7a’ win7 IIS运行ASP常见问题及解决方法

    在win7系统通过 IIS运行ASP出现以下错误提示: ADODB.Connection 错误 ‘800a0e7a’ 很多人根据错误提示,去查数据库连接代码,其实数据库的连接代码没有错误。 出现ADODB.Connection 错误 ‘800a0e7a’的 原因 是64位Windows7操作系统中,IIS7应用程序池默认没有启用32位应用程序,而我们连接AC…

    2018年6月1日
    3.1K0
  • 第六章 Servlet技术(重点章节)

    学习目标:
    掌握Servlet的概念、特点及生命周期
    掌握Servlet与JSP的区别
    理解Servlet在Web项目中的作用
    掌握Servlet常用对象及其方法

    2018年2月22日
    2.2K0
  • java实现上位机与下位机串口通信实例(含java串口通信jar包下载及代码)

      串口通信在工程应用中很常见。 上位机与下位机 在上位机与下位机通讯过程中常通过有线的串口进行通信,在低速传输模式下串口通信得到广泛使用。 通常上位机指的是PC,下位机指的是单片机或者带微处理器的系统。下位机一般是将模拟信号经过AD采集将模拟量转换为数字量,下位机再经过数字信号处理以后将数字信号通过串口发送到上位机,相反上位机可以给下位机发送一些指令或者信…

    2023年1月7日 编程开发
    1.7K0
  • 输入python显示不是内部命令的原因及解决方法

    问题原因:没有将python的安装路径添加到环境变量中。 解决方法: 首先在桌面上右键点击“此电脑”,选择“属性”,弹出系统界面选择“高级系统设置”,进入系统属性界面后在“高级”选项中选中“环境变量”。 然后在“系统变量”中找到变量Path,双击Path变量进入编辑界面。 接着在编辑环境变量对话框中点击“新建”,添加Python的安装路径,之后一直点确定即可…

    2023年5月18日 编程开发
    8511
  • 第二章 Web技术简介

    1. 掌握HTML 5标记语言
    2. 掌握CSS样式表的使用
    3. 掌握JavaScript脚本语言
    4. 能够使用HTML5+CSS+JS 进行web页面设计

    2018年2月2日
    2.7K0
  • 第2课:编写第一个C语言程序

      用C语言语句编写的程序称为C程序或C源程序。 下面编写第一个C语言程序,这个程序是在Visual C++ 环境下编译通过的。 Microsoft Visual C++(简称Visual C++、MSVC、VS或VC)是微软公司的C++开发工具,具有集成开发环境,可提供编辑C语言,C++以及C++/CLI等编程语言。 【例1.1】用C语言编写一个…

    2020年4月5日
    2.7K0

发表回复

登录后才能评论