首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Hamlet单词统计

《Python数据处理编程》

学生实验(项目)报告

一、基本信息

二、实验目的

使学生学掌握Python的循环、选择控制结构;掌握Python的基础的数据类型

三、实验步骤(及实验数据)

步骤:

1.打开文件:

f = open(filename,'r')

2.切割为列表格式:

for line in f:

words=line.strip().split(" ")

3.遍历统计:

counts={}

for word in words:

counts[word]=counts.get(word,0)+1

4.转换格式,方便打印,将字典转换为列表:

countsList=list(counts.items())

5.按次数从大到小排序:

countsList.sort(key=lambda x:x[1], reverse=True)

6.打印排名前200的高频词:

for i in range(200):

word,count=countsList[i]

print(word,count)

1.defgetText(path):

2.'''

3.根据路径获取文件的内容,并将文件中的字母转换成小写

4.同时用空格代替特殊的字符

5.'''

6.text = open(path,'r').read()

7.#将文本的英文字母全部转换成小写的

8.text = text.lower()

9.#用空格代替文本中出现的特殊符号

10.forchin'!"#$%&()*+,-_/:;?@[\\]^.{|}~':

11.text = text.replace(ch," ")

12.returntext

13.#存放文件的路径

14.#路径的名称一定要手动自己输入,否则会报错

15.#绝对路径

16.path ='C:/Users/Desktop/hamlet.txt'

17.#如果txt文件与py文件在同一个目录下就可以直接用文件名

18.#相对路径

19.#path = 'hamlet.txt'

20.hamletTxt = getText(path)

21.words = hamletTxt.split()

22.#定义字典类型去存储文字和文字出现的次数

23.counts = {}

24.forwordinwords:

25.counts[word] = counts.get(word,) +1

26.items = list(counts.items())

27.#根据iems的第二个值进行从大到小的排序

28.items.sort(key=lambdax:x[1],reverse=True)

29.foriinrange(10):

30.word,count = items[i]

31.#左对齐,占位10位,填充字符为空格

32.print("".format(word,count))

四、实验结果分析与总结

从中了解了Python选择控制结构;对Python的选择控制结构很是感兴趣,也掌握许多Python的基础的数据类型。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190712A0RB3T00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券