列表,元组,字典,集合增删改查及遍历:
#列表的增删改查遍历
list1 = list('this is a list')list1.append('!') #末尾增加元素list1.pop(-1) #删除指定index的元素 默认是-1 return被删除元素的值 list1.remove('!')list1[1:5] = []#修改#查找if 'a' in list1: index = list1.index('a') # 查找元素下标#遍历列表方法
for i in list:print ("序号:%s 值:%s" % (list.index(i) + 1, i))
#元组 ,操作和列表类似,但是元组不能修改
#创建tuple1 = ()tuple1 = 1,tuple1 = 1,2,3tuple1 = tuple([1,2,3,4]) #字典的增删改查遍历dict1['key3']='value3' #字典可以自动添加dict1.setdefault('key5','N/A') #如果不存在,就设置默认值del dict1['key3'] #删除 dict1['key1']='new_value_1' #修改dict1['key1'] #查找集合的增删改查遍历
setA = {'a','b','c','d','f','f'}
print(setA) #结果为{'c', 'b', 'f', 'a', 'd'},因为set只会保留不重复数据,且是无序的setA.add('g') #添加元素#setA.remove('g') #删除print([v for v in setA]) #因为set没有索引、没有key,所以不能取单个值,也不能改单个值,也没这个必要。但是可以遍历,使用这种方法也可以做筛选print(sorted(setA)) #set的排序 总结列表,元组,字典,集合的联系与区别:字典和集合是用{},元组是用(),列表是用[],他们用不同的括号来表示数据。
字典和集合已经元组是无序的,列表是有序的。
元组是不可直接改变里面的变量,其他三种结构可以改变里面的变量。
字典是不可以重复的,其他三种结构是可以有重复变量。
import pandas as pd file = open('test.txt','r',encoding='utf8'); text=file.read(); textList=text.split() textDict={} for word in textList: textDict[word.lower()]=textList.count(word) words=list(textDict.items()) words.sort(key=lambda x:x[1],reverse=True) print(words) # 过滤的单词 removeWord=[ 'the','were', 'and','that', 'of','this', 'a','at', 'to','by', 'in','for', 'with', 'their', 'was', 'on' ] i=0 while i< len(words): if words[i][0] in removeWord: #查找单词列表是否在要过滤的单词表中,有的,从单词列表中去掉该单词 words.remove(words[i]) if i!=0: #因为去掉单词后,列表内容会前移一位,所以索引要减一 i=i-1 else: i=i+1 for k in range(20): print(words[k]) pd.DataFrame(data=words).to_csv('big.csv',encoding='utf-8')
生成的云词如下: