版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
陜西省咸陽市全國(guó)計(jì)算機(jī)等級(jí)考試Python語言程序設(shè)計(jì)重點(diǎn)匯總(含答案)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(30題)1.下列關(guān)于Python的描述,正確的是()。
A.列表的索引是從1開始的
B.元組的元素值可以修改、刪除、連接
C.字典中的“鍵”只能是整數(shù)、字符串
D.集合分為可變集合和不可變集合,可變集合的元素可以添加、刪除
2.樹的度為3,共有29個(gè)結(jié)點(diǎn),但沒有度為1和2的結(jié)點(diǎn)。則該樹中葉子結(jié)點(diǎn)數(shù)為()。
A.OB.9C.18D.不可能有這樣的樹
3.下面代碼輸出的結(jié)果是()。a=divmod(5,2)b=divmod(2,6)c=set(a+b)print(sum(c))
A.3B.5C.2D.O
4.Python提供3種基本的數(shù)字類型,它們是()。
A.整數(shù)類型、浮點(diǎn)數(shù)類型、復(fù)數(shù)類型
B.整數(shù)類型、二進(jìn)制類型、浮點(diǎn)數(shù)類型
C.整數(shù)類型、二進(jìn)制類型、浮點(diǎn)數(shù)類型
D.整數(shù)類型、二進(jìn)制類型、復(fù)數(shù)類型
5.以下描述中,正確的是()。
A.如果s是一個(gè)序列,s=[l,”kate”,Tme],s[3]返回True
B.如果x不是s的元素,xnotins返回True
C.如果x是s的元素,xins返回1
D.如果s是一個(gè)序列,s=[l,”kate”,False],s[-1]返回True
6.以下程序輸出的圖形是()。foriinrange(-3,4): ifi<0: print(‘’*(-i)+‘*’*(4+i)) elifi>0: print(‘’*3+‘*’*(4-i)) else: print(‘*’*7)
A.
B.
C.
D.
7.以下關(guān)于“for<循環(huán)變量>in<循環(huán)結(jié)構(gòu)>”的描述,錯(cuò)誤的是()。
A.<循環(huán)結(jié)構(gòu)>采用[1,2,3]和[‘1’,‘2’,‘3’]的時(shí)候,循環(huán)的次數(shù)是一樣的
B.這個(gè)循環(huán)體語句中不能有break語句,會(huì)影響循環(huán)次數(shù)
C.使用range(a,b)函數(shù)指定for循環(huán)的循環(huán)變量取值是從a到b-1
D.foriinrange(1,10,2)表示循環(huán)5次,i的值是從1到9的奇數(shù)
8.以下程序的輸出結(jié)果是()。foriin”Nation”:forkinrange(2):ifi==’n’:breakprint(i,end=””)
A.aattiiooB.NNaattiiooC.NaattiioonD.aattiioonn
9.當(dāng)試圖訪問的對(duì)象屬性不存在時(shí),為了不讓程序拋出異常,需要用到的語句是()。
A.try-except語句B.for語句C.eval語句D.if語句
10.樹的度為3,且有9個(gè)度為3的節(jié)點(diǎn),5個(gè)度為1的節(jié)點(diǎn),但沒有度為2的節(jié)點(diǎn)。則該樹中的葉子節(jié)點(diǎn)數(shù)為()。
A.18B.33C.19D.32
11.以下不是Python特點(diǎn)的是()。
A.執(zhí)行速度快B.語法簡(jiǎn)潔C.支持中文D.生態(tài)豐富
12.字符串tstr=‘television’,顯示結(jié)果為vi的是()。
A.print(tstr[4:7])
B.print(tstr[5:7])
C.print(tstr[-6:6])
D.print(tstr[4:-2])
13.在Python語言中,不屬于組合數(shù)據(jù)類型的是()。
A.浮點(diǎn)數(shù)類型B.列表類型C.字典類型D.字符串類型
14.當(dāng)試圖訪問的對(duì)象屬性不存在時(shí),為了不讓程序拋出異常,需要用到的語句是()。
A.try—except語句B.for語句C.eval語句D.if語句
15.下面代碼的輸出結(jié)果是()。defadd(x):ifx>0:returnx+add(x一1)else:return0result=add(10)print(result)
A.0B.10C.55D.45
16.有3個(gè)關(guān)系R、S、T如下:
則由關(guān)系R和S得到關(guān)系T的運(yùn)算是()。
A.自然連接B.差C.交D.并
17.定義在類中的方法之外的變量是()
A.實(shí)例變量B.類變量C.公有變量D.私有變量
18.軟件生命周期是指()。A.軟件產(chǎn)品從提出、實(shí)現(xiàn)、使用維護(hù)到停止使用退役的過程
B.軟件從需求分析、設(shè)計(jì)、實(shí)現(xiàn)到測(cè)試完成的過程
C.軟件的開發(fā)過程
D.軟件的運(yùn)行維護(hù)過程
19.以下程序的輸出結(jié)果是()。x=‘R\0S\0T’print(len(x))
A.3B.5C.7D.6
20.以下哪種類型是Python的映射類型?()
A.strB.tupleC.listD.dict
21.以下關(guān)于Python語言的描述中,正確的是()。
A.條件4<=5<=6是合法的,輸出False
B.條件4<=5<=6是不合法的
C.條件4<=5<=6是合法的,輸出True
D.條件4<=5<=6是不合法的,拋出異常
22.當(dāng)用戶輸入2時(shí),下面代碼的輸出結(jié)果是()。try:n=input(“請(qǐng)輸入一個(gè)整數(shù):”)defpow2(n):returnn**5pow2(n)except:print(”程序執(zhí)行錯(cuò)誤”)
A.32B.2C.程序沒有任何輸出D.程序執(zhí)行錯(cuò)誤
23.下列排序方法中,最壞情況下比較次數(shù)最少的是()。
A.冒泡排序B.簡(jiǎn)單選擇排序C.直接插入排序D.堆排序
24.數(shù)據(jù)流圖(DFD)的作用是()。
A.描述軟件系統(tǒng)的控制流B.支持軟件系統(tǒng)功能建模C.支持軟件系統(tǒng)的面向?qū)ο蠓治鯠.描述軟件系統(tǒng)的數(shù)據(jù)結(jié)構(gòu)
25.下面敘述中錯(cuò)誤的是()。
A.軟件測(cè)試的目的是發(fā)現(xiàn)錯(cuò)誤并改正錯(cuò)誤
B.對(duì)被調(diào)試的程序進(jìn)行“錯(cuò)誤定位”是程序調(diào)試的必要步驟
C.程序調(diào)試通常也稱為Debug
D.軟件測(cè)試應(yīng)嚴(yán)格執(zhí)行測(cè)試計(jì)劃,排除測(cè)試的隨意性
26.以下代碼的輸出結(jié)果是()。Test_list=list(range(6))Print(6inTest_list)
A.6B.6inTest_listC.TrueD.False
27.下面說法錯(cuò)誤的是()。
A.在UTF一8編碼中一個(gè)漢字需要占用3個(gè)字節(jié)
B.在GBK和CP936編碼中一個(gè)漢字需要2個(gè)字節(jié)
C.Python運(yùn)算符%不僅可以用來求余數(shù),還可以用來格式化字符串
D.Python字符串方法replace()對(duì)字符串進(jìn)行原地修改
28.以下程序的輸出結(jié)果是()。foriin“miss”: forjinrange(3): print(i,end=‘’) ifi==“i”: break
A.missmissmissB.mmmissssssC.mmmiiissssssD.mmmssssss
29.以下程序的輸出結(jié)果是()。forcin’PythonNCRE’:ifc==’N’:breakprint?
A.無輸出B.PythonC.PythoD.PythonCRE
30.對(duì)于循環(huán)隊(duì)列,下列敘述中正確的是()。
A.隊(duì)頭指針是固定不變的
B.隊(duì)頭指針一定大于隊(duì)尾指針
C.隊(duì)頭指針一定小于隊(duì)尾指針
D.隊(duì)頭指針可以大于隊(duì)尾指針,也可以小于隊(duì)尾指針
二、判斷題(10題)31.只可以動(dòng)態(tài)為對(duì)象增加數(shù)據(jù)成員,而不能為對(duì)象動(dòng)態(tài)增加成員方法。
A.是B.否
32.無法刪除集合中指定位置的元素,只能刪除特定值的元素。
A.是B.否
33.已知x=3,那么賦值語句x='abcedfg'是無法正常執(zhí)行的。
A.是B.否
34.假設(shè)random模塊已導(dǎo)入,那么表達(dá)式random.sample(range(10),20)的作用是生成20個(gè)不重復(fù)的整數(shù)。
A.是B.否
35.Python3.x完全兼容Python2.x。
A.是B.否
36.在編寫函數(shù)時(shí),建議首先對(duì)形參進(jìn)行類型檢查和數(shù)值范圍檢查之后再編寫功能代碼,或者使用異常處理結(jié)構(gòu),盡量避免代碼拋出異常而導(dǎo)致程序崩潰。
A.是B.否
37.已知x為非空字符串,那么表達(dá)式“.join(x.split())==x的值一定為True。A.是B.否
38.對(duì)于帶有else子句的循環(huán)語句,如果是因?yàn)檠h(huán)條件表達(dá)式不成立而自然結(jié)束循環(huán),則執(zhí)行else子句中的代碼。A.是B.否
39.Python變量名必須以字母或下劃線開頭,并且區(qū)分字母大小寫。
A.是B.否
40.不同作用域中的同名變量之間互相不影響,也就是說,在不同的作用域內(nèi)可以定義同名的變量。
A.是B.否
三、填空題(10題)41.表達(dá)式{1,2,3}-{3,4,5}的值為_________。
42.假設(shè)有Python程序文件abc.py,其中只有一條語句print(__name__),那么直接運(yùn)行該程序時(shí)得到的結(jié)果為_____________。
43.表達(dá)式sorted([111,2,33],key=lambdax:len(str(x)))的值為________________。
44.表達(dá)式int('123')的值為_____________。
45.已知x=[1,2,3,4,5],那么執(zhí)行語句delx[:3]之后,x的值為__________。
46.Python內(nèi)置函數(shù)_____________用來打開或創(chuàng)建文件并返回文件對(duì)象。
47.已知函數(shù)定義deffunc(**p):returnsum(p.values()),那么表達(dá)式func(x=1,y=2,z=3)的值為________。
48.表達(dá)式''.join(re.split('[sd]','asdssfff'))的值為_______________。
49.表達(dá)式65>>1的值為_____________。
50.表達(dá)式'Helloworld!'.count('l')的值為___________。
四、操作題(3題)51.某班學(xué)生評(píng)選一等獎(jiǎng)學(xué)金,學(xué)生的10門主干課成績(jī)存在考生文件夾下文件score.txt中,每行為一個(gè)學(xué)生的信息,分別記錄了學(xué)生學(xué)號(hào)、姓名以及10門課成績(jī),格式如下:
1820161043
鄭珉鎬68668377567361696678
1820161044
沈紅偉91708l919680789l8994
從這些學(xué)生中選出獎(jiǎng)學(xué)金候選人,條件是:①總成績(jī)排名在前10名;②全部課程及格(成績(jī)大于等于60)。
問題1:給出按總成績(jī)從高到低排序的前10名學(xué)生名單,并寫入文件candidate0.txt,每行記錄一個(gè)學(xué)生的信息,分別為學(xué)生學(xué)號(hào)、姓名以及10門課成績(jī)。補(bǔ)充考生文件夾下文件PY301一1.py,完成這一功能。試題程序:
#請(qǐng)?jiān)凇幨褂枚嘈写a替換
##注意:其他已給出代碼僅作為提示,可以修改L=[]
#L中的元素是學(xué)生原始成績(jī)和總成績(jī)
…#此處可多行
L.sort(key=lambdax:x[一1],reverse=True)拌按學(xué)生總成績(jī)從大到小排序
…#此處可多行
問題2:讀取文件candidate0.txt,從中選出候選人,并將學(xué)號(hào)和姓名寫入文件candidate.txt,格式如下:
1010112161722
張三
1010112161728
李四
補(bǔ)充考生文件夾下文件PY301—2.py,完成這一功能。
試題程序:'''輸入文件:candidate0.txt輸出文件:candidate.txt'''
52.考生文件夾下存在一個(gè)文件“PY102.py”,請(qǐng)寫代碼替換橫線,不修改其他代碼,實(shí)現(xiàn)以下功能。a和b是兩個(gè)列表變量,列表a為[11,3,8]已給定,輸入列表b,計(jì)算a中元素與b中對(duì)應(yīng)元素乘積的累加和。例如:輸入的列表b為[4,5,2],累加和為11*4+5*3+8*2=75,因此,屏幕輸出的計(jì)算結(jié)果為75。試題程序:#請(qǐng)?jiān)诔绦虻腳____處使用一行代碼或表達(dá)式替換#注意:請(qǐng)不要修改其他已給出代碼a=[11,3,8]b=eval(input())#例如..[4,5,2]—(1)—foriin(2):s+=a[i]*b[i]print(s)
53.考生文件夾下存在一個(gè)文件PY101.py,請(qǐng)寫代碼替換橫線,不修改其他代碼,實(shí)現(xiàn)以下功能:隨機(jī)選擇一個(gè)手機(jī)品牌屏幕輸出。
試題程序:
#請(qǐng)?jiān)诔绦虻摹幨褂靡恍谢蚨嘈写a替換
#請(qǐng)?jiān)诔绦虻腳_____處使用一行代碼替換#注意:請(qǐng)不要修改其他已給出代碼
import________brandlist=[’三星’,’蘋果’,’vivo’,’OPPO’,’魅族’]random.seed(0)
……
print(name)
參考答案
1.D列表的索引是從0開始的;元組的元素值可以連接,但不能被修改、刪除;字典中的“鍵”可以是整數(shù)或者字符串,但也可以是函數(shù)、元組、類等任意不可變類型。本題選擇D選項(xiàng)。
2.D樹的度為3,即樹中只存在度為0、1、2、3的結(jié)點(diǎn),假設(shè)葉子結(jié)點(diǎn)數(shù)為n,由于沒有度為1和2的結(jié)點(diǎn),則度為3的結(jié)點(diǎn)數(shù)為29一n,根據(jù)樹中的結(jié)點(diǎn)數(shù)=樹中所有結(jié)點(diǎn)的度之和+1,得3×(29一n)+0×1+0×2+n×0+1=29,得出的n不為整數(shù),因此不存在這樣的樹。本題選擇D選項(xiàng)。
3.Adivmod(a,b)函數(shù)返回的是兩個(gè)數(shù)值的商和余數(shù),那么a和b的值就分別是(2,1)和(0,2),而e是把a(bǔ)、b相加后轉(zhuǎn)為集合型,那么a+b為(2,1,0,2),轉(zhuǎn)成集合后即為{0,1,2},最后是取總和的sum函數(shù),所以相加起來是的總和為3。
4.APython提供3種基本的數(shù)字類型:整數(shù)類型、浮點(diǎn)數(shù)類型、復(fù)數(shù)類型,分別對(duì)應(yīng)數(shù)學(xué)中的整數(shù)、實(shí)數(shù)及復(fù)數(shù)。本題選擇A選項(xiàng)。
5.B序列的索引從0開始,所以s=[1,”kate”,True]時(shí),s[3]=0,返回False,A選項(xiàng)錯(cuò)誤。Xin\ns(如果x是s的元素,返回True;否則返回False);xnotin\nS(如果X不是S的元素,返回True;否則返回False),B選項(xiàng)正確、C選項(xiàng)錯(cuò)誤。序列類型使用的索引可以是正向遞增索引(從0開始遞增),也可以是反向遞減索引(從-1開始遞減),所以s[-1]=FalSe,返回的是False,D選項(xiàng)錯(cuò)誤。本題選擇B選項(xiàng)。
6.Ai的取值區(qū)間為[-3,4)且為整數(shù),當(dāng)i=0時(shí),根據(jù)判斷條件應(yīng)在一行輸出7個(gè)*,且行前無空格。通過4個(gè)選項(xiàng)比較,采用排除法,只有A選項(xiàng)滿足條件。本題選擇A選項(xiàng)。
7.Bfor語句的循環(huán)執(zhí)行次數(shù)是根據(jù)<循環(huán)結(jié)構(gòu)>中元素的個(gè)數(shù)確定的,[1,2,3]和[‘1’,‘2’,‘3’]均有3個(gè)元素,因此循環(huán)次數(shù)是一樣的,A選項(xiàng)正確。range()函數(shù)只有一個(gè)參數(shù)時(shí)表示會(huì)產(chǎn)生從0開始計(jì)數(shù)到輸入?yún)?shù)的前一位整數(shù)結(jié)束的整數(shù)列表;有兩個(gè)參數(shù)時(shí),則將第一個(gè)參數(shù)作為起始位,第二個(gè)參數(shù)作為結(jié)束位,輸出從起始位到結(jié)束位的前一位的整數(shù)列表;有3個(gè)參數(shù)時(shí),第三個(gè)參數(shù)表示步長(zhǎng),起始位按照步長(zhǎng)遞增或遞減。因此選項(xiàng)C、D正確。循環(huán)體中的break語句的確能影響循環(huán)次數(shù),但是不代表循環(huán)體中不能有break語句,B選項(xiàng)錯(cuò)誤。本題選擇B選項(xiàng)。
8.B在Python中對(duì)字母大小寫是敏感的,’N’和’n’是不同的字符。本題中,有兩層for循環(huán),即每個(gè)字符要輸出兩次,直到i=’n’時(shí),跳出循環(huán),執(zhí)行輸出語句。故答案為B項(xiàng)。
9.Atry-except語句用于檢測(cè)和處理異常。本題選擇A選項(xiàng)。
10.C設(shè)葉子結(jié)點(diǎn)數(shù)為〃,則該樹的結(jié)點(diǎn)數(shù)為n+9+5=n+\n14,根據(jù)樹中的結(jié)點(diǎn)數(shù)=樹中所有結(jié)點(diǎn)的度之和+1,得9×3+0×2+5×1+n×0+1=n+14,則n=19。本題選擇C選項(xiàng)。
11.APython最重要的3個(gè)特點(diǎn)是語法簡(jiǎn)潔、生態(tài)豐富、多語言集成。除了這3個(gè)重要特點(diǎn)外,還有一些其他特點(diǎn):平臺(tái)無關(guān)、強(qiáng)制可讀、支持中文、模式多樣、類庫便捷。Python是一種高級(jí)通用腳本語言,是通過解釋方式執(zhí)行的(解釋是將源代碼逐條轉(zhuǎn)換成目標(biāo)代碼同時(shí)逐條運(yùn)行目標(biāo)代碼的過程),故執(zhí)行速度沒有采用編譯方式的語言執(zhí)行得快。本題選擇A選項(xiàng)。
12.C對(duì)字符串中某個(gè)子串或區(qū)間的檢索稱為切片。切片的使用方式如下。<字符串或字符串變量>[N:M]切片獲取字符串從N到M(不包含M)的子字符串,其中N和M為字符串的索引,可以混合使用正向遞增索引和反向遞減索引。切片要求N和M都在字符串的索引區(qū)間,如果N大于等于M,則返回空字符串。如果N缺失,則默認(rèn)將N設(shè)為0;如果M缺失,則默認(rèn)表示到字符串結(jié)尾。題干中tstr[4:7]=‘vls’,tstr[5:7]=‘ls’,tstr[-6:6]=‘vi’,tstr[4:-2]=‘vlsi’。本題選擇C選項(xiàng)。
13.APython中組合數(shù)據(jù)類型包括元組、列表、字典和集合等。
14.Atry—except語句用于檢測(cè)和處理異常。
15.C該函數(shù)是一個(gè)遞歸函數(shù),用來計(jì)算1到10之間的所有數(shù)的和,使用函數(shù)時(shí)必須調(diào)用函數(shù),即函數(shù)名(<參數(shù)>),也可以將函數(shù)對(duì)象實(shí)例化。結(jié)果為55,選C項(xiàng)。
16.B關(guān)系T中的元組是關(guān)系R中有而關(guān)系S中沒有的元組的集合,所以進(jìn)行的是差運(yùn)算。本題選擇B選項(xiàng)。
17.B
18.A通常,將軟件產(chǎn)品從提出、實(shí)現(xiàn)、使用維護(hù)到停止使用退役的過程稱為軟件生命周期。也就是說,軟件產(chǎn)品從考慮其概念開始,到該軟件產(chǎn)品不能使用為止的整個(gè)時(shí)期都屬于軟件生命周期。
19.B在Python中l(wèi)en()函數(shù)可以輸出字符串長(zhǎng)度,x=‘R\\0S\\0T’,分別有R、\\0、S、\\0和T這5個(gè)字符,所以len(x)=5,print(len(x))是將5輸出來。這里要注意,Python中l(wèi)en()函數(shù)遇見,‘\\0’不結(jié)束,‘\\0’算是一個(gè)轉(zhuǎn)義字符。本題選擇B選項(xiàng)。
20.D映射類型是“鍵一值”數(shù)據(jù)項(xiàng)的組合,每個(gè)元素是一個(gè)鍵值對(duì),即元素是(key,value),元素之間是無序的。鍵值對(duì)是一種二元關(guān)系,源于屬性和值的映射關(guān)系。str、tuple和list都是序列類型,diet,是映射類型。
21.C判斷條件4<=5<=6是成立的,故輸出True。本題選擇C選項(xiàng)。
22.Dinput()函數(shù)從控制臺(tái)獲得用戶的一行輸入,無論用戶輸入什么內(nèi)容,inPut()函數(shù)都以字符串類型返回結(jié)果。當(dāng)用戶輸入2時(shí),n=’2’,這是字符2,不是數(shù)字,不能進(jìn)行數(shù)值運(yùn)算,故程序會(huì)執(zhí)行except后面的語句,輸出程序執(zhí)行錯(cuò)誤。本題選擇D選項(xiàng)。
23.D冒泡排序、簡(jiǎn)單插入排序與簡(jiǎn)單選擇排序法在最壞情況下均需要比較n(n-1)/2次,而堆排序在最壞情況下需要比較的次數(shù)是nlog2n。故答案為D選項(xiàng)。
24.B數(shù)據(jù)流圖是系統(tǒng)邏輯模型的圖形表示,從數(shù)據(jù)傳遞和加工的角度,來刻畫數(shù)據(jù)流從輸入到輸出的移動(dòng)變化過程,它直接支持系統(tǒng)的功能建模。
25.A軟件測(cè)試的目的是為了發(fā)現(xiàn)錯(cuò)誤而執(zhí)行程序,并不涉及改正錯(cuò)誤,所以選項(xiàng)A錯(cuò)誤。程序調(diào)試的基本步驟有錯(cuò)誤定位、修改設(shè)計(jì)及代碼,以排除錯(cuò)誤、進(jìn)行回歸測(cè)試,防止引進(jìn)新的錯(cuò)誤。程序調(diào)試通常稱為Debug,即排錯(cuò)。軟件測(cè)試的基本準(zhǔn)則:所有測(cè)試都應(yīng)追溯到需求、嚴(yán)格執(zhí)行測(cè)試計(jì)劃以排除測(cè)試的隨意性、充分注意測(cè)試中的群集現(xiàn)象、程序員應(yīng)避免檢查自己的程序、窮舉測(cè)試不可能、妥善保存測(cè)試計(jì)劃等文件。本題選擇A選項(xiàng)。
26.DTest_list是列表類型,6inTest_list表示如果6是列表Test_list的元素,返回True,否則返回False。
27.D字符串方法replace()用來替換字符串中指定字符或子字符串的所有重復(fù)出現(xiàn),每次只能替換一個(gè)字符或一個(gè)字符串,把指定的字符串參數(shù)作為一個(gè)整體對(duì)待。該方法并不修改原字符串,而是返回一個(gè)新字符串。
28.B外層for循環(huán)依次將字符串“mlss”中的字符賦給變量i,內(nèi)層for控制循環(huán)3次,注意是先執(zhí)行print再判斷if條件,輸出第一個(gè)i后,碰到if判斷條件,當(dāng)i==“i”時(shí)退出內(nèi)層循環(huán),所以結(jié)果為mmmlssssss。本題選擇B選項(xiàng)。
29.A本題中,break語句出現(xiàn)在print語句之前,當(dāng)if的條件為True時(shí),執(zhí)行break語句,跳出for循環(huán),不再執(zhí)行循環(huán)體中break后面的語句,故無輸出。
30.D循環(huán)隊(duì)列的隊(duì)頭指針與隊(duì)尾指針都不是固定的,隨著入隊(duì)與出隊(duì)操作要進(jìn)行變化。因?yàn)槭茄h(huán)利用的隊(duì)列結(jié)構(gòu),所以隊(duì)頭指針有時(shí)可能大于隊(duì)尾指針,有時(shí)也可能小于隊(duì)尾指針。
31.N
32.Y
33.N
34.N
35.N
36.Y
37.N
38.Y
39.Y
40.Y
41.{1,2}
42.__main__
43.[2,33,111]
44.123
45.[4,5]
46.open()
47.6
48.'afff'
49.32
50.3
51.(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=[]#存儲(chǔ)候選人\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é)生的總成績(jī),然后按總成績(jī)從大到小排序,將總成績(jī)排名前10的學(xué)生的學(xué)號(hào)、姓名以及10門課成績(jī)寫入到”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é)號(hào)、姓名以及10門課成績(jī)得到列表student。由于要求出總成績(jī),因此要使用for遍歷每個(gè)學(xué)生的10門課成績(jī),將其累加賦值給sum,并將sum追加到student中。最后將student中所有元素追加到列表L中。\r\n
隨后,對(duì)列表L中的元素進(jìn)行排序,用到sort()方法,參數(shù)”key=lambdax:x[一1]”中l(wèi)ambda是一個(gè)隱函數(shù),是固定寫法,不能寫成別的單詞;x表示列表中的一個(gè)元素,在這里表示一個(gè)列表(即一個(gè)學(xué)生的信息),x只是臨時(shí)起的一個(gè)名字,也可以使用任意的名字;x[一1]表示以列表中的最后一個(gè)元素(即總成績(jī))排序。參數(shù)”reverse=True”表示按降序排序;若該參數(shù)缺省或”reverse=False”,表示按升序排序。\r\n
最后,通過for循環(huán)在列表L中提取出前10個(gè)元素(即前10名的學(xué)生信息,但不包含總成績(jī)),用空格分隔每個(gè)元素,并添加換行符,寫入到文件”candidate
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 校園宣傳片解說詞
- 貨物運(yùn)輸長(zhǎng)期合同(4篇)
- 2024-2025學(xué)年第一學(xué)期期中南京市六校聯(lián)合調(diào)研試題高一數(shù)學(xué)
- 黑龍江雞西市(2024年-2025年小學(xué)五年級(jí)語文)統(tǒng)編版摸底考試(下學(xué)期)試卷及答案
- 2024年輕質(zhì)高強(qiáng)復(fù)合材料項(xiàng)目投資申請(qǐng)報(bào)告
- 2024年LED室內(nèi)應(yīng)用燈具項(xiàng)目投資申請(qǐng)報(bào)告代可行性研究報(bào)告
- 標(biāo)準(zhǔn)文本-青貯玉米中酸性洗滌纖維的測(cè)定
- 上海市縣(2024年-2025年小學(xué)五年級(jí)語文)人教版綜合練習(xí)((上下)學(xué)期)試卷及答案
- 新學(xué)期教師動(dòng)員培訓(xùn)
- 江西省宜春市宜豐中學(xué)2024-2025學(xué)年高一上學(xué)期期中考試地理試題(含答案)
- 工程交付培訓(xùn)記錄表
- 《個(gè)別化教育的理論與實(shí)踐》教學(xué)大綱
- 精益道場(chǎng)建設(shè)方案與步驟課件
- 對(duì)監(jiān)獄心理矯治工作存在的問題與對(duì)策的幾點(diǎn)思考
- 廉潔文化進(jìn)校園班級(jí)主題班會(huì)
- 一年級(jí)拼音每日拼讀練習(xí)
- 七年級(jí)上冊(cè)生命、生態(tài)、安全教案 全冊(cè)
- 下穿有軌電車專項(xiàng)監(jiān)測(cè)方案
- 古詩句接龍100首
- 大眾汽車北美市場(chǎng)案例(ppt-35頁)課件
- 坐井觀天 (5)
評(píng)論
0/150
提交評(píng)論