山西省太原市全國計算機等級考試Python語言程序設計專項練習(含答案)_第1頁
山西省太原市全國計算機等級考試Python語言程序設計專項練習(含答案)_第2頁
山西省太原市全國計算機等級考試Python語言程序設計專項練習(含答案)_第3頁
山西省太原市全國計算機等級考試Python語言程序設計專項練習(含答案)_第4頁
山西省太原市全國計算機等級考試Python語言程序設計專項練習(含答案)_第5頁
已閱讀5頁,還剩18頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

山西省太原市全國計算機等級考試Python語言程序設計專項練習(含答案)學校:________班級:________姓名:________考號:________

一、單選題(30題)1.表達式eval(‘500//10’)的結果是()。

A.50.0B.50C.500/10D.‘500/10’

2.下列哪個語句在Python中是非法的()。

A.x=y=z=1B.x=(y=z+1)C.x,y=y,xD.x+=y

3.以下關于數(shù)據(jù)維度的描述,錯誤的是()。

A.列表的索引值是大于0小于列表長度的整數(shù)

B.JSON格式可以表示比二維數(shù)據(jù)還復雜的高維數(shù)據(jù)

C.二維數(shù)據(jù)可以看成多條一維數(shù)據(jù)的組合形式

D.CSV文件既能保存一維數(shù)據(jù),也能保存二維數(shù)據(jù)

4.下面代碼的輸出結果是()。x=10whilex:x一=1ifx%2:print(x,end=”)else:pass

A.86420B.975311C.97531D.864200

5.以下代碼的輸出結果是()。print(1.5+2.1==3.6)

A.3.6B.TrueC.1.5+2.1==3.6D.False

6.下列關于Python的描述正確的是()。

A.列表的下標是從1開始的

B.元組的元素值可以修改、刪除、連接

C.字典中的“鍵”只能是整數(shù)、字符串

D.集合分為可變集合和不可變集合,可變集合的元素可以添加、刪除

7.以下關于文件的描述中,錯誤的是()。

A.文件是存儲在輔助存儲器上的一組數(shù)據(jù)序列,可以包含任何數(shù)據(jù)內容

B.可以使用open()打開文件,用close()關閉文件

C.使用read()可以從文件中讀人全部文本

D.使用readlines()可以從文件中讀入一行文本

8.下面不屬于Python的標準庫的是()。

A.osB.sysC.SciPyD.glob

9.下面關于Python中類的繼承,說法錯誤的是()。

A.創(chuàng)建子類時,父類必須包含在當前文件夾且位于子類的前面

B.定義子類時,必須在括號內指明子類所要繼承的父類的名稱

C.如果調用的是繼承的父類中的公有方法,可以在這個公有方法中訪問父類中的私有屬性和私有方法

D.如果在子類中實現(xiàn)了一個公有方法,該方法也能調用繼承的父類中的私有方法和私有屬性

10.下列關于列表的說法正確的是()。

A.列表中的值可以是任何數(shù)據(jù)類型,被稱為元素或項

B.列表的索引序號是從1開始的,以此類推

C.使用append()函數(shù)可以向列表的指定位置插入元素

D.使用remove()函數(shù)可以從列表中刪除元素,但必須知道元素在列表中的位置

11.下列的說法中,不正確的是()

A.迭代器協(xié)議是指:對象必須提供一個next方法

B.list、dict、str雖然是Iterable,卻不是Iterator

C.生成器與迭代器對象的區(qū)別在于:它僅提供next()方法

D.生成器實現(xiàn)了迭代器協(xié)議,但生成器是邊計算邊生成達到節(jié)省內存及計算資源

12.定義學生選修課程的關系模式如下:SC(S#,Sn,C#,Cn,G,Cr)(其屬性分別為學號、姓名、課程號、課程名、成績、學分)該關系可進一步規(guī)范化為()。

A.S(S#,Sn,C#,Cn,Cr),SC(S#,C#,G)

B.S(S#,Sn),C(C#,Cn,Cr),SC(S#,C#,G)

C.C(C#,Cn,Cr),SC(S#,Sn,C#,G)

D.S(S#,Sn),C(C#,Cn),SC(S#,C#,Cr,G)

13.執(zhí)行eval('l1=[5,7,9]')后()

A.[5,7,9]B.l1=[5,7,9]C.異常D.沒有任何返回

14.在Python中,用于數(shù)據(jù)分析的第三方庫是()。

A.OpenCVB.matplotlibC.NumPyD.Scrapy

15.下列選項中不屬于結構化程序設計原則的是()。

A.可封裝B.自頂向下C.模塊化D.逐步求精

16.關系數(shù)據(jù)庫中的鍵是指()。

A.關系的所有屬性B.關系的名稱C.關系的專用保留字D.能唯一標識元組的屬性或屬性集合

17.下面代碼的意義是()。>>>car=’BWM’>>>Id(car)

A.查看變量所占的位數(shù)B.轉換成布爾值C.查看變量在內存中的地址D.把變量中的元素隨機排列

18.用Pyinstaller工具打包Python源文件時一F參數(shù)的含義是()。

A.指定所需要的第三方庫路徑

B.在dist文件夾中只生成獨立的打包文件

C.指定生成打包文件的目錄

D.刪除生成的臨時文件

19.以下程序的輸出結果是()。foriin“miss”: forjinrange(3): print(i,end=‘’) ifi==“i”: break

A.missmissmissB.mmmissssssC.mmmiiissssssD.mmmssssss

20.下面代碼的輸出結果是()。list=[“1”,”3”,”5”]defapp(x):list.append(x)app(”7”)print(list)

A.[’1’,’3’,’5’]B.[’1’,’3’,’5’,’7’]C.[’7’]D.”1,3,5,7”

21.在數(shù)據(jù)管理的3個階段中,數(shù)據(jù)共享最好的是()。

A.人工管理階段B.文件系統(tǒng)階段C.數(shù)據(jù)庫系統(tǒng)階段D.3個階段相同

22.以下程序的輸出結果是()。x=4ca=‘123456’ifstr(x)inca: print(ca.replace(ca[x],str(x-2)))

A.123456B.123426C.5D.2

23.以下保留字不用于循環(huán)邏輯的是()。

A.tryB.elseC.forD.continue

24.下面關于Python中函數(shù)參數(shù)的說法錯誤的是()。

A.在函數(shù)定義時必須固定參數(shù)的數(shù)量

B.使用位置參數(shù)傳參時實參的數(shù)量和順序必須和函數(shù)聲明時的參數(shù)一樣

C.若是參數(shù)有默認值,在調用函數(shù)時沒有給參數(shù)賦值,調用的函數(shù)就會使用這個默認值

D.關鍵字參數(shù)傳參是指在調用函數(shù)時通過參數(shù)名傳遞值

25.設棧與隊列初始狀態(tài)為空。首先A,B,C,D,E依次人棧,再F,G,H,I,J依次入隊;然后依次出棧至棧空,再依次出隊至隊空。則輸出序列為()。

A.F,G,H,I,J,A,B,C,D,E

B.F,G,H,I,J,E,D,C,B,A

C.E,D,C,B,A,J,I,H,G,F(xiàn)

D.E,D,C,B,A,F(xiàn),G,H,I,J

26.關于字典的描述,錯誤的是()。

A.字典的元素以鍵為索引進行訪問

B.字典的一個鍵可以對應多個值

C.字典長度是可變的

D.字典是鍵值對的結合,鍵值對之間沒有順序

27.某完全二叉樹有256個節(jié)點,則該二叉樹的深度為()。

A.7B.8C.9D.10

28.樹的度為3,共有29個節(jié)點,但沒有度為1和2的節(jié)點。則該樹中葉子節(jié)點數(shù)為()。

A.0B.9C.18D.不可能有這樣的樹

29.以下代碼的輸出結果是()。deffibRate(n):ifn<=0:Return-1elifn==1:return-1elifn==2:return1else:L=[1,5]foriinrange(2,n):L.append(L[-1]+L[-2])returnL[-2]%L[-1]print(fibRate(7))A.0.6B.28C.-1D.1

30.假設city.csv文件內容如下:巴哈馬,巴林,孟加拉國,巴巴多斯白俄羅斯,比利時,伯利茲以下代碼的輸出結果是()。f=open(”city.csv”,”r”)ls=f.read().split(”,”)f.close()print(ls)

A.[’巴哈馬’,’巴林’,’孟加拉國’,’巴巴多斯\n白俄羅斯’,’比利時’,’伯利茲’]

B.[’巴哈馬’,’巴林’,’孟加拉國’,’巴巴多斯’,’白俄羅斯’,’比利時’,’伯利茲’]

C.[’巴哈馬,巴林,孟加拉國,巴巴多斯,白俄羅斯,比利時,伯利茲’]

D.[’巴哈馬’,’巴林’,’孟加拉國’,’巴巴多斯’,’\n’,’白俄羅斯’,’比利時’,’伯利茲’]

二、判斷題(10題)31.字典的“鍵”必須是不可變的。

A.是B.否

32.帶有else子句的異常處理結構,如果不發(fā)生異常則執(zhí)行else子句中的代碼。

A.是B.否

33.表達式{1,2}*2的值為{1,2,1,2}。

A.是B.否

34.正則表達式元字符“\d”用來匹配任意數(shù)字字符。

A.是B.否

35.如果僅僅是用于控制循環(huán)次數(shù),那么使用foriinrange(20)和foriinrange(20,40)的作用是等價的。

A.是B.否

36.定義函數(shù)時,即使該函數(shù)不需要接收任何參數(shù),也必須保留一對空的圓括號來表示這是一個函數(shù)。

A.是B.否

37.元組可以作為集合的元素。

A.是B.否

38.在Python中定義類時實例方法的第一個參數(shù)名稱不管是什么,都表示對象自身。

A.是B.否

39.Python集合不支持使用下標訪問其中的元素。

A.是B.否

40.Python標準庫os中的方法startfile()可以啟動任何已關聯(lián)應用程序的文件,并自動調用關聯(lián)的程序。

A.是B.否

三、填空題(10題)41.已知x={1:2,2:3},那么表達式x.get(3,4)的值為____。

42.表達式'helloworld,helloweveryone'.replace('hello','hi')的值為________________________。

43.Python運算符中用來計算集合并集的是_______。

44.Python標準庫____________中提供了計算MD5摘要的方法md5()。

45.使用pip工具在線升級科學計算擴展庫numpy的完整命令是__________。

46.Python語句list(range(1,10,3))執(zhí)行結果為___________________。

47.表達式int(4**.)的值為__________。

48.已知有列表x=[[1,2,3],[4,5,6]],那么表達式[[row[i]forrowinx]foriinrange(len(x[0]))]的值為___________________________。

49.Python語句''.join(list('helloworld!'))執(zhí)行的結果是____________________。

50.已知x,y=map(int,['1','2']),那么表達式x+y的值為_______。

四、操作題(3題)51.考生文件夾下存在3個Python源文件,分別對應3個問題;1個文本文件,作為本題目輸入數(shù)據(jù),請按照源文件內部說明修改代碼,實現(xiàn)以下功能:

《賣火柴的小女孩》是丹麥童話故事作家安徒生的一篇童話故事,發(fā)表于1846年。主要講了一個賣火柴的小女孩在富人闔家歡樂、舉杯共慶的大年夜凍死在街頭的故事。這里給出《賣火柴的小女孩》的一個網(wǎng)絡版本文件,文件名為“小女孩.txt”。問題1:在PY301—1.py文件中修改代碼,對“小女孩.txt”文件進行字符頻次統(tǒng)計,輸出頻次最高的中文字符(不包含標點符號)及其頻次,字符與頻次之間采用英文冒號”:”分隔,將輸出結果保存在考生文件夾下,命名為"PY301—1.txt"。示例格式如下:的:83

試題程序:#以下代碼為提示框架

#請在…處使用一行或多行代碼替換

#請在________處使用一行代碼替換

#注意:提示框架代碼可以任意修改,以完成程序功能為準

fo=open(”PY301—1.txt”,”w”)

d={}

fo.write(”{}:{}”.format(__________))

fo.close()問題2:在PY301—2.py文件中修改代碼,對“小女孩.txt”文件進行字符頻次統(tǒng)計,按照頻次由高到低,輸出前10個頻次最高的字符,不包含回車符,字符之間無間隔,連續(xù)輸出,將輸出結果保存在考生文件夾下,命名為“PY301—2.txt”。示例格式如下:,的一…(后略,共10個字符)

試題程序:

#以下代碼為提示框架

#請在…處使用一行或多行代碼替換

#注意:提示框架代碼可以任意修改,以完成程序功能為準

fo=open(”PY301一2.txt”,“w”)d={}ls=list(d.items())

ls.sort(key=lambdax:x[1],reverse=True)#此行可以按照詞頻由高到低排序

問題3:在PY301一3.py文件中修改代碼,對“小女孩.txt”文件進行字符頻次統(tǒng)計,將所有字符按照頻次從高到低排序,字符包括中文、標點、英文等符號,但不包含空格和回車。將排序后的字符及頻次輸出到考生文件夾下,文件名為“小女孩一頻次排序.txt”。字符與頻次之間采用英文冒號”:”分隔,各字符之間采用英文逗號”,”分隔,參考CSV格式,最后無逗號,文件內部示例格式如下:

著:30,那:29,火:29

試題程序:

#以下代碼為提示框架

#請在…處使用一行或多行代碼替換

#注意:提示框架代碼可以任意修改,以完成程序功能為準

d={}

ls=list(d.items())

ls.sort(key=lambdax:x[1],reverse=True)}}#此行可以按照詞頻由高到低排序

52.考生文件夾下存在一個Python源文件“PY301.py”,請按照文件內說明修改代碼,實現(xiàn)以下功能。愷撒密碼是一種非常古老的加密算法,相傳當年愷撒大帝行軍打仗時為了保證自己的命令不被敵軍知道,它采用了替換方法將信息中的每一個英文字母循環(huán)替換為字母表序列中該字母后面的第三個字母,即循環(huán)后三位,對應關系如下。原文:ABCDEFGHIJKLMNOPQRSTUVWXYZ密文:DEFGHIJKLMNOPQRSTUVWXYZABC原文字母P,其密文字母C滿足如下條件。C=(P+3)mod26解密方法反之,滿足如下條件。P=(C-3)mod26愷撒密碼包括加密算法和解密算法兩個部分。愷撒密碼的加密算法程序首先接收用戶輸入的文本,然后對字母a?z和字母A?Z按照密碼算法進行轉換,同時輸出。其他非英文字母原樣輸出。試題程序:#以下代碼為提示框架#請在...處使用一行或多行代碼替換#注意..提示框架的代碼可以任意修改,以完成程序功能為準intxt=input(“請輸入明文:")

53.考生文件夾下存在一個文件PY103.py,請寫代碼替換橫線,不修改其他代碼,實現(xiàn)以下功能:使用循環(huán)輸出從1到50之間的奇數(shù)。

試題程序:

#請在_____處使用一行代碼或表達式替換

#注意:請不要修改其他已給出代碼______whilecount<50:

ifcount%2==0:

print(count,end=”,”)

參考答案

1.B“x//y”是指x與y的整數(shù)商,即不大于x與y之商的最大整數(shù)。這里,500//10的結果為50,由于加了單引號,因此結果為字符串類型。eval()函數(shù)將去掉字符串最外側的引號,并按照Python語句方式執(zhí)行去掉引號后的字符內容。本題選擇B選項。

2.B賦值運算的一般形式:變量=表達式,左邊只能是變量。A選項是連續(xù)賦值,C選項是序列賦值,D選項可以寫為x=x+y。本題選擇B選項。

3.A列表的索引值也可以是負整數(shù),如1[-1]就代表列表1的最后一個元素。本題選擇A選項。

4.Cwhile條件為真時進入循環(huán)體,執(zhí)行循環(huán)體中的內容。如果x的值為偶數(shù)則if條件為假,不執(zhí)行任何操作,為奇數(shù)則if條件為真,輸出該奇數(shù);進入下一次循環(huán),判斷while條件,判斷是否進入循環(huán)體,執(zhí)行循環(huán)體中的代碼。后面的操作類似,直到while條件不滿足。經(jīng)過一系列的運算,輸出結果為:97531。

5.B“1.5+2.1”表達式的結果與3.6比較是否相等,返回的結果為布爾值,即True或False,結果相等,所以代碼輸出的結果應為True。

6.D列表的下標是從0開始的;元組的元素值可以刪除、連接,但不能被修改;字典中的“鍵”可以是整數(shù)或者字符串,但也可以是函數(shù)、元組、類等任意不可變類型。

7.D文件是存儲在輔助存儲器上的一組數(shù)據(jù)序列,可以包含任何數(shù)據(jù)內容。A項正確??梢允褂胦pen()打開文件,用close()關閉文件,B項正確。在Python語言中,文件讀取方法有(設f代表文件變量):\nf.read():從文件中讀入整個文件內容。\nf.readline():從文件中讀入一行內容。\nf.readlines():從文件中讀入所有行,以每行為元素形成一個列表。\nf.seek():改變當前文件操作指針的位置。C項正確。本題選擇D選項。

8.CSciPy是Python數(shù)據(jù)分析方向的第三方庫。本題選擇C選項。

9.D在Python類的繼承中,如果調用的是繼承父類的公有方法,可以在公有方法中訪問父類中的私有屬性和私有方法;但是如果子類中實現(xiàn)了一個公有方法,那么這個方法是不能夠調用繼承父類中的私有方法和私有屬性的,所以D選項錯誤。

10.A列表的索引序號是從0開始的,以此類推;使用append()函數(shù)可以向列表插入元素,但只能插入到列表的末尾;使用remove(x)函數(shù)是將列表中出現(xiàn)的第一個x元素刪除。

11.C

12.B關系SC的主鍵為復合鍵(學號,課程號),但明顯存在課程號→課程名,課程號→學分等,存在非主屬性對主屬性的部分依賴。對關系SC進行如下的分解,就可以消除對非主屬性的部分依賴,滿足第二范式:S(S#,Sn),C(C#,Cn,Cr),SC(S#,C#,G)。本題選擇B選項。

13.C

14.CA選項是Python計算機視覺方面的庫,B選項是Python數(shù)據(jù)可視化方面的庫,D選項是Python網(wǎng)絡爬蟲領域的庫。本題選擇C選項。

15.A結構化程序設計的思想包括自頂向下、逐步求精、模塊化、限制使用goto語句,本題選擇A選項。

16.D在關系(二維表)中凡是能唯一標識元組的最小屬性集稱為該關系的鍵或者碼。

17.Cid(x)是Python中的內置函數(shù),用來查看變量在內存中的地址。

18.B一F是指在dist文件夾中只生成獨立的打包文件(即exe文件),所有的第三方依賴、資源和代碼均打包進此exe中。

19.B外層for循環(huán)依次將字符串“mlss”中的字符賦給變量i,內層for控制循環(huán)3次,注意是先執(zhí)行print再判斷if條件,輸出第一個i后,碰到if判斷條件,當i==“i”時退出內層循環(huán),所以結果為mmmlssssss。本題選擇B選項。

20.Bappend()是向列表元素的結尾增加元素。

21.C數(shù)據(jù)管理發(fā)展至今已經(jīng)歷了\n3個階段:人工管理階段、文件系統(tǒng)階段及數(shù)據(jù)庫系統(tǒng)階段。最后一個階段結構簡單,使用方便,邏輯性強,物理性少,在各方面的表現(xiàn)都最好,一直占據(jù)數(shù)據(jù)庫領域的主導地位,本題選擇C選項。

22.Bstr(4)=‘4’,此字符在字符串ca中,滿足if條件,執(zhí)行輸出語句。ca.replace(ca[4],str(4-2))是指返回字符串ca副本,ca[4]是指字符串中序號為4的字符‘5’,str(4-2)返回字符‘2’,也就是用字符‘2’來替換字符‘5’。本題選擇B選項。

23.A用于循環(huán)邏輯的保留字:while、for、else、break、continue。try用于捕捉異常。

24.A在Python中,在函數(shù)定義時是可以設計可變數(shù)量參數(shù)的,通過在參數(shù)前加星號(*)實現(xiàn)。可變參數(shù)在定義時只有兩種變現(xiàn)形式:*param和**param,前者表示可以接受多個位置參數(shù)收集的實參組成一個元組,后者表示可以接收多個關鍵字參數(shù)收集的實參名和值組成一個字典。

25.D棧稱為“后進先出”表或“先進后出”的線性表;隊列稱為“先進先出”或“后進后出”的線性表。A,B,C,D,E依次入棧,則依次出棧順序為E,D,C,B,A;F,G,H,I,J依次入隊,則依次出隊順序為F,G,H,I,J。故輸出順序為E,D,C,B,A,F(xiàn),G,H,I,J。

26.B在Python中,字典是存儲可變數(shù)量鍵值對的數(shù)據(jù)結構,通過字典類型實現(xiàn)映射,一個鍵對應一個值,鍵必須是唯一的,且必須是不可變數(shù)據(jù)類型,值可以是任何數(shù)據(jù)類型。字典具有和集合類似的性質,即鍵值對之間沒有順序且不能重復。字典可以通過”字典[’鍵’]”的形式訪問對應的元素,即以鍵為索引進行訪問。故描述錯誤的是B項。

27.C

28.D樹的度為3,即樹中只存在度為0、1、2、3的結點,假設葉子結點數(shù)為n,由于沒有度為1和2的結點,則度為3的結點數(shù)為29-\nn,根據(jù)樹中的結點數(shù)=樹中所有結點的度之和+1,得3x(29-n)+0x1+0x2+nx0+\nl=29,得出的n不為整數(shù),因此不存在這樣的樹。本題選擇D選項。

29.B將實參7傳遞給函數(shù)形參變量n,之后進入多分支結構,依次判斷后,執(zhí)行else后面的語句。for語句為foriin\r\nrange(2,7),i從2依次變化到6,循環(huán)5次,將L[-1]+L[-2]的值通過append()方法加入列表L中。當i=2時,L[-1]+L[-2]=5+1=6,將6添加到列表[中,此時L=[1,5,6];當i=3時,L[-1]+L[-2]=6+5=11,將11添加到列表L中,此時L=[l,5,6,ll];當i=4時,L[-1]+L[-2]=11+6=17,將17添加到列表L中,此時L=[l,5,6,ll,17];當i=5時,L[-1]+L[-2]=17+11=28,將28添加到列表L中,此時L=\r\n[1,5,6,11,17,28];當i=6時,L[-1]+L[-2]=28+17=45,將45添加到列表L中,此時L=\r\n[1,5,6,11,17,28,45]。最后L[-2]%L[-1]=28%45=28,故程序輸出28。本題選擇B選項。

30.A在Python中,split()方法通過指定分隔符對字符串進行切片,返回分隔后的字符串列表。以split(”,”)方法從CSV文件中獲得內容時,無法去除換行符?!桶投嗨梗躰白俄羅斯’作為一個列表元素出現(xiàn),所以ls=[’巴哈馬’,’巴林’,’孟加拉國’,’巴巴多斯\n白俄羅斯’,’比利時’,’伯利茲’],最后輸出列表。本題選A選項。

31.Y

32.Y

33.N

34.Y

35.Y

36.Y

37.Y

38.Y

39.Y

40.Y

41.4

42.'hiworld,hiweveryone'

43.|

44.hashlib

45.pipinstall--upgradenumpypipinstall--upgradenumpy

46.[1,4,7]

47.

48.[[1,4],[2,5],[3,6]]

49.'helloworld!'

50.3

51.(1)fi=open("小女孩.txt","r")\r\nfo=open(”PY301—1.txt”,”w”)\r\ntxt=fi.read()\r\nd={}\r\nexclude=",。???、()【】<>《》=:+-*-“”…"\r\nforwordintxt:\r\n

ifwordinexclude:\r\n

continue\r\n

else:\r\n

d[word]=d.get(word,0)+1\r\nls=list(d.items())\r\nls.sort(key=lambdax:x[1],reverse=True)\r\n

fo.write(”{}:{}”format(ls[0][0],ls[0][1]))\r\n

fo.close()\r\n

(2)fi=open("小女孩.txt","r")\r\n

fo=open(”PY301—2.txt”,”w”)\r\n

txt=fi.read()\r\n

d={}\r\n

forwordintxt;\r\n

d[word]=d.get(word,0)+1\r\ndeld["\\n"]\r\n

ls=list(d.items())\r\n

ls.sort(key=lambdax:x[1],reverse=True)#此行可以按照詞頻由高到低排序\r\n

foriinrange(10);\r\n

fo.write(ls[i][0])\r\n

fi.close()\r\n

fo.close()

(3)fi=open("小女孩.txt","r")\r\nfo=open(小女孩-頻次排序。txt","w")\r\ntxt=fi.read()\r\nd={}\r\nforwordintxt\r\nd[word]=d.get(word,0)+1\r\ndeld[""]\r\ndeld["\\n"]\r\nls=list(d.items())\r\nls.sort(key=lambdax:x[1],reverse=True)#此行可以按照詞頻由高到低排序\r\nforiinrange(len(ls)):\r\nls[i]="{}:{}".format(ls[i][0],ls[i][1])\r\nfo.write(",".join(ls))\r\nfi.close()\r\nfo.close()(1)首先使用open()函數(shù)打開文件“小女孩.txt”,把文件的內容通過read()方法保存到變量txt中;定義一個字符串變量exclude用來存放標點符號。然后用for循環(huán)遍歷txt中的每個字符(word),并使用if條件進行判斷,若該字符在變量exclude中,說明該字符為標點符號,跳出該循環(huán);否則將該字符作為字典d中的一個鍵,該鍵所對應的值置為1,在后面循環(huán)中只要遍歷的字符與該鍵相同,就將該鍵對應的值加1。\r\n

ls=list(d.it

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論