1.列表,元組,字典,集合分別如何增刪改查及遍歷。python
(1)列表之增:append(增補)直接把新數據放到列表的最後一項。數組
insert(插入)比append更靈活,能夠插到任何app
extend能夠將一個集合中的元素一一添加到列表中ide
(2)列表之刪:remove經過.remove()刪除指定內容,不能直接靠下標實現刪除。工具
pop經過下標來刪除,而且能夠返回這個刪除的元素。this
(3)列表之改:直接對指定下標的元素賦值便可
編碼
(4)列表之查:in/not in/index/count
spa
元祖:元祖沒法進行增刪改。code
(1)元祖之查:index /countblog
字典:
(1)字典之增:直接經過鍵值對賦值便可添加。
(2)字典之刪:pop經過下標來刪除對應的鍵值對。
(3)字典之改:直接對已有的鍵值對進行賦值。
(4)字典之查:print(Dict['time']) # 直接查詢'time'對應的值,此種方式若該key不存在,則報錯
print(Dict.get('time')) # 功能同上,但若該key不存在會返回None,而不是報錯
(5)字典之遍歷:
print(Dict.keys()) # 遍歷key.
print(Dict.values())
# 遍歷value.
print(Dict.items()) # 遍歷鍵值對.
集合:
(1)集合之增:s.add('新增key'),
新增的元素也許會在集合內的任何位置,每次執行結果也不盡相同!
(2)集合之刪:
s.pop() # 刪除首個元素 誰在最前面刪除誰
2.總結列表,元組,字典,集合的聯繫與區別
列表的特色就是:可重複,類型可不一樣。類型不一樣也是跟數組最本質的區別了。列表用「[]」表示。有序。
元組和列表在結構上沒有什麼區別,惟一的差別在於元組是隻讀的,不能修改。元組用「()」表示。有序。
字典鍵值對用冒號分割,而各個對用逗號分割,全部這些都包括在花括號中。鍵/值對是無序的。
集合只包含鍵,而沒有對應的值,包含的數據不重複且無序。
3.詞頻統計
1.下載一長篇小說,存成utf-8編碼的文本文件 file
2.經過文件讀取字符串 str
3.對文本進行預處理
4.分解提取單詞 list
5.單詞計數字典 set , dict
6.按詞頻排序 list.sort(key=lambda),turple
7.排除語法型詞彙,代詞、冠詞、連詞等無語義詞
f = open('novel.txt','r', encoding='UTF-8') str = f.read() f.close() text=str.lower() sep = ",.!?—" for s in sep: text = text.replace(s,' ') text = text.split(); dict={} for word in text: dict[word] = text.count(word) exclude={'the','i','mr','but','by','said','be','were','which','and','of','to','a','in','was','she','her','had','that','it','with','from','which','this','an','on','he','for','you','as','his','not','at','mrs','my','is','there','who','have'}#定義數組 for i in exclude: if i in dict.keys(): dict.pop(i) word=list(dict.items()) word.sort(key=lambda x:x[1],reverse=True) print(word) import pandas as pd pd.DataFrame(data=word).to_csv('novel.csv',encoding='utf-8')
8.輸出TOP(20)
排序好的單詞列表word保存成csv文件
import pandas as pd
pd.DataFrame(data=word).to_csv('big.csv',encoding='utf-8')
線上工具生成詞雲:
https://wordart.com/create