Exercise one
苏格拉底是古希腊著名的思想家、哲学家、教育家、公民陪审员。苏格拉底的部分名言被翻译为中文,其部分内容由sgld.txt 给出。
读取文件,请过滤中文逗号、中文句号、中文冒号、中文引号,英文空格、换行符\n 之后,
对其中的内容进行中文分词,在屏幕上显示输出词语出现次数前5的词,用一个中文顿号、分割。
import jieba
with open(r"F:\超文件\the_second_grade_practice_of_python\python二级NO.2练习\Unite_9\sgld.txt","r",encoding="utf-8") as f: #文件打开,with ...as:可以最后自动释放空间;
f1=f.readlines() #readlines():按行为单位,读取整个文件;将每行作为一个字符串元素,返回一个列表;
d={} #创建一个空字典,后续使用
for i in f1:
i=i.replace("\n","") #replace():针对字符串,使用后者代替前者,并返回字符串副本;给自己的建议:一定记得最后的赋值;
for j in ",。:“” ":
i=i.replace(j,"")
s=jieba.lcut(i) #jieba.lcut():精确模式,针对字符串,进行分词,返回一个元素为字符串的列表;
for s1 in s:
d[s1]=d.get(s1,0)+1 #d.get():字典的一个操作函数,s1存在,则返回s1的值,否则:返回0;本行可以熟记: