黑龍江省雙鴨山市全國計(jì)算機(jī)等級考試Python語言程序設(shè)計(jì)預(yù)測試題(含答案)_第1頁
黑龍江省雙鴨山市全國計(jì)算機(jī)等級考試Python語言程序設(shè)計(jì)預(yù)測試題(含答案)_第2頁
黑龍江省雙鴨山市全國計(jì)算機(jī)等級考試Python語言程序設(shè)計(jì)預(yù)測試題(含答案)_第3頁
黑龍江省雙鴨山市全國計(jì)算機(jī)等級考試Python語言程序設(shè)計(jì)預(yù)測試題(含答案)_第4頁
黑龍江省雙鴨山市全國計(jì)算機(jī)等級考試Python語言程序設(shè)計(jì)預(yù)測試題(含答案)_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

黑龍江省雙鴨山市全國計(jì)算機(jī)等級考試Python語言程序設(shè)計(jì)預(yù)測試題(含答案)學(xué)校:________班級:________姓名:________考號:________

一、單選題(30題)1.下面關(guān)于Python中模塊導(dǎo)入的說法錯(cuò)誤的是()。

A.Python中,可以使用import語句將一個(gè)源代碼文件作為模塊導(dǎo)入

B.在系統(tǒng)導(dǎo)入模塊時(shí),會創(chuàng)建一個(gè)名為源代碼的文件的對象,該對象引用模塊的名字空間,即可通過這個(gè)對象訪問模塊中的函數(shù)和變量

C.import語句可在程序的任何位置使用,可以在程序中多次導(dǎo)入統(tǒng)一模塊,每次導(dǎo)入該模塊時(shí)都會將該模塊中的代碼執(zhí)行一次

D.模塊導(dǎo)入時(shí)可以使用as關(guān)鍵字來改變模塊的引用對象名字

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

A.tryB.elseC.forD.continue

3.如果文件a.txt在目錄’C:\\A’下,執(zhí)行以下代碼會發(fā)生什么操作?()importosos.rmdir(r'C:\\A’)

A.刪除文件夾A,保留文件a.txt

B.刪除文件夾A和文件a.txt

C.刪除文件a.txt,保留文件夾A

D.OSError

4.以下關(guān)于Python的return語句的描述中,正確的是()。

A.函數(shù)只能返回一個(gè)值

B.函數(shù)必須有return語句

C.函數(shù)可以沒有return語句

D.函數(shù)中最多只有一個(gè)return語句

5.下面代碼的輸出結(jié)果是()。deffun(x,y,z):u=x+y—zprint(u)fun(1+2j,5,4一1j)

A.NameErrorB.(2+3j)C.2D.3j

6.在讀寫文件之前,打開文件需要使用的函數(shù)是()。

A.read()B.fopen()C.open()D.CFile()

7.以下程序的輸出結(jié)果是()。foriinrange(3): forjin“dream”: ifj==“e” continue print(j,end=“”)

A.dramdramdramB.drdrdrC.dreamdreamdreamD.dream

8.以下關(guān)于Python函數(shù)的描述中,正確的是()。

A.函數(shù)eVal()可以用于數(shù)值表達(dá)式的求值,如eval("2*3+1”)

B.Python中,def和return是函數(shù)必須使用的保留字

C.Pythcm函數(shù)定義中沒有對參數(shù)指定類型,這說明參數(shù)在函數(shù)中可以當(dāng)作任意類型使用

D.—個(gè)函數(shù)中只允許有一條return語句

9.Is=[2,“apple”,[42,“yellow”,“misd”],1.2],表達(dá)式ls[2][-1][2]的結(jié)果是()。

A.mB.iC.sD.d

10.Python中匿名函數(shù)的關(guān)鍵字是()。

A.lambdaB.globalC.withD.pass

11.執(zhí)行以下程序,導(dǎo)致輸出”輸入有誤”的輸入選項(xiàng)是()。try:ls=eval(input())*2print(ls)except:print(’輸入有誤’)

A.’aa’B.’12’C.aaD.12

12.以下不屬于Python數(shù)據(jù)分析領(lǐng)域第三方庫的是()。

A.scrapyB.numpyC.lmndasD.matplotlib

13.Python中文件的打開模式不包含()。

A.'a'B.'b'C.'c'D.'+'

14.以下程序的輸出結(jié)果是()。sum=1foriinrange(1,11):sum+=iprint(sum)

A.1B.56C.67D.56.0

15.下面敘述中錯(cuò)誤的是()。

A.軟件測試的目的是發(fā)現(xiàn)錯(cuò)誤并改正錯(cuò)誤

B.對被調(diào)試的程序進(jìn)行“錯(cuò)誤定位”是程序調(diào)試的必要步驟

C.程序調(diào)試通常也稱為Debug

D.軟件測試應(yīng)嚴(yán)格執(zhí)行測試計(jì)劃,排除測試的隨意性

16.以下程序的輸出結(jié)果是()。s=[4,2,9,1]s.insert(3,3)print(s)

A.[4,2,9,1,2,3]B.[4,3,2,9,1]C.[4,2,9,2,1]D.[4,2,9,3,1]

17.ls=[2,”apple”,[42,”yellow”,”misd”],1.2],表達(dá)式ls[2][一1][2]的結(jié)果是()。

A.mB.iC.sD.d

18.關(guān)于Python元組類型,以下選項(xiàng)中描述錯(cuò)誤的是()。

A.元組不可以被修改

B.Python中元組使用圓括號和逗號表示

C.元組中的元素要求是相同類型

D.一個(gè)元組可以作為另一個(gè)元祖的元素,可以采用多級索引獲取信息

19.以下python數(shù)據(jù)類型中不支持索引訪問的是()

A.字符串B.列表C.元組D.集合

20.下列選項(xiàng)中不屬于結(jié)構(gòu)化程序設(shè)計(jì)原則的是()。

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

21.以下關(guān)于Python文件打開模式的描述中,錯(cuò)誤的是()。

A.只讀模式是rB.覆蓋寫模式是wC.追加寫模式是aD.創(chuàng)建寫模式是n

22.不屬于Python的標(biāo)準(zhǔn)庫的是()。

A.osB.sysC.scipyD.glob

23.在Python中,用來安裝第三方庫的工具是()。

A.installB.pipC.PyQt5D.pyinstaller

24.執(zhí)行以下代碼的結(jié)果是()A.2B.5C.8D.Anexceptionisthrown

25.下列關(guān)于Python內(nèi)置函數(shù)的使用描述錯(cuò)誤的是()。

A.int(x)是將x轉(zhuǎn)換為一個(gè)整數(shù)

B.print(“6+5”)的輸出是11

C.die.clear()的結(jié)果是清空字典dic

D.使用aPPend()函數(shù)可以向列表添加元素

26.以下程序的輸出結(jié)果是()。foriinreversed(range(7,4,-1)): print(i,end=“”)

A.7654B.765C.567D.4567

27.以下關(guān)于函數(shù)的定義與編寫的描述,錯(cuò)誤的是()。

A.函數(shù)是代碼復(fù)用的一種方式

B.在Python中,使用關(guān)鍵字define定義函數(shù)

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

D.編寫函數(shù)時(shí),一般建議先對參數(shù)進(jìn)行合法性檢查,然后再進(jìn)行編寫

28.下列說法正確的是()。

A.set()可以將任何類型轉(zhuǎn)換為集合類型

B.remove()方法刪除集合中的元素,不管元素存不存在都不報(bào)錯(cuò)

C.集合中的元素不可重復(fù),元素類型只能是不可變數(shù)據(jù)類型

D.集合元素是有序的

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

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

30.在Python中,可以作為源文件擴(kuò)展名的是()。

A.pdfB.docxC.pngD.py

二、判斷題(10題)31.以寫模式打開的文件無法進(jìn)讀操作。

A.是B.否

32.調(diào)用函數(shù)時(shí)傳遞的實(shí)參個(gè)數(shù)必須與函數(shù)形參個(gè)數(shù)相等才行。

A.是B.否

33.執(zhí)行語句frommathimportsin之后,可以直接使用sin()函數(shù),例如sin(3)。A.是B.否

34.假設(shè)re模塊已成功導(dǎo)入,并且有pattern=pile('^'+'\.'.join([r'\d{1,3}'foriinrange(4)])+'$'),那么表達(dá)式pattern.match('03')的值為None。

A.是B.否

35.Python標(biāo)準(zhǔn)庫os中的方法listdir()返回包含指定路徑中所有文件和文件夾名稱的列表。

A.是B.否

36.OpenGL采用的“狀態(tài)機(jī)”工作方式,一旦設(shè)置了某種狀態(tài)以后,除非顯式修改該狀態(tài),否則該狀態(tài)將一直保持。

A.是B.否

37.在定義函數(shù)時(shí),某個(gè)參數(shù)名字前面帶有兩個(gè)*符號表示可變長度參數(shù),可以接收任意多個(gè)關(guān)鍵參數(shù)并將其存放于一個(gè)字典之中。A.是B.否

38.同一個(gè)列表對象中的元素類型可以各不相同。

A.是B.否

39.Python字符串方法replace()對字符串進(jìn)行原地修改。

A.是B.否

40.對于Python類中的私有成員,可以通過“對象名._類名__私有成員名”的方式來訪問。

A.是B.否

三、填空題(10題)41.已知列表x=[1,3,2],那么執(zhí)行語句x.reverse()之后,x的值為____________。

42.已知x=[[1,3,3],[2,3,1]],那么表達(dá)式sorted(x,key=lambdaitem:(item[1],item[2]))的值為____________________________________。

43.已知x={1:2,2:3,3:4},那么表達(dá)式sum(x.values())的值為_________。

44.已知x=[[1,3,3],[2,3,1]],那么表達(dá)式sorted(x,key=lambdaitem:item[0]+item[2])的值為______________________________________。

45.簡單解釋運(yùn)算符/和//的區(qū)別。

46.表達(dá)式'Thefirst:{1},thesecondis{0}'.format(65,97)的值為______________________________。

47.表達(dá)式65>>1的值為_____________。

48.表達(dá)式len('SDIBT')的值為__________。

49.一個(gè)數(shù)字5__________(是/不是)合法的Python表達(dá)式。

50.表達(dá)式int(4**.)的值為__________。

四、操作題(3題)51.考生文件夾下存在一個(gè)文件“PY102.py”,請寫代碼替換橫線,不修改其他代碼,實(shí)現(xiàn)以下功能。用鍵盤輸入直角三角形的兩條直角邊長度,計(jì)算三角形的面積。

例如:輸入三角形第一條直角邊長:3輸入三角形第二條直角邊長:4直角三角形的面積為:6.0

試題程序:#請?jiān)赺____處使用一行代碼或表達(dá)式替換

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

a=float(input("輸入三角形第一條直角邊長:"))

b=float(input("輸入三角形第二條直角邊長:"))

_____(1)_____print("直角三角形的面積為:{_____(3)_____}".format(area))

52.某班學(xué)生評選一等獎(jiǎng)學(xué)金,學(xué)生的10門主干課成績存在考生文件夾下文件score.txt中,每行為一個(gè)學(xué)生的信息,分別記錄了學(xué)生學(xué)號、姓名以及10門課成績,格式如下:

1820161043

鄭珉鎬68668377567361696678

1820161044

沈紅偉91708l919680789l8994

從這些學(xué)生中選出獎(jiǎng)學(xué)金候選人,條件是:①總成績排名在前10名;②全部課程及格(成績大于等于60)。

問題1:給出按總成績從高到低排序的前10名學(xué)生名單,并寫入文件candidate0.txt,每行記錄一個(gè)學(xué)生的信息,分別為學(xué)生學(xué)號、姓名以及10門課成績。補(bǔ)充考生文件夾下文件PY301一1.py,完成這一功能。試題程序:

#請?jiān)凇幨褂枚嘈写a替換

##注意:其他已給出代碼僅作為提示,可以修改L=[]

#L中的元素是學(xué)生原始成績和總成績

…#此處可多行

L.sort(key=lambdax:x[一1],reverse=True)拌按學(xué)生總成績從大到小排序

…#此處可多行

問題2:讀取文件candidate0.txt,從中選出候選人,并將學(xué)號和姓名寫入文件candidate.txt,格式如下:

1010112161722

張三

1010112161728

李四

補(bǔ)充考生文件夾下文件PY301—2.py,完成這一功能。

試題程序:'''輸入文件:candidate0.txt輸出文件:candidate.txt'''

53.考生文件夾下存在一個(gè)文件PY101.py,請寫代碼替換橫線,不修改其他代碼,實(shí)現(xiàn)以下功能:循環(huán)獲得用戶輸入,直至用戶輸入Y或者y字符退出程序。

試題程序:

#請?jiān)赺______處使用一行代碼或表達(dá)式替換

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

s=input(”請輸入信息:”)

if______:

break

參考答案

1.Cimport語句確實(shí)可以在程序的任何位置使用,但是當(dāng)在程序中多次導(dǎo)入同一個(gè)模塊時(shí),該模塊中的代碼僅僅在該模塊被首次導(dǎo)人時(shí)執(zhí)行,所以C項(xiàng)錯(cuò)誤。

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

3.D使用rmdir()刪除目錄之前要先清除其中所有的文件,否則會報(bào)OSError錯(cuò)誤。

4.C在Python中,return語句用來結(jié)束函數(shù)并將程序返回到函數(shù)被調(diào)用的位置繼續(xù)執(zhí)行。re-turn\n語句可以出現(xiàn)在函數(shù)中的任何部分,可以同時(shí)將0個(gè)、1\n個(gè)或多個(gè)函數(shù)運(yùn)算結(jié)果返回給函數(shù)被調(diào)用處的變量。函數(shù)可以沒有return語句,此時(shí)函數(shù)并不返回值。當(dāng)函數(shù)使用return語句返回多個(gè)值時(shí),這些值形成了一個(gè)元組數(shù)據(jù)類型,由圓括號和逗號分隔,如(a,b,c),可以使用一個(gè)變量或多個(gè)變量保存結(jié)果。本題選擇C選項(xiàng)。

5.Bfun()函數(shù)進(jìn)行加減計(jì)算,輸入為復(fù)數(shù),按復(fù)數(shù)加減運(yùn)算法則計(jì)算結(jié)果為(2+3j)。

6.CPython通過open()函數(shù)打開一個(gè)文件,并返回一個(gè)操作這個(gè)文件的變量,其語法為<變量名>=open(<文件路徑及文件名>,<打開模式>)。本題選擇C選項(xiàng)。

7.Acontinue語句只結(jié)束本次循環(huán),不終止整個(gè)循環(huán)的執(zhí)行,而break語句具備結(jié)束整個(gè)循環(huán)的能力。本題外層循環(huán)用來計(jì)數(shù),內(nèi)層循環(huán)用來遍歷字符串,當(dāng)滿足判斷條件時(shí),就會結(jié)束本次循環(huán)進(jìn)入下一次循環(huán),字符串遍歷完成之后,外層循環(huán)進(jìn)入下一次循環(huán)。本題選擇A選項(xiàng)。

8.A在Python中,return語句用來結(jié)束函數(shù)并將程序返回到函數(shù)被調(diào)用的位置繼續(xù)執(zhí)行。re-turn\n語句可以出現(xiàn)在函數(shù)的任何部分,可以同時(shí)將0個(gè)、1\n個(gè)或多個(gè)函數(shù)運(yùn)算結(jié)果返回給函數(shù)被調(diào)用處的變量。函數(shù)可以沒有return語句,此時(shí)函數(shù)并不返回值。B、D選項(xiàng)錯(cuò)誤。Python函數(shù)定義中沒有對參數(shù)指定類型,則函數(shù)內(nèi)的默認(rèn)值參數(shù)是對函數(shù)的默認(rèn)值參數(shù)屬性__defaults__的引用,C選項(xiàng)錯(cuò)誤。eval()函數(shù)將去掉字符串最外側(cè)的引號,并按照Python語句方式執(zhí)行去掉引號后的字符內(nèi)容,使用方式為<變量>=eval(\n<字符串>),其中變量用來保存對字符串內(nèi)容進(jìn)行Python運(yùn)算的結(jié)果,故函數(shù)eval()可以用于數(shù)值表達(dá)式的求值,如eval(”2*\n3+1”)=7。本題選擇A選項(xiàng)。

9.C列表中正向遞增索引從0開始,反向遞減索引從-1開始,ls[2][-1][2]指的是列表中索引為2的元素下的索引為-1元素下的索引為2的元素,輸出結(jié)果是s。本題選擇C選項(xiàng)。

10.AB選項(xiàng)是定義全局變量的關(guān)鍵字,C選項(xiàng)是with...as用來代替?zhèn)鹘y(tǒng)的try...\nfinally語法,D選項(xiàng)的意思是程序什么都不做。本題選擇A選項(xiàng)。

11.C無論用戶輸入的是字符還是數(shù)字,input()函數(shù)統(tǒng)一按照字符串類型輸出,當(dāng)輸入aa時(shí),以字符串類型’aa’返回;然后eval()函數(shù)處理字符串’aa’,去掉其兩側(cè)的引號,將其解釋為一個(gè)變量,由于之前沒有定義過該變量,因此解釋器報(bào)錯(cuò),輸出”輸入有誤”。

12.A在Python語言中,用于數(shù)據(jù)分析的第三方庫有numpy、scipy、pandas和matplotlib。scrapy庫是網(wǎng)絡(luò)爬蟲方向的第三方庫。

13.CPython中open()函數(shù)提供了\n7種基本的文件打開模式:r、w、x、a、b、t、+。其中,r、w、x、a可以和b、t、+組合使用。本題選擇C選項(xiàng)。

14.Bforiinrange(1,11)是將1,2,3,4,5,6,7,8,9,10依次賦給變量i,用變量sum累加每一次變化的i的值,最終sum=56。本題選擇B選項(xiàng)。

15.A軟件測試的目的是為了發(fā)現(xiàn)錯(cuò)誤而執(zhí)行程序,并不涉及改正錯(cuò)誤,所以選項(xiàng)A錯(cuò)誤。程序調(diào)試的基本步驟有錯(cuò)誤定位、修改設(shè)計(jì)及代碼,以排除錯(cuò)誤、進(jìn)行回歸測試,防止引進(jìn)新的錯(cuò)誤。程序調(diào)試通常稱為Debug,即排錯(cuò)。軟件測試的基本準(zhǔn)則:所有測試都應(yīng)追溯到需求、嚴(yán)格執(zhí)行測試計(jì)劃以排除測試的隨意性、充分注意測試中的群集現(xiàn)象、程序員應(yīng)避免檢查自己的程序、窮舉測試不可能、妥善保存測試計(jì)劃等文件。本題選擇A選項(xiàng)。

16.D在Python中,想要在列表中的任意位置插入元素,一般使用insert()方法。insert()方法有兩個(gè)參數(shù):第一個(gè)參數(shù)代表在列表中的位置,第二個(gè)參數(shù)是在這個(gè)位置處插入的元素。注意:插入時(shí),元素被插入該位置之前。列表索引從0開始,s=[4,2,9,1],s[3]=1,則執(zhí)行s.insert(3,3)后,s=[4,2,9,3,1],最后print(s)。本題選擇D選項(xiàng)。

17.C列表索引正向遞增索引從0開始,反向遞減索引從一1開始,ls[2][一1][2]指的是列表中下標(biāo)為2的元素下的下標(biāo)為一1元素下的下標(biāo)為2的元素,輸出結(jié)果是s。本題選擇C選項(xiàng)。

18.C元組與列表類似,可存儲不同類型的數(shù)據(jù);元組是不可改變的,創(chuàng)建后不能再做任何修改操作。

19.D

20.AA。【解析】結(jié)構(gòu)化程序設(shè)計(jì)方法的主要原則可以概括為自頂向下、逐步求精、模塊化、限制使用goto語句等。

21.D文件的打幵模式如下。r:只讀模式,如果文件不存在,返回異常FileNotFoundError。x:創(chuàng)建寫模式,文件不存在則創(chuàng)建,存在則返回異常FileExistsError。w:覆蓋寫模式,文件不存在則創(chuàng)建,存在則完全覆蓋原文件。a:追加寫模式,文件不存在則創(chuàng)建,存在則在原文件最后追加內(nèi)容。文件打開模式中沒有n,本題選擇D選項(xiàng)。

22.Cscipy是Python的數(shù)據(jù)分析方向的第三方庫。

23.B在Python中,使用pip工具來安裝和管理Python第三方庫,pip屬于Python的一部分。本題選擇B選項(xiàng)。

24.D

25.BB選項(xiàng)中正確的輸出應(yīng)為6+5,當(dāng)Print()函數(shù)圓括號內(nèi)的變量被引號標(biāo)注,則該變量被視為字符串。本題選擇B選項(xiàng)。

26.Crange([start,]stop[,step=1])函數(shù)有3個(gè)參數(shù),用來生成一個(gè)從start參數(shù)的值開始到stop參數(shù)的值結(jié)束的數(shù)字序列,步長step默認(rèn)為1,區(qū)間為左閉右開。而reversed()函數(shù)用于反向列表。本題選擇C選項(xiàng)。

27.B在Python中,使用關(guān)鍵字def定義函數(shù)。

28.Cset()函數(shù)將其他組合數(shù)據(jù)類型變成集合類型;remove()刪除集合中指定的元素,不存在則產(chǎn)生KeyError異常;集合元素是無序的,集合的輸出順序與定義順序可以不一致。

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

30.DPython源文件的擴(kuò)展為py。本題選擇D選項(xiàng)。

31.Y

32.N

33.Y

34.N

35.Y

36.Y

37.Y

38.Y

39.N

40.Y

41.[2,3,1]

42.[[2,3,1],[1,3,3]]

43.9

44.[[2,3,1],[1,3,3]]

45./表示真除法,即使整數(shù)除以整數(shù),結(jié)果也是實(shí)數(shù);//表示整除法,結(jié)果是向下取整的整數(shù)。

46.'Thefirst:97,thesecondis65'

47.32

48.5

49.是

50.

51.a=float(input(”輸入三角形第一條直角邊長:"))b=float(input(“輸入三角形第二條直角邊長:"))Area=0.5*(a*b)print(”直角三角形的面積為:{:.1f}”.

format(area))本題考查format()方法的使用和計(jì)算直角三角形面積的公式。直角三角形的面積等于兩條直角邊的乘積再乘以1/2,所以第1空應(yīng)填area=0.5*(\r\na*b)。題干中最后輸出保留了一位小數(shù),所以format()中的字符串槽內(nèi)需要設(shè)置精度字段,因此第2空應(yīng)填入:.If。

52.(1)L=[]\r\n

fo=open("score.txt","r")\r\n

fi=open("candidate0.txt","w")\r\n

lines=fo.readlines()\r\n

forlineinlines:\r\n

line=line.strip()\r\n

student=line.split('')\r\n

sum=0\r\n

foriinrange(1,11):\r\n

sum+=int(student[-i])\r\n

studene.append(str(sum))\r\n

L.append(student):\r\n

L.sort(key=lambda.x:x[一1],reverse=True)\r\nforiinrange(10):\r\nfi.write('',join(L[i][:-1])+'\\n')\r\nfo.close()\r\nfi.close()(2)'''\r\n輸入文件:candidate0.txt\r\n輸出文件:candidate.txt\r\n'''\r\nfo=open("candidate0.txt","r")\r\nfi=open("candlidate.txt","w")\r\nL=[]#存儲候選人\r\nlines=fo.readlines()\r\nforlineinlines:\r\n

line=line.strip()\r\n

student=line.split('')\r\n

foriinstudent[-10:]:\r\n

ifint(i)<60:\r\n

break\r\n

else:\r\n

I:append(student[:2])\r\nforiinL:\r\n

fi.write(''.join(i)+'\\n')\r\nfo.close()\r\nfi.close()(1)本題涉及”score.txt”和”candidate0.txt”兩個(gè)文件。首先要讀取”score.txt”文件中的信息,通過程序求出每個(gè)學(xué)生的總成績,然后按總成績從大到小排序,將總成績排名前10的學(xué)生的學(xué)號、姓名以及10門課成績寫入到”candidate0.txt”文件中。打開文件用open()函數(shù),用”r”只讀模式打開文件”score.txt”,用”w”模式創(chuàng)建文件”cand:idate0.txt”。\r\n

”score.txt”文件中每行為一個(gè)學(xué)生的信息,需要用readlines()函數(shù)讀入所有行,以每行為元素形成列表lines,然后用for循環(huán)遍歷該列表中的每個(gè)元素。在遍歷每個(gè)元素時(shí),用strip()方法刪除元素首尾出現(xiàn)的空格,用split()方法以空格分隔學(xué)生的學(xué)號、姓名以及10門課成績得到列表stude

溫馨提示

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

評論

0/150

提交評論