set list词频排序java_复合数据类型,英文词频统计(示例代码)

1.列表,元组,字典,集合分别如何增删改查及遍历。

列表:

list1 = ["a", "b", "c", "d"]; #设置列表1

print(list1); #输出列表1

#增

list1.insert(4,‘e‘); #增添元素

print(list1);

#删

list1.pop(3) #删除指定位置元素

print(list1);

#改

list1[0] = ‘q‘ #直接修改位置元素

print(list1)

#查

x = list1.index(‘c‘); #从列表中找出某个值的索引位置

print(x);

#遍历列表中的每一个元素

for i in list1: print(i)

元组:

num1 = (‘a‘, ‘b‘,‘c‘, ‘d‘); #设置元组

num2 = (‘e‘, 1,‘g‘)

num3=num1+num2 #元组不支持修改,但可以通过连接组合的方式进行增加

print(num3)

#查

print (num1[0] ,num2[0])

字典:

num = {‘a‘: 1, ‘b‘: 2, ‘c‘:3} #定义字典

#增

num[‘d‘] = 4 # 添加信息

print(num)

#删

del num[‘d‘] # 删除键 d‘

print(num)

#改

num[‘a‘] = ‘0‘; # 更新a

print(num)

#查

print(num[‘a‘])

20190314150501174575.png

集合:

set={1,2,3} #定义一个集合

#增

set.add(4)

print(set)

#删

set.remove(4)

print(set)

#集合不能进行修改和查找

#遍历

for x in set:

print(x)

2.总结列表,元组,字典,集合的联系与区别。参考以下几个方面:

括号

有序无序

可变不可变

重复不可重复

存储与查找方式

列表

元组

字典

集合

括号

[]

()

{}

set()

有序无序

有序

有序

无序

无序

可变不可变

可变

不可变

可变

不可变

重复不重复

存储方式

3.词频统计

1.下载一长篇小说,存成utf-8编码的文本文件 file

2.通过文件读取字符串 str

3.对文本进行预处理

4.分解提取单词 list

5.单词计数字典 set , dict

6.按词频排序 list.sort(key=lambda),turple

7.排除语法型词汇,代词、冠词、连词等无语义词

自定义停用词表

或用stops.txt

8.输出TOP(20)

exclude={‘is‘,‘the‘,‘and‘,‘i‘,‘you‘,‘in‘,‘but‘,‘not‘,‘with‘,‘by‘,‘its‘,‘for‘,‘of‘,‘an‘,‘to‘,‘a‘,‘he‘,‘him‘,‘was‘,‘it‘,‘that‘,‘her‘} #定义停用词#

#读取a.txt内容#

def gettxt():

sep=".,:;?!-_‘”"

txt=open(‘a.txt‘,‘r‘).read().lower()

for ch in sep :

txt=txt.replace(ch,‘ ‘)

return txt

#获取单词#

bigList=gettxt().split()

print(bigList);

print(‘big:‘,bigList.count(‘big‘))

bigSet=set(bigList)

#过滤单词,包括一些冠词和连词等#

bigSet=bigSet-exclude

print(bigSet)

#单词计数#

bigDict={}

for word in bigSet:

bigDict[word]=bigList.count(word)

print(bigDict)

print(bigDict.items())

word=list(bigDict.items())

#按词频排序#

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

print(word)

#输出频率较高的词语top20#

for i in range(20):

print(word[i])

结果:

20190314150501381615.png

20190314150501545683.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值