复合数据类型,英文词频统计

作业来源:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE1/homework/2753

列表增删改查:

list = ['yes', 'no', 1000, 2000]
print('列表')
print(list)
list.append('Spike')
print('list1.append(he)')#增加
print(list)
del list[2]
print('del list[1]:')#删除
print(list)
list[2]='go'
print('改:list1[2]=go')#
print(list)
print('查:list1[1]=')#查找
print(list[1])

元组:

增加,修改:元组中的元素值是不允许修改的,但我们可以对元组进行连接组合

'删除:元组不可以删除元素但是可以删除整个元组'

tuple1 =('yes', 'no', 1000, 2000)
print('元组')
print('查:tuple1[0:4]=')
print(tuple1[0:3])

字典的增删改查:

nice ={1:'yes', 2:'no', 3:'1000'}
print('字典')
print(nice)
nice.update({4: '21'})
print('dict[4] = "hello"')#增加
print(nice)
del nice[1]
print('del dict[2]')#删除
print(nice)
print('dict1[4]')#查找
print(nice[4])

集合的增删改查:

nice ={'yes', 'no', '1000'}
print('集合')
print(nice)
nice.add('2000')#增加
print(nice)
nice.discard('1000')#删除
print(nice)
print('\'1000\' in nice','1000' in nice)#查找

 

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

  • 括号
  • 有序无序
  • 可变不可变
  • 重复不可重复
  • 存储与查找方式

 列表:列表是一组有序项目的数字结构,列表的项目应该放在方括号[ ]中,列表是可以被改变和可重复的;按照索引的方式查找通过偏移存储并且元素可以任意类型存在。

 元组:元组与列表十分相似,可重复也是通过偏移的方式进行存储,不过元组是不可变的即是你是不能对元组中的元素进行修改,而且用的是();元组的元素是固定的长度、异构,也是任意嵌套。

 字典:字典使用的是{},字典是无序的,但是可变可重复;使用键-值(key-value)进行存储,查找速度快;字典的key是不能变的,list不能作为key,字符串、元祖、整数等都可以。

 集合:无序不可变,使用([ ]),与字典类似,但只包含键,而没有对应的值;元素可以是列表、元组、字典中的任意一个或多个。

六、词频统计

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

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

    3.对文本进行预处理

    4.分解提取单词 list

    5.单词计数字典 set , dict

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

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

    • 自定义停用词表
    • 或用stops.txt

       8.输出TOP(20)

  • 9.可视化:词云

 

import string
import pandas as pd
def getNumber(x):
    y=x[1]
    return y

file = open('fff.txt','r',encoding='UTF-8').read().lower()
s = "'"
for i in s:
    file = file.replace(s,' ')
song = file.split()
exclude = {'a','the','i','you','and','in','but','not','it','s','if','do','m'}
cun = set(song)-exclude
dis = {}
for i in cun:
    dis[i] = song.count(i)
words = list(dis.items())
words.sort(key=getNumber,reverse=True)
#输出前20
for j in range(20):
    print(words[j])
#保存为csv文件
pd.DataFrame(data=words).to_csv(r'3.csv',encoding='UTF-8')

 

posted @ 2019-03-25 01:17  刘睿智  阅读(153)  评论(0编辑  收藏  举报