江蘇省鎮(zhèn)江市全國(guó)計(jì)算機(jī)等級(jí)考試Python語言程序設(shè)計(jì)_第1頁
江蘇省鎮(zhèn)江市全國(guó)計(jì)算機(jī)等級(jí)考試Python語言程序設(shè)計(jì)_第2頁
江蘇省鎮(zhèn)江市全國(guó)計(jì)算機(jī)等級(jí)考試Python語言程序設(shè)計(jì)_第3頁
江蘇省鎮(zhèn)江市全國(guó)計(jì)算機(jī)等級(jí)考試Python語言程序設(shè)計(jì)_第4頁
江蘇省鎮(zhèn)江市全國(guó)計(jì)算機(jī)等級(jí)考試Python語言程序設(shè)計(jì)_第5頁
已閱讀5頁,還剩59頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

江蘇省鎮(zhèn)江市全國(guó)計(jì)算機(jī)等級(jí)考試Python語言程序設(shè)計(jì)學(xué)校:________班級(jí):________姓名:________考號(hào):________

一、單選題(30題)1.下列敘述中正確的是()。

A.棧是一種先進(jìn)先出的線性表B.隊(duì)列是一種后進(jìn)先出的線性表C.棧與隊(duì)列都是非線性結(jié)構(gòu)D.以上3種說法都不對(duì)

2.以下關(guān)于Python中字典的描述正確的是()。

A.字典用花括號(hào)({})創(chuàng)建,每個(gè)元素都是一個(gè)鍵值對(duì)

B.創(chuàng)建字典只能通過dict()函數(shù)

C.字典中不可以嵌套字典

D.使用del語句進(jìn)行字典操作時(shí),不需要指定字典名和要?jiǎng)h除的鍵

3.如果一個(gè)函數(shù)沒有return語句,調(diào)用它后的返回值為()

A.0B.TrueC.FalseD.None

4.以下操作中對(duì)象t=(1,3.7,5+2j,'test'),哪個(gè)是正確的()

A.t.remove(0)B.t.count()C.t.sortD.list(t)

5.以下程序的輸出結(jié)果是()。ss=set(“htslbht”)sorted(ss)foriinss: print(i,end=‘’)

A.hlbstB.htslbhtC.tsblthD.hhlstt

6.下面對(duì)于類的說法錯(cuò)誤的是()。

A.類是一種實(shí)例

B.在類進(jìn)行實(shí)例化時(shí)將會(huì)首先執(zhí)行該類中的int方法

C.在對(duì)類進(jìn)行實(shí)例化時(shí),傳入的實(shí)參不用帶上self,它在類的執(zhí)行過程中將自行帶上

D.類中的變量前帶有前綴self意味著此變量在類中任意位置可以使用

7.Python語言中,以下表達(dá)式結(jié)果為False的選項(xiàng)是()。

A.”CD”<”CDFG”B.”DCBA”<”DC”C.””<”G”D.”LOVE”>”love”

8.在Python中,關(guān)于數(shù)據(jù)類型的描述錯(cuò)誤的是()。

A.整數(shù)的書寫格式支持十進(jìn)制、二進(jìn)制、八進(jìn)制和十六進(jìn)制

B.如果想知道參數(shù)的數(shù)據(jù)類型,那么可以使用type()函數(shù)獲得

C.整數(shù)、浮點(diǎn)數(shù)、復(fù)數(shù)和布爾值都是Python的基本數(shù)據(jù)類型

D.浮點(diǎn)數(shù)是帶有小數(shù)的數(shù)字,它存在范圍的限制,如果計(jì)算結(jié)果超出上限和下限,則不會(huì)報(bào)錯(cuò),但會(huì)有warning的警告

9.有3個(gè)關(guān)系R、S、T如下:

則由關(guān)系R和S得到關(guān)系T的運(yùn)算是()。

A.自然連接B.差C.交D.并

10.在Python中,將二維數(shù)據(jù)寫入CSV文件,最可能使用的函數(shù)是()。

A.write()B.split()C.join()D.exists()

11.下面代碼的輸出結(jié)果是()。letter=[’A’,’B’,’C’,’D’,’D’,’D’]foriinletter。:ifi==’D’:letter.remove(i)print(letter’)

A.[’A’,’B’,’C’]

B.[’A’,’B’,’C’,’D’,’D’]

C.[’A’,’B’,’C’,’D’,’D’,’D’]

D.[’A’,’B’,’C’,’D’]

12.一個(gè)棧的初始狀態(tài)為空?,F(xiàn)將元素1、2、3、4、5、A、B、C、D、E依次入棧,然后再依次出棧,則元素出棧的順序是()。

A.12345ABCDEB.EDCBA54321C.ABCDE12345D.54321EDCBA

13.在屏幕上輸出HelloWorld,使用的Python語句是()。

A.printf(‘HelloWorld’)

B.print(HelloWorld)

C.print(“HelloWorld”)

D.printf(“HelloWorld”)

14.以下程序的輸出結(jié)果是()。deffunc(a,b): a**=b returnas=func(2,5)print(s)

A.10B.20C.32D.5

15.一間宿舍可住多個(gè)學(xué)生,則實(shí)體宿舍和學(xué)生之間的聯(lián)系是()。

A.—對(duì)一B.—對(duì)多C.多對(duì)一D.多對(duì)多

16.下列數(shù)據(jù)結(jié)構(gòu)中,能夠按照“先進(jìn)后出”原則存取數(shù)據(jù)的是()。

A.循環(huán)隊(duì)列B.棧C.隊(duì)列D.二叉樹

17.以下關(guān)于Python的描述正確的是()。

A.字典的創(chuàng)建必須使用dict()函數(shù)

B.列表和字符串屬于序列,但元組不屬于序列

C.Python只有一種內(nèi)置的映射類型,就是字典

D.字符串可以進(jìn)行切片并賦值

18.下列哪個(gè)語句在Python中是非法的?()

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

19.以下關(guān)于浮點(diǎn)數(shù)3.0和整數(shù)3的描述中,正確的是()。

A.兩者使用相同的硬件執(zhí)行單元B.兩者使用相同的計(jì)算機(jī)指令處理方法C.兩者是相同的數(shù)據(jù)類型D.兩者具有相同的值

20.以下關(guān)于字符串的描述正確的是()。

A.字符應(yīng)視為長(zhǎng)度為1或2的字符串

B.字符串中的字符可進(jìn)行數(shù)學(xué)運(yùn)算,但進(jìn)行數(shù)學(xué)運(yùn)算的字符必須為數(shù)字

C.在三引號(hào)字符串中可包含換行回車等特殊的字符

D.字符串可以進(jìn)行切片賦值

21.以下代碼的輸出結(jié)果是()。Is=[[1,2,3],’python’,[[4,5,’ABC’],6],[7,8]]print(ls[2][l])

A.'ABC'B.pC.4D.6

22.表達(dá)式divmod(40,3)的結(jié)果是()。

A.13,1B.(13,1)C.13D.1

23.以下哪種類型是Python的映射類型?()

A.strB.tupleC.listD.dict

24.執(zhí)行以下代碼的結(jié)果是?A.300B.400C.500D.600

25.關(guān)于Python中is與==說法正確的是

A.is對(duì)比兩個(gè)變量指向是否為同一對(duì)象,==對(duì)比兩個(gè)變量指向?qū)ο笫欠駷橥?/p>

B.is對(duì)比兩個(gè)變量指向?qū)ο笫欠駷橥恢?==是對(duì)比兩個(gè)變量指向是否為同一對(duì)象

C.is與==除均可用于比較對(duì)象是否為同一對(duì)象外,==還可以用于比較對(duì)象的值

D.以上說法均不正確

26.支持子程序調(diào)用的數(shù)據(jù)結(jié)構(gòu)是()。

A.棧B.樹C.隊(duì)列D.二叉樹

27.以下對(duì)Python文件處理的描述中,錯(cuò)誤的是()。

A.當(dāng)文件以文本方式打開時(shí),讀/寫按照字節(jié)流方式

B.Python能夠以文本和二進(jìn)制兩種方式處理文件

C.Python通過解釋器內(nèi)置的open()函數(shù)打開一個(gè)文件

D.文件使用結(jié)束后可以用close()方法關(guān)閉,釋放文件的使用授權(quán)

28.需求分析的主要任務(wù)是()。

A.確定軟件系統(tǒng)的功能B.確定軟件開發(fā)方法C.確定軟件開發(fā)工具D.確定軟件開發(fā)人員

29.下面代碼輸出的結(jié)果是()。a=divmod(5,2)b=divmod(2,6)c=set(a+b)print(sum(c))

A.3B.5C.2D.O

30.以下關(guān)于Python技術(shù)特點(diǎn)的描述中,錯(cuò)誤的是()。

A.對(duì)于需要更快執(zhí)行速度的功能,例如數(shù)值計(jì)算和動(dòng)畫,Python可以調(diào)用C語言編寫的底層代碼

B.Python比大部分編程語言具有更高的軟件開發(fā)產(chǎn)量和簡(jiǎn)潔性

C.Python是解釋執(zhí)行的,因此執(zhí)行速度比編譯型語言慢

D.Python是腳本語言,主要用作系統(tǒng)編程和Web訪問的開發(fā)語言

二、判斷題(10題)31.對(duì)文件進(jìn)行讀寫操作之后必須顯式關(guān)閉文件以確保所有內(nèi)容都得到保存。

A.是B.否

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

A.是B.否

33.一個(gè)數(shù)字5也是合法的Python表達(dá)式。

A.是B.否

34.元組可以作為字典的“鍵”。

A.是B.否

35.假設(shè)random模塊已導(dǎo)入,那么表達(dá)式random.sample(range(10),20)的作用是生成20個(gè)不重復(fù)的整數(shù)。

A.是B.否

36.表達(dá)式{1,3,2}>{1,2,3}的值為True。

A.是B.否

37.Python列表、元組、字符串都屬于有序序列。

A.是B.否

38.列表對(duì)象的extend()方法屬于原地操作,調(diào)用前后列表對(duì)象的地址不變。

A.是B.否

39.二進(jìn)制文件不能使用記事本程序打開。

A.是B.否

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

A.是B.否

三、填空題(10題)41.表達(dá)式abs(3+4j)的值為____________。

42.列表、元組、字符串是Python的_________(有序?無序)序列。

43.已知x={1:1},那么執(zhí)行語句x[2]=2之后,len(x)的值為____________。

44.使用列表推導(dǎo)式得到100以內(nèi)所有能被13整除的數(shù)的代碼可以寫作___________________________________。

45.字典對(duì)象的______________方法返回字典的“值”列表。

46.表達(dá)式list(str([1,2,3]))==[1,2,3]的值為______________。

47.Python安裝擴(kuò)展庫常用的是_______工具。

48.表達(dá)式(1,2,3)+(4,5)的值為__________________。

49.表達(dá)式[str(i)foriinrange(3)]的值為____________。

50.表達(dá)式'C:\\Windows\\notepad.exe'.startswith('C:')的值為_________。

四、操作題(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è)文件“PY103.py”,請(qǐng)寫代碼替換橫線,不修改其他代碼,實(shí)現(xiàn)以下功能。用鍵盤輸入十進(jìn)制整數(shù),按要求將這個(gè)整數(shù)轉(zhuǎn)換為二進(jìn)制、八進(jìn)制及十六進(jìn)制(大寫)并輸出到屏幕。例如:輸入數(shù)字:425對(duì)應(yīng)的二進(jìn)制數(shù):110101001對(duì)應(yīng)的八進(jìn)制數(shù):651對(duì)應(yīng)的十六進(jìn)制數(shù):1A9試題程序:#請(qǐng)?jiān)赺____處使用一行代碼或表達(dá)式替換#注意:請(qǐng)不要修改其他已給出代碼num=eval(input("輸入數(shù)字:"))print("對(duì)應(yīng)的二進(jìn)制數(shù):{_____(1)_____}\n八進(jìn)制數(shù):{_____(2)_____}\n十六進(jìn)制數(shù):{_____(3)_____}".format(num))試題答案:num=eval(input("輸入數(shù)字:”))Print(”對(duì)應(yīng)的二進(jìn)制數(shù):{0:b}\n八進(jìn)制數(shù):{0:o}\n十六進(jìn)制數(shù):{0:x}”.format(num))

53.在考生文件夾下有一個(gè)文件“PY102.py”,請(qǐng)按照文件內(nèi)的說明,完善代碼,實(shí)現(xiàn)下面功能:用鍵盤輸入一個(gè)十進(jìn)制數(shù)保存在變量s中,轉(zhuǎn)換為二進(jìn)制數(shù)輸出顯示在屏幕上,示例如下。請(qǐng)輸入一個(gè)十進(jìn)制數(shù):25轉(zhuǎn)換成二進(jìn)制數(shù)是:11001試題程序:#請(qǐng)?jiān)诔绦虻腳____處使用一行代碼或表達(dá)式替換#注意:請(qǐng)不要修改其他已給出代碼s=input("請(qǐng)輸入一個(gè)十進(jìn)制數(shù):")num=_____(1)_____print("轉(zhuǎn)換成二進(jìn)制數(shù)是:{_____(2)_____}".format(_____(3)_____))

參考答案

1.D棧是一種先進(jìn)后出的線性表,隊(duì)列是一種先進(jìn)先出的線性表,棧與隊(duì)列都是線性結(jié)構(gòu)。本題選擇D選項(xiàng)。

2.A創(chuàng)建字典時(shí)可以使用花括號(hào)({})建立;字典中可以嵌套字典;使用del語句操作字典時(shí),語法格式為del字典名[<鍵名\n>]。本題選擇A選項(xiàng)。

3.D

4.D

5.Aset()函數(shù)是將其他的組合數(shù)據(jù)類型變成集合類型,返回結(jié)果是一個(gè)無重復(fù)且排序任意的集合n因此,set(“htslbht”)的返回值是一個(gè)類似{‘h’,‘l’,‘b’,‘s’,‘t’}的集合,然后將其賦值給ss。sorted(ss)的返回值是對(duì)ss進(jìn)行排序后的結(jié)果,即執(zhí)行sorted(ss)后,ss的值并沒有改變,最后仍輸出hlbst。本題選擇A選項(xiàng)。

6.AA選項(xiàng)中類只是一種抽象事物的分類,對(duì)象才是一種實(shí)例。本題選擇A選項(xiàng)。

7.B字符串比較規(guī)則:從第一個(gè)字符開始,位置一一對(duì)應(yīng)比較編碼大小;當(dāng)?shù)谝粋€(gè)字符串全部字符和另一個(gè)字符串的前部分字符相同時(shí),長(zhǎng)度長(zhǎng)的字符串為大。本題選擇B選項(xiàng)。

8.D浮點(diǎn)數(shù)的取值范圍為-10308~10308,浮點(diǎn)數(shù)之間的區(qū)分精度約為2.22×10-16。對(duì)除高精度科學(xué)計(jì)算外的絕大部分運(yùn)算來說,浮點(diǎn)數(shù)類型的數(shù)值范圍和小數(shù)精度足夠“可靠”,一般認(rèn)為浮點(diǎn)數(shù)類型沒有范圍限制。如果計(jì)算結(jié)果超出上限和下限會(huì)產(chǎn)生溢出錯(cuò)誤。本題選擇D選項(xiàng)。

9.B關(guān)系T中的元組是關(guān)系R中有而關(guān)系S中沒有的元組的集合,所以進(jìn)行的是差運(yùn)算。本題選擇B選項(xiàng)。

10.C在Python中,二維列表對(duì)象輸出CSV文件時(shí),采用遍歷循環(huán)和字符串的join()方法相結(jié)合的方法。方法如下:#ls代表二維列表,此處省略f=open('cpi.csv','w')forrowinIs£.write(“,'.join(row)\\n')f.close()本題選擇C選項(xiàng)。

11.D遍歷列表letter,當(dāng)i==’D’時(shí),執(zhí)行l(wèi)etter.remove(i),此時(shí)列表letter=[’A’,’B’,’C’,’D’,’D’],再遍歷當(dāng)i==’D’,執(zhí)行l(wèi)etter.remove(i),此時(shí)列表letter=[’A’,’B’,’C’,’D’]。因?yàn)榱斜碇械脑仉S著“D”元素的刪除而減少,當(dāng)刪除第一個(gè)“D”元素之后,列表元素的個(gè)數(shù)即變?yōu)?,for循環(huán)又是控制循環(huán)次數(shù)的,因此只遍歷5次,當(dāng)?shù)诙€(gè)“D”元素刪除時(shí),循環(huán)結(jié)束。

12.B解析:棧是一種特殊的線性表,這種線性表只能在固定的一端進(jìn)行插入和刪除操作,允許插入和刪除的一端稱為棧頂,另一端稱為棧底。一個(gè)新元素只能從棧頂一端進(jìn)入,刪除時(shí),只能刪除棧頂?shù)脑?,即剛剛被插入的元素。這表明棧的運(yùn)算規(guī)則是“先進(jìn)后出”(或稱“后進(jìn)先出”)。在棧頂進(jìn)行插入運(yùn)算,稱為進(jìn)棧(或入棧),在棧頂進(jìn)行刪除運(yùn)算,稱為退棧(或出棧)。本題中,依次進(jìn)棧,即依次插入元素1、2、3、4、5、A、B、C、D、E,依次出棧,即依次刪除元素,根據(jù)?!跋冗M(jìn)后出”的規(guī)則,應(yīng)該以倒序出棧。即元素出棧順序?yàn)镋DCBA54321。

13.C在Python中,輸出是Print()函數(shù),HelloWorld是字符串類型,需要加單引號(hào)或雙引號(hào)。本題選擇C選項(xiàng)。

14.C該函數(shù)的功能是計(jì)算a的b次方,運(yùn)算符“**”表示冪運(yùn)算,s=2**5=32。本題選擇C選項(xiàng)。

15.B因?yàn)橐婚g宿舍可以住多個(gè)學(xué)生即多個(gè)學(xué)生住在一個(gè)宿舍中,但一個(gè)學(xué)生只能住一間宿舍,所以實(shí)體宿舍和學(xué)生之間是一對(duì)多的關(guān)系。本題選擇B選項(xiàng)。

16.B棧是按先進(jìn)后出的原則組織數(shù)據(jù)的。隊(duì)列是按先進(jìn)先出的原則組織數(shù)據(jù)。本題選擇B選項(xiàng)。

17.Cdict()函數(shù)和{}都可以創(chuàng)建字典;序列類型包括列表、元組及字符串;字符串可以切片訪問,但是不能賦值。本題選擇C選項(xiàng)。

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

19.D浮點(diǎn)數(shù)3.0和整數(shù)3具有相同的值,硬件執(zhí)行單元、計(jì)算機(jī)指令處理方法和數(shù)據(jù)類型均不相同。本題選擇D選項(xiàng)。

20.C字符應(yīng)視為長(zhǎng)度為1的字符串;字符串中的字符不可以進(jìn)行數(shù)學(xué)運(yùn)算,如果是數(shù)字字符串需要將其轉(zhuǎn)換為數(shù)值類型方可計(jì)算;字符串可進(jìn)行切片,但不能賦值。

21.D列表索引從0開始,所以ls[2]\n[1]指的是列表中索引為2的元素[[4,5,’ABC’],6]中索引為1的元素6,所以輸出結(jié)果是6。本題選擇D選項(xiàng)。

22.Bdivmod(x,y)函數(shù)用來計(jì)算x和y的除余結(jié)果,返回兩個(gè)值,分別是:x與y的整數(shù)除,即x//y,以及x與y的余數(shù),即x%y。返回的兩個(gè)值組成了一個(gè)元組類型,即小括號(hào)包含的兩個(gè)元素(x//y,x%y)。40//3=13,40%3=1,故答案為B項(xiàng)。

23.D映射類型是“鍵一值”數(shù)據(jù)項(xiàng)的組合,每個(gè)元素是一個(gè)鍵值對(duì),即元素是(key,value),元素之間是無序的。鍵值對(duì)是一種二元關(guān)系,源于屬性和值的映射關(guān)系。str、tuple和list都是序列類型,diet,是映射類型。

24.B

25.A

26.A棧支持子程序調(diào)用。棧是一種只能在一端進(jìn)行插入或刪除的線性表,在主程序調(diào)用子函數(shù)時(shí)要首先保存主程序當(dāng)前的狀態(tài),然后轉(zhuǎn)去執(zhí)行子程序,最終把子程序的執(zhí)行結(jié)果返回到主程序中調(diào)用子程序的位置,繼續(xù)向下執(zhí)行,這調(diào)用符合找的特點(diǎn)。本題選擇A選項(xiàng)。

27.A文件包括文本文件和二進(jìn)制文件兩種類型。Python對(duì)文本文件和二進(jìn)制文件采用統(tǒng)一的操作步驟,即“打開-操作-關(guān)閉”,B選項(xiàng)正確。采用文本方式讀入文件,文件經(jīng)過編碼形成字符串,輸出有含義的字符;采用二進(jìn)制方式打開文件,文件被解析為字節(jié)流,A選項(xiàng)錯(cuò)誤。Python通過open()函數(shù)打開一個(gè)文件,并返回一個(gè)操作這個(gè)文件的變量,語法格式為<變置名>=open(<文件路徑及文件名>,<打開模式>\n),C選項(xiàng)正確。文件使用結(jié)束后要用clooe()方法關(guān)閉,釋放文件的使用授權(quán),語法格式為<變置名>dose()\n,D選項(xiàng)正確。本題選擇A選項(xiàng)。

28.A需求分析是軟件開發(fā)之前必須要做的準(zhǔn)備工作之一。需求是指用戶對(duì)目標(biāo)軟件系統(tǒng)在功能、行為、性能、設(shè)計(jì)約束等方面的期望。故需求分析的主要任務(wù)是確定軟件系統(tǒng)的功能。本題選擇A選項(xiàng)。

29.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。

30.DPython是一種解釋型高級(jí)通用腳本語言,具有通用性,可以用于幾乎任何與程序設(shè)計(jì)相關(guān)應(yīng)用的開發(fā)。Python主要應(yīng)用于以下幾個(gè)領(lǐng)域:Web開發(fā)、爬蟲開發(fā)、科學(xué)計(jì)算、高性能服務(wù)器后端、開發(fā)界面程序。QT也提供了Python的支持,因?yàn)镻ython的開源庫包含對(duì)C/C++lib庫的調(diào)用。D選項(xiàng)中,“主要”二字太過絕對(duì)。本題選擇D選項(xiàng)。

31.Y

32.Y

33.Y

34.Y

35.N

36.N

37.Y

38.Y

39.N

40.N

41.5.0

42.有序

43.2

44.[iforiinrange(100)ifi%13==0]

45.values()

46.False

47.pip

48.(1,2,3,4,5)

49.['0','1','2']

50.True

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è)元素,并添加換行符,寫入到文件”candidate0.txt”中,再關(guān)閉所有文件。\r\n

(2)本題涉及”candidate0.txt”和”candidate.txt”兩個(gè)文件。首先要讀取”candidate0.txt”文件中的信息,通過程序判斷每個(gè)學(xué)生的所有課程成績(jī)是否都大于等于60,滿足條件的將該學(xué)生的學(xué)號(hào)和姓名寫入到”candidate.txt”文件中。打開文件用open()函數(shù),用”r”只讀模式打開文件”candidate0.txt”,用”w”模式創(chuàng)建文件”candidate.txt”,并定義一個(gè)列表L來存儲(chǔ)學(xué)號(hào)和姓名(做中轉(zhuǎn))。\r\n”candidate0.txt”文件中有10行數(shù)據(jù),需要用readlines()函數(shù)讀入所有行,以每行為元素形成列表lines,然后用for循環(huán)遍歷該列表中的每個(gè)元素。在遍歷每個(gè)元素時(shí),用strip()方法刪除元素首尾的空格,用split()方法以空格分隔學(xué)生的學(xué)號(hào)、姓名以及10門課成績(jī)得到列表student。然后對(duì)列表student使用for循環(huán)遍歷,用來判斷10門課程的成績(jī)是否都大于等于60,滿足條件就將列表student中的前兩個(gè)元素(即學(xué)號(hào)和姓名)追加到列表L中。\r\n

最后,通過for循環(huán)提取列表L中的所有元素,用空格分隔每個(gè)元素,并添加換行符,寫入到文件”candidate.txt”中,再關(guān)閉所有文件。

52.num=eval(input("輸入數(shù)字:”))Print(”對(duì)應(yīng)的二進(jìn)制數(shù):{0:b}\\n八進(jìn)制數(shù):{0:o}\\n十六進(jìn)制數(shù):{0:x}”.format(num))考查format()方法的使用。格式控制標(biāo)記可以使用變量來表示,即用槽來指定對(duì)應(yīng)的控制標(biāo)記及數(shù)量,模板字符串在本題中總共有3個(gè)槽,即參數(shù)變量需要3個(gè),但此時(shí)的參數(shù)只有一個(gè),這里需要指定對(duì)應(yīng)的變量。<類型\r\n>\r\n表示輸出整數(shù)和浮點(diǎn)數(shù)類型的格式規(guī)則。b表示二進(jìn)制;o表示八進(jìn)制;大寫的X表示大寫的十六進(jìn)制。因此第1空填入o:b,第2空填入0:o,第3空填入0:X。

53.s=input(“請(qǐng)輸入一個(gè)十進(jìn)制數(shù):”)num=int(s)Prim(”轉(zhuǎn)換成二進(jìn)制數(shù)是:{:b}".format(num))本題考查input()函數(shù)和format()方法的使用。由于inPiit()函數(shù)返回的結(jié)果為字符串類型,所以需要將s轉(zhuǎn)換為整數(shù)類型用于計(jì)算,這可以使用int()函數(shù),因此第1空應(yīng)填入int(s)。題目要求以二進(jìn)制數(shù)輸出,可使用format()方法完成,對(duì)于整數(shù)類型,輸出格式包括6種:b表示輸出整數(shù)的二進(jìn)制方式;C表示輸出整數(shù)對(duì)應(yīng)的unicode字符;d表示輸出整數(shù)的十進(jìn)制方式;0表示輸出整數(shù)的八進(jìn)制方式;x表示輸出整數(shù)的小寫十六進(jìn)制方式;X表示輸出整數(shù)的大寫十六進(jìn)制方式。因此第2空應(yīng)填入:b,第3空應(yīng)填入num。江蘇省鎮(zhèn)江市全國(guó)計(jì)算機(jī)等級(jí)考試Python語言程序設(shè)計(jì)學(xué)校:________班級(jí):________姓名:________考號(hào):________

一、單選題(30題)1.下列敘述中正確的是()。

A.棧是一種先進(jìn)先出的線性表B.隊(duì)列是一種后進(jìn)先出的線性表C.棧與隊(duì)列都是非線性結(jié)構(gòu)D.以上3種說法都不對(duì)

2.以下關(guān)于Python中字典的描述正確的是()。

A.字典用花括號(hào)({})創(chuàng)建,每個(gè)元素都是一個(gè)鍵值對(duì)

B.創(chuàng)建字典只能通過dict()函數(shù)

C.字典中不可以嵌套字典

D.使用del語句進(jìn)行字典操作時(shí),不需要指定字典名和要?jiǎng)h除的鍵

3.如果一個(gè)函數(shù)沒有return語句,調(diào)用它后的返回值為()

A.0B.TrueC.FalseD.None

4.以下操作中對(duì)象t=(1,3.7,5+2j,'test'),哪個(gè)是正確的()

A.t.remove(0)B.t.count()C.t.sortD.list(t)

5.以下程序的輸出結(jié)果是()。ss=set(“htslbht”)sorted(ss)foriinss: print(i,end=‘’)

A.hlbstB.htslbhtC.tsblthD.hhlstt

6.下面對(duì)于類的說法錯(cuò)誤的是()。

A.類是一種實(shí)例

B.在類進(jìn)行實(shí)例化時(shí)將會(huì)首先執(zhí)行該類中的int方法

C.在對(duì)類進(jìn)行實(shí)例化時(shí),傳入的實(shí)參不用帶上self,它在類的執(zhí)行過程中將自行帶上

D.類中的變量前帶有前綴self意味著此變量在類中任意位置可以使用

7.Python語言中,以下表達(dá)式結(jié)果為False的選項(xiàng)是()。

A.”CD”<”CDFG”B.”DCBA”<”DC”C.””<”G”D.”LOVE”>”love”

8.在Python中,關(guān)于數(shù)據(jù)類型的描述錯(cuò)誤的是()。

A.整數(shù)的書寫格式支持十進(jìn)制、二進(jìn)制、八進(jìn)制和十六進(jìn)制

B.如果想知道參數(shù)的數(shù)據(jù)類型,那么可以使用type()函數(shù)獲得

C.整數(shù)、浮點(diǎn)數(shù)、復(fù)數(shù)和布爾值都是Python的基本數(shù)據(jù)類型

D.浮點(diǎn)數(shù)是帶有小數(shù)的數(shù)字,它存在范圍的限制,如果計(jì)算結(jié)果超出上限和下限,則不會(huì)報(bào)錯(cuò),但會(huì)有warning的警告

9.有3個(gè)關(guān)系R、S、T如下:

則由關(guān)系R和S得到關(guān)系T的運(yùn)算是()。

A.自然連接B.差C.交D.并

10.在Python中,將二維數(shù)據(jù)寫入CSV文件,最可能使用的函數(shù)是()。

A.write()B.split()C.join()D.exists()

11.下面代碼的輸出結(jié)果是()。letter=[’A’,’B’,’C’,’D’,’D’,’D’]foriinletter。:ifi==’D’:letter.remove(i)print(letter’)

A.[’A’,’B’,’C’]

B.[’A’,’B’,’C’,’D’,’D’]

C.[’A’,’B’,’C’,’D’,’D’,’D’]

D.[’A’,’B’,’C’,’D’]

12.一個(gè)棧的初始狀態(tài)為空?,F(xiàn)將元素1、2、3、4、5、A、B、C、D、E依次入棧,然后再依次出棧,則元素出棧的順序是()。

A.12345ABCDEB.EDCBA54321C.ABCDE12345D.54321EDCBA

13.在屏幕上輸出HelloWorld,使用的Python語句是()。

A.printf(‘HelloWorld’)

B.print(HelloWorld)

C.print(“HelloWorld”)

D.printf(“HelloWorld”)

14.以下程序的輸出結(jié)果是()。deffunc(a,b): a**=b returnas=func(2,5)print(s)

A.10B.20C.32D.5

15.一間宿舍可住多個(gè)學(xué)生,則實(shí)體宿舍和學(xué)生之間的聯(lián)系是()。

A.—對(duì)一B.—對(duì)多C.多對(duì)一D.多對(duì)多

16.下列數(shù)據(jù)結(jié)構(gòu)中,能夠按照“先進(jìn)后出”原則存取數(shù)據(jù)的是()。

A.循環(huán)隊(duì)列B.棧C.隊(duì)列D.二叉樹

17.以下關(guān)于Python的描述正確的是()。

A.字典的創(chuàng)建必須使用dict()函數(shù)

B.列表和字符串屬于序列,但元組不屬于序列

C.Python只有一種內(nèi)置的映射類型,就是字典

D.字符串可以進(jìn)行切片并賦值

18.下列哪個(gè)語句在Python中是非法的?()

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

19.以下關(guān)于浮點(diǎn)數(shù)3.0和整數(shù)3的描述中,正確的是()。

A.兩者使用相同的硬件執(zhí)行單元B.兩者使用相同的計(jì)算機(jī)指令處理方法C.兩者是相同的數(shù)據(jù)類型D.兩者具有相同的值

20.以下關(guān)于字符串的描述正確的是()。

A.字符應(yīng)視為長(zhǎng)度為1或2的字符串

B.字符串中的字符可進(jìn)行數(shù)學(xué)運(yùn)算,但進(jìn)行數(shù)學(xué)運(yùn)算的字符必須為數(shù)字

C.在三引號(hào)字符串中可包含換行回車等特殊的字符

D.字符串可以進(jìn)行切片賦值

21.以下代碼的輸出結(jié)果是()。Is=[[1,2,3],’python’,[[4,5,’ABC’],6],[7,8]]print(ls[2][l])

A.'ABC'B.pC.4D.6

22.表達(dá)式divmod(40,3)的結(jié)果是()。

A.13,1B.(13,1)C.13D.1

23.以下哪種類型是Python的映射類型?()

A.strB.tupleC.listD.dict

24.執(zhí)行以下代碼的結(jié)果是?A.300B.400C.500D.600

25.關(guān)于Python中is與==說法正確的是

A.is對(duì)比兩個(gè)變量指向是否為同一對(duì)象,==對(duì)比兩個(gè)變量指向?qū)ο笫欠駷橥?/p>

B.is對(duì)比兩個(gè)變量指向?qū)ο笫欠駷橥恢?==是對(duì)比兩個(gè)變量指向是否為同一對(duì)象

C.is與==除均可用于比較對(duì)象是否為同一對(duì)象外,==還可以用于比較對(duì)象的值

D.以上說法均不正確

26.支持子程序調(diào)用的數(shù)據(jù)結(jié)構(gòu)是()。

A.棧B.樹C.隊(duì)列D.二叉樹

27.以下對(duì)Python文件處理的描述中,錯(cuò)誤的是()。

A.當(dāng)文件以文本方式打開時(shí),讀/寫按照字節(jié)流方式

B.Python能夠以文本和二進(jìn)制兩種方式處理文件

C.Python通過解釋器內(nèi)置的open()函數(shù)打開一個(gè)文件

D.文件使用結(jié)束后可以用close()方法關(guān)閉,釋放文件的使用授權(quán)

28.需求分析的主要任務(wù)是()。

A.確定軟件系統(tǒng)的功能B.確定軟件開發(fā)方法C.確定軟件開發(fā)工具D.確定軟件開發(fā)人員

29.下面代碼輸出的結(jié)果是()。a=divmod(5,2)b=divmod(2,6)c=set(a+b)print(sum(c))

A.3B.5C.2D.O

30.以下關(guān)于Python技術(shù)特點(diǎn)的描述中,錯(cuò)誤的是()。

A.對(duì)于需要更快執(zhí)行速度的功能,例如數(shù)值計(jì)算和動(dòng)畫,Python可以調(diào)用C語言編寫的底層代碼

B.Python比大部分編程語言具有更高的軟件開發(fā)產(chǎn)量和簡(jiǎn)潔性

C.Python是解釋執(zhí)行的,因此執(zhí)行速度比編譯型語言慢

D.Python是腳本語言,主要用作系統(tǒng)編程和Web訪問的開發(fā)語言

二、判斷題(10題)31.對(duì)文件進(jìn)行讀寫操作之后必須顯式關(guān)閉文件以確保所有內(nèi)容都得到保存。

A.是B.否

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

A.是B.否

33.一個(gè)數(shù)字5也是合法的Python表達(dá)式。

A.是B.否

34.元組可以作為字典的“鍵”。

A.是B.否

35.假設(shè)random模塊已導(dǎo)入,那么表達(dá)式random.sample(range(10),20)的作用是生成20個(gè)不重復(fù)的整數(shù)。

A.是B.否

36.表達(dá)式{1,3,2}>{1,2,3}的值為True。

A.是B.否

37.Python列表、元組、字符串都屬于有序序列。

A.是B.否

38.列表對(duì)象的extend()方法屬于原地操作,調(diào)用前后列表對(duì)象的地址不變。

A.是B.否

39.二進(jìn)制文件不能使用記事本程序打開。

A.是B.否

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

A.是B.否

三、填空題(10題)41.表達(dá)式abs(3+4j)的值為____________。

42.列表、元組、字符串是Python的_________(有序?無序)序列。

43.已知x={1:1},那么執(zhí)行語句x[2]=2之后,len(x)的值為____________。

44.使用列表推導(dǎo)式得到100以內(nèi)所有能被13整除的數(shù)的代碼可以寫作___________________________________。

45.字典對(duì)象的______________方法返回字典的“值”列表。

46.表達(dá)式list(str([1,2,3]))==[1,2,3]的值為______________。

47.Python安裝擴(kuò)展庫常用的是_______工具。

48.表達(dá)式(1,2,3)+(4,5)的值為__________________。

49.表達(dá)式[str(i)foriinrange(3)]的值為____________。

50.表達(dá)式'C:\\Windows\\notepad.exe'.startswith('C:')的值為_________。

四、操作題(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è)文件“PY103.py”,請(qǐng)寫代碼替換橫線,不修改其他代碼,實(shí)現(xiàn)以下功能。用鍵盤輸入十進(jìn)制整數(shù),按要求將這個(gè)整數(shù)轉(zhuǎn)換為二進(jìn)制、八進(jìn)制及十六進(jìn)制(大寫)并輸出到屏幕。例如:輸入數(shù)字:425對(duì)應(yīng)的二進(jìn)制數(shù):110101001對(duì)應(yīng)的八進(jìn)制數(shù):651對(duì)應(yīng)的十六進(jìn)制數(shù):1A9試題程序:#請(qǐng)?jiān)赺____處使用一行代碼或表達(dá)式替換#注意:請(qǐng)不要修改其他已給出代碼num=eval(input("輸入數(shù)字:"))print("對(duì)應(yīng)的二進(jìn)制數(shù):{_____(1)_____}\n八進(jìn)制數(shù):{_____(2)_____}\n十六進(jìn)制數(shù):{_____(3)_____}".format(num))試題答案:num=eval(input("輸入數(shù)字:”))Print(”對(duì)應(yīng)的二進(jìn)制數(shù):{0:b}\n八進(jìn)制數(shù):{0:o}\n十六進(jìn)制數(shù):{0:x}”.format(num))

53.在考生文件夾下有一個(gè)文件“PY102.py”,請(qǐng)按照文件內(nèi)的說明,完善代碼,實(shí)現(xiàn)下面功能:用鍵盤輸入一個(gè)十進(jìn)制數(shù)保存在變量s中,轉(zhuǎn)換為二進(jìn)制數(shù)輸出顯示在屏幕上,示例如下。請(qǐng)輸入一個(gè)十進(jìn)制數(shù):25轉(zhuǎn)換成二進(jìn)制數(shù)是:11001試題程序:#請(qǐng)?jiān)诔绦虻腳____處使用一行代碼或表達(dá)式替換#注意:請(qǐng)不要修改其他已給出代碼s=input("請(qǐng)輸入一個(gè)十進(jìn)制數(shù):")num=_____(1)_____print("轉(zhuǎn)換成二進(jìn)制數(shù)是:{_____(2)_____}".format(_____(3)_____))

參考答案

1.D棧是一種先進(jìn)后出的線性表,隊(duì)列是一種先進(jìn)先出的線性表,棧與隊(duì)列都是線性結(jié)構(gòu)。本題選擇D選項(xiàng)。

2.A創(chuàng)建字典時(shí)可以使用花括號(hào)({})建立;字典中可以嵌套字典;使用del語句操作字典時(shí),語法格式為del字典名[<鍵名\n>]。本題選擇A選項(xiàng)。

3.D

4.D

5.Aset()函數(shù)是將其他的組合數(shù)據(jù)類型變成集合類型,返回結(jié)果是一個(gè)無重復(fù)且排序任意的集合n因此,set(“htslbht”)的返回值是一個(gè)類似{‘h’,‘l’,‘b’,‘s’,‘t’}的集合,然后將其賦值給ss。sorted(ss)的返回值是對(duì)ss進(jìn)行排序后的結(jié)果,即執(zhí)行sorted(ss)后,ss的值并沒有改變,最后仍輸出hlbst。本題選擇A選項(xiàng)。

6.AA選項(xiàng)中類只是一種抽象事物的分類,對(duì)象才是一種實(shí)例。本題選擇A選項(xiàng)。

7.B字符串比較規(guī)則:從第一個(gè)字符開始,位置一一對(duì)應(yīng)比較編碼大??;當(dāng)?shù)谝粋€(gè)字符串全部字符和另一個(gè)字符串的前部分字符相同時(shí),長(zhǎng)度長(zhǎng)的字符串為大。本題選擇B選項(xiàng)。

8.D浮點(diǎn)數(shù)的取值范圍為-10308~10308,浮點(diǎn)數(shù)之間的區(qū)分精度約為2.22×10-16。對(duì)除高精度科學(xué)計(jì)算外的絕大部分運(yùn)算來說,浮點(diǎn)數(shù)類型的數(shù)值范圍和小數(shù)精度足夠“可靠”,一般認(rèn)為浮點(diǎn)數(shù)類型沒有范圍限制。如果計(jì)算結(jié)果超出上限和下限會(huì)產(chǎn)生溢出錯(cuò)誤。本題選擇D選項(xiàng)。

9.B關(guān)系T中的元組是關(guān)系R中有而關(guān)系S中沒有的元組的集合,所以進(jìn)行的是差運(yùn)算。本題選擇B選項(xiàng)。

10.C在Python中,二維列表對(duì)象輸出CSV文件時(shí),采用遍歷循環(huán)和字符串的join()方法相結(jié)合的方法。方法如下:#ls代表二維列表,此處省略f=open('cpi.csv','w')forrowinIs£.write(“,'.join(row)\\n')f.close()本題選擇C選項(xiàng)。

11.D遍歷列表letter,當(dāng)i==’D’時(shí),執(zhí)行l(wèi)etter.remove(i),此時(shí)列表letter=[’A’,’B’,’C’,’D’,’D’],再遍歷當(dāng)i==’D’,執(zhí)行l(wèi)etter.remove(i),此時(shí)列表letter=[’A’,’B’,’C’,’D’]。因?yàn)榱斜碇械脑仉S著“D”元素的刪除而減少,當(dāng)刪除第一個(gè)“D”元素之后,列表元素的個(gè)數(shù)即變?yōu)?,for循環(huán)又是控制循環(huán)次數(shù)的,因此只遍歷5次,當(dāng)?shù)诙€(gè)“D”元素刪除時(shí),循環(huán)結(jié)束。

12.B解析:棧是一種特殊的線性表,這種線性表只能在固定的一端進(jìn)行插入和刪除操作,允許插入和刪除的一端稱為棧頂,另一端稱為棧底。一個(gè)新元素只能從棧頂一端進(jìn)入,刪除時(shí),只能刪除棧頂?shù)脑?,即剛剛被插入的元素。這表明棧的運(yùn)算規(guī)則是“先進(jìn)后出”(或稱“后進(jìn)先出”)。在棧頂進(jìn)行插入運(yùn)算,稱為進(jìn)棧(或入棧),在棧頂進(jìn)行刪除運(yùn)算,稱為退棧(或出棧)。本題中,依次進(jìn)棧,即依次插入元素1、2、3、4、5、A、B、C、D、E,依次出棧,即依次刪除元素,根據(jù)棧“先進(jìn)后出”的規(guī)則,應(yīng)該以倒序出棧。即元素出棧順序?yàn)镋DCBA54321。

13.C在Python中,輸出是Print()函數(shù),HelloWorld是字符串類型,需要加單引號(hào)或雙引號(hào)。本題選擇C選項(xiàng)。

14.C該函數(shù)的功能是計(jì)算a的b次方,運(yùn)算符“**”表示冪運(yùn)算,s=2**5=32。本題選擇C選項(xiàng)。

15.B因?yàn)橐婚g宿舍可以住多個(gè)學(xué)生即多個(gè)學(xué)生住在一個(gè)宿舍中,但一個(gè)學(xué)生只能住一間宿舍,所以實(shí)體宿舍和學(xué)生之間是一對(duì)多的關(guān)系。本題選擇B選項(xiàng)。

16.B棧是按先進(jìn)后出的原則組織數(shù)據(jù)的。隊(duì)列是按先進(jìn)先出的原則組織數(shù)據(jù)。本題選擇B選項(xiàng)。

17.Cdict()函數(shù)和{}都可以創(chuàng)建字典;序列類型包括列表、元組及字符串;字符串可以切片訪問,但是不能賦值。本題選擇C選項(xiàng)。

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

19.D浮點(diǎn)數(shù)3.0和整數(shù)3具有相同的值,硬件執(zhí)行單元、計(jì)算機(jī)指令處理方法和數(shù)據(jù)類型均不相同。本題選擇D選項(xiàng)。

20.C字符應(yīng)視為長(zhǎng)度為1的字符串;字符串中的字符不可以進(jìn)行數(shù)學(xué)運(yùn)算,如果是數(shù)字字符串需要將其轉(zhuǎn)換為數(shù)值類型方可計(jì)算;字符串可進(jìn)行切片,但不能賦值。

21.D列表索引從0開始,所以ls[2]\n[1]指的是列表中索引為2的元素[[4,5,’ABC’],6]中索引為1的元素6,所以輸出結(jié)果是6。本題選擇D選項(xiàng)。

22.Bdivmod(x,y)函數(shù)用來計(jì)算x和y的除余結(jié)果,返回兩個(gè)值,分別是:x與y的整數(shù)除,即x//y,以及x與y的余數(shù),即x%y。返回的兩個(gè)值組成了一個(gè)元組類型,即小括號(hào)包含的兩個(gè)元素(x//y,x%y)。40//3=13,40%3=1,故答案為B項(xiàng)。

23.D映射類型是“鍵一值”數(shù)據(jù)項(xiàng)的組合,每個(gè)元素是一個(gè)鍵值對(duì),即元素是(key,value),元素之間是無序的。鍵值對(duì)是一種二元關(guān)系,源于屬性和值的映射關(guān)系。str、tuple和list都是序列類型,diet,是映射類型。

24.B

25.A

26.A棧支持子程序調(diào)用。棧是一種只能在一端進(jìn)行插入或刪除的線性表,在主程序調(diào)用子函數(shù)時(shí)要首先保存主程序當(dāng)前的狀態(tài),然后轉(zhuǎn)去執(zhí)行子程序,最終把子程序的執(zhí)行結(jié)果返回到主程序中調(diào)用子程序的位置,繼續(xù)向下執(zhí)行,這調(diào)用符合找的特點(diǎn)。本題選擇A選項(xiàng)。

27.A文件包括文本文件和二進(jìn)制文件兩種類型。Python對(duì)文本文件和二進(jìn)制文件采用統(tǒng)一的操作步驟,即“打開-操作-關(guān)閉”,B選項(xiàng)正確。采用文本方式讀入文件,文件經(jīng)過編碼形成字符串,輸出有含義的字符;采用二進(jìn)制方式打開文件,文件被解析為字節(jié)流,A選項(xiàng)錯(cuò)誤。Python通過open()函數(shù)打開一個(gè)文件,并返回一個(gè)操作這個(gè)文件的變量,語法格式為<變置名>=open(<文件路徑及文件名>,<打開模式>\n),C選項(xiàng)正確。文件使用結(jié)束后要用clooe()方法關(guān)閉,釋放文件的使用授權(quán),語法格式為<變置名>dose()\n,D選項(xiàng)正確。本題選擇A選項(xiàng)。

28.A需求分析是軟件開發(fā)之前必須要做的準(zhǔn)備工作之一。需求是指用戶對(duì)目標(biāo)軟件系統(tǒng)在功能、行為、性能、設(shè)計(jì)約束等方面的期望。故需求分析的主要任務(wù)是確定軟件系統(tǒng)的功能。本題選擇A選項(xiàng)。

29.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。

30.DPython是一種解釋型高級(jí)通用腳本語言,具有通用性,可以用于幾乎任何與程序設(shè)計(jì)相關(guān)應(yīng)用的開發(fā)。Python主要應(yīng)用于以下幾個(gè)領(lǐng)域:Web開發(fā)、爬蟲開發(fā)、科學(xué)計(jì)算、高性能服務(wù)器后端、開發(fā)界面程序。QT也提供了Python的支持,因?yàn)镻ython的開源庫包含對(duì)C/C++lib庫的調(diào)用。D選項(xiàng)中,“主要”二字太過絕對(duì)。本題選擇D選項(xiàng)。

31.Y

32.Y

33.Y

34.Y

35.N

36.N

37.Y

38.Y

39.N

40.N

41.5.0

42.有序

43.2

44.[iforiinrange(100)ifi%13==0]

45.values()

46.False

47.pip

48.(1,2,3,4,5)

49.['0','1','2']

50.True

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è)元素,并添加換行符,寫入到文件”candidate0.txt”中,再關(guān)閉所有文件。\r\n

(2)本題涉及”candidate0.txt”和”candidate.txt”兩個(gè)文件。首先要讀取”candidate0.txt”文件中的信息,通過程序判斷每個(gè)學(xué)生的所有課程成績(jī)是否都大于等于60,滿足條件的將該學(xué)生的學(xué)號(hào)和姓名寫入到”candidate.txt”文件中。打開文件用open()函數(shù),用”r”只讀模式打開文件”candidate0.txt”,用”w”模式創(chuàng)建文件”candidate.txt”,并定義一個(gè)列表L來存儲(chǔ)學(xué)號(hào)和姓名(做中轉(zhuǎn))。\r\n”candidate0.txt”文件中有10行數(shù)據(jù),需要用readlines()函數(shù)讀入所有行,以每行為元素形成列表lines,然后用for循環(huán)遍歷該列表中的每個(gè)元素。在遍歷每個(gè)元素時(shí),用strip()方法刪除元素首尾的空格,用split()方法以空格分隔學(xué)生的學(xué)號(hào)、姓名以及10門課成績(jī)得到列表student。然后對(duì)列表student使用for循環(huán)遍歷,用來判斷10門課程的成績(jī)是否都大于等于60,滿足條件就將列表student中的前兩個(gè)元素(即學(xué)號(hào)和姓名)追加到列表L中。\r\n

最后,通過for循環(huán)提取列表L中的所有元素,用空格分隔每個(gè)元素,并添加換行符,寫入到文件”candidate.txt”中,再關(guān)閉所有文件。

52.num=eval(input("輸入數(shù)字:”))Print(”對(duì)應(yīng)的二進(jìn)制數(shù):{0:b}\\n八進(jìn)制數(shù):{0:o}\\n十六進(jìn)制數(shù):{0:x}”.format(num))考查format()方法的使用。格式控制標(biāo)記可以使用變量來表示,即用槽來指定對(duì)應(yīng)的控制標(biāo)記及數(shù)量,模板字符串在本題中總共有3個(gè)槽,即參數(shù)變量需要3個(gè),但此時(shí)的參數(shù)只有一個(gè),這里需要指定對(duì)應(yīng)的變量。<類型\r\n>\r\n表示輸出整數(shù)和浮點(diǎn)數(shù)類型的格式規(guī)則。b表示二進(jìn)制;o表示八進(jìn)制;大寫的X表示大寫的十六進(jìn)制。因此第1空填入o:b,第2空填入0:o,第3空填入0:X。

53.s=input(“請(qǐng)輸入一個(gè)十進(jìn)制數(shù):”)num=int(s)Prim(”轉(zhuǎn)換成二進(jìn)制數(shù)是:{:b}".format(num))本題考查input()函數(shù)和format()方法的使用。由于inPiit()函數(shù)返回的結(jié)果為字符串類型,所以需要將s轉(zhuǎn)換為整數(shù)類型用于計(jì)算,這可以使用int()函數(shù),因此第1空應(yīng)填入int(s)。題目要求以二進(jìn)制數(shù)輸出,可使用format()方法完成,對(duì)于整數(shù)類型,輸出格式包括6種:b表示輸出整數(shù)的二進(jìn)制方式;C表示輸出整數(shù)對(duì)應(yīng)的unicode字符;d表示輸出整數(shù)的十進(jìn)制方式;0表示輸出整數(shù)的八進(jìn)制方式;x表示輸出整數(shù)的小寫十六進(jìn)制方式;X表示輸出整數(shù)的大寫十六進(jìn)制方式。因此第2空應(yīng)填入:b,第3空應(yīng)填入num。江蘇省鎮(zhèn)江市全國(guó)計(jì)算機(jī)等級(jí)考試Python語言程序設(shè)計(jì)學(xué)校:________班級(jí):________姓名:________考號(hào):________

一、單選題(30題)1.下列敘述中正確的是()。

A.棧是一種先進(jìn)先出的線性表B.隊(duì)列是一種后進(jìn)先出的線性表C.棧與隊(duì)列都是非線性結(jié)構(gòu)D.以上3種說法都不對(duì)

2.以下關(guān)于Python中字典的描述正確的是()。

A.字典用花括號(hào)({})創(chuàng)建,每個(gè)元素都是一個(gè)鍵值對(duì)

B.創(chuàng)建字典只能通過dict()函數(shù)

C.字典中不可以嵌套字典

D.使用del語句進(jìn)行字典操作時(shí),不需要指定字典名和要?jiǎng)h除的鍵

3.如果一個(gè)函數(shù)沒有return語句,調(diào)用它后的返回值為()

A.0B.TrueC.FalseD.None

4.以下操作中對(duì)象t=(1,3.7,5+2j,'test'),哪個(gè)是正確的()

A.t.remove(0)B.t.count()C.t.sortD.list(t)

5.以下程序的輸出結(jié)果是()。ss=set(“htslbht”)sorted(ss)foriinss: print(i,end=‘’)

A.hlbstB.htslbhtC.tsblthD.hhlstt

6.下面對(duì)于類的說法錯(cuò)誤的是()。

A.類是一種實(shí)例

B.在類進(jìn)行實(shí)例化時(shí)將會(huì)首先執(zhí)行該類中的int方法

C.在對(duì)類進(jìn)行實(shí)例化時(shí),傳入的實(shí)參不用帶上self,它在類的執(zhí)行過程中將自行帶上

D.類中的變量前帶有前綴self意味著此變量在類中任意位置可以使用

7.Python語言中,以下表達(dá)式結(jié)果為False的選項(xiàng)是()。

A.”CD”<”CDFG”B.”DCBA”<”DC”C.””<”G”D.”LOVE”>”love”

8.在Python中,關(guān)于數(shù)據(jù)類型的描述錯(cuò)誤的是()。

A.整數(shù)的書寫格式支持十進(jìn)制、二進(jìn)制、八進(jìn)制和十六進(jìn)制

B.如果想知道參數(shù)的數(shù)據(jù)類型,那么可以使用type()函數(shù)獲得

C.整數(shù)、浮點(diǎn)數(shù)、復(fù)數(shù)和布爾值都是Python的基本數(shù)據(jù)類型

D.浮點(diǎn)數(shù)是帶有小數(shù)的數(shù)字,它存在范圍的限制,如果計(jì)算結(jié)果超出上限和下限,則不會(huì)報(bào)錯(cuò),但會(huì)有warning的警告

9.有3個(gè)關(guān)系R、S、T如下:

則由關(guān)系R和S得到關(guān)系T的運(yùn)算是()。

A.自然連接B.差C.交D.并

10.在Python中,將二維數(shù)據(jù)寫入CSV文件,最可能使用的函數(shù)是()。

A.write()B.split()C.join()D.exists()

11.下面代碼的輸出結(jié)果是()。letter=[’A’,’B’,’C’,’D’,’D’,’D’]foriinletter。:ifi==’D’:letter.remove(i)print(letter’)

A.[’A’,’B’,’C’]

B.[’A’,’B’,’C’,’D’,’D’]

C.[’A’,’B’,’C’,’D’,’D’,’D’]

D.[’A’,’B’,’C’,’D’]

12.一個(gè)棧的初始狀態(tài)為空。現(xiàn)將元素1、2、3、4、5、A、B、C、D、E依次入棧,然后再依次出棧,則元素出棧的順序是()。

A.12345ABCDEB.EDCBA54321C.ABCDE12345D.54321EDCBA

13.在屏幕上輸出HelloWorld,使用的Python語句是()。

A.printf(‘HelloWorld’)

B.print(HelloWorld)

C.print(“HelloWorld”)

D.printf(“HelloWorld”)

14.以下程序的輸出結(jié)果是()。deffunc(a,b): a**=b returnas=func(2,5)print(s)

A.10B.20C.32D.5

15.一間宿舍可住多個(gè)學(xué)生,則實(shí)體宿舍和學(xué)生之間的聯(lián)系是()。

A.—對(duì)一B.—對(duì)多C.多對(duì)一D.多對(duì)多

16.下列數(shù)據(jù)結(jié)構(gòu)中,能夠按照“先進(jìn)后出”原則存取數(shù)據(jù)的是()。

A.循環(huán)隊(duì)列B.棧C.隊(duì)列D.二叉樹

17.以下關(guān)于Python的描述正確的是()。

A.字典的創(chuàng)建必須使用dict()函數(shù)

B.列表和字符串屬于序列,但元組不屬于序列

C.Python只有一種內(nèi)置的映射類型,就是字典

D.字符串可以進(jìn)行切片并賦值

18.下列哪個(gè)語句在Python中是非法的?()

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

19.以下關(guān)于浮點(diǎn)數(shù)3.0和整數(shù)3的描述中,正確的是()。

A.兩者使用相同的硬件執(zhí)行單元B.兩者使用相同的計(jì)算機(jī)指令處理方法C.兩者是相同的數(shù)據(jù)類型D.兩者具有相同的值

20.以下關(guān)于字符串的描述正確的是()。

A.字符應(yīng)視為長(zhǎng)度為1或2的字符串

B.字符串中的字符可進(jìn)行數(shù)學(xué)運(yùn)算,但進(jìn)行數(shù)學(xué)運(yùn)算的字符必須為數(shù)字

C.在三引號(hào)字符串中可包含換行回車等特殊的字符

D.字符串可以進(jìn)行切片賦值

21.以下代碼的輸出結(jié)果是()。Is=[[1,2,3],’python’,[[4,5,’ABC’],6],[7,8]]print(ls[2][l])

A.'ABC'B.pC.4D.6

22.表達(dá)式divmod(40,3)的結(jié)果是()。

A.13,1B.(13,1)C.13D.1

23.以下哪種類型是Python的映射類型?()

A.strB.tupleC.listD.dict

24.執(zhí)行以下代碼的結(jié)果是?A.300B.400C.500D.600

25.關(guān)于Python中is與==說法正確的是

A.is對(duì)比兩個(gè)變量指向是否為同一對(duì)象,==對(duì)比兩個(gè)變量指向?qū)ο笫欠駷橥?/p>

B.is對(duì)比兩個(gè)變量指向?qū)ο笫欠駷橥恢?==是對(duì)比兩個(gè)變量指向是否為同一對(duì)象

C.is與==除均可用于比較對(duì)象是否為同一對(duì)象外,==還可以用于比較對(duì)象的值

D.以上說法均不正確

26.支持子程序調(diào)用的數(shù)據(jù)結(jié)構(gòu)是()。

A.棧B.樹C.隊(duì)列D.二叉樹

27.以下對(duì)Python文件處理的描述中,錯(cuò)誤的是()。

A.當(dāng)文件以文本方式打開時(shí),讀/寫按照字節(jié)流方式

B.Python能夠以文本和二進(jìn)制兩種方式處理文件

C.Python通過解釋器內(nèi)置的open()函數(shù)打開一個(gè)文件

D.文件使用結(jié)束后可以用close()方法關(guān)閉,釋放文件的使用授權(quán)

28.需求分析的主要任務(wù)是()。

A.確定軟件系統(tǒng)的功能B.確定軟件開發(fā)方法C.確定軟件開發(fā)工具D.確定軟件開發(fā)人員

29.下面代碼輸出的結(jié)果是()。a=divmod(5,2)b=divmod(2,6)c=set(a+b)print(sum(c))

A.3B.5C.2D.O

30.以下關(guān)于Python技術(shù)特點(diǎn)的描述中,錯(cuò)誤的是()。

A.對(duì)于需要更快執(zhí)行速度的功能,例如數(shù)值計(jì)算和動(dòng)畫,Python可以調(diào)用C語言編寫的底層代碼

B.Python比大部分編程語言具有更高的軟件開發(fā)產(chǎn)量和簡(jiǎn)潔性

C.Python是解釋執(zhí)行的,因此執(zhí)行速度比編譯型語言慢

D.Python是腳本語言,主要用作系統(tǒng)編程和Web訪問的開發(fā)語言

二、判斷題(10題)31.對(duì)文件進(jìn)行讀寫操作之后必須顯式關(guān)閉文件以確保所有內(nèi)容都得到保存。

A.是B.否

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

A.是B.否

33.一個(gè)數(shù)字5也是合法的Python表達(dá)式。

A.是B.否

34.元組可以作為字典的“鍵”。

A.是B.否

35.假設(shè)random模塊已導(dǎo)入,那么表達(dá)式random.sample(range(10),20)的作用是生成20個(gè)不重復(fù)的整數(shù)。

A.是B.否

36.表達(dá)式{1,3,2}>{1,2,3}的值為True。

A.是B.否

37.Python列表、元組、字符串都屬于有序序列。

A.是B.否

38.列表對(duì)象的extend()方法屬于原地操作,調(diào)用前后列表對(duì)象的地址不變。

A.是B.否

39.二進(jìn)制文件不能使用記事本程序打開。

A.是B.否

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

A.是B.否

三、填空題(10題)41.表達(dá)式abs(3+4j)的值為____________。

42.列表、元組、字符串是Python的_________(有序?無序)序列。

43.已知x={1:1},那么執(zhí)行語句x[2]=2之后,len(x)的值為____________。

44.使用列表推導(dǎo)式得到100以內(nèi)所有能被13整除的數(shù)的代碼可以寫作___________________________________。

45.字典對(duì)象的______________方法返回字典的“值”列表。

46.表達(dá)式list(str([1,2,3]))==[1,2,3]的值為______________。

47.Python安裝擴(kuò)展庫常用的是_______工具。

48.表達(dá)式(1,2,3)+(4,5)的值為__________________。

49.表達(dá)式[str(i)foriinrange(3)]的值為____________。

50.表達(dá)式'C:\\Windows\\notepad.exe'.startswith('C:')的值為_________。

四、操作題(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è)文件“PY103.py”,請(qǐng)寫代碼替換橫線,不修改其他代碼,實(shí)現(xiàn)以下功能。用鍵盤輸入十進(jìn)制整數(shù),按要求將這個(gè)整數(shù)轉(zhuǎn)換為二進(jìn)制、八進(jìn)制及十六進(jìn)制(大寫)并輸出到屏幕。例如:輸入數(shù)字:425對(duì)應(yīng)的二進(jìn)制數(shù):110101001對(duì)應(yīng)的八進(jìn)制數(shù):651對(duì)應(yīng)的十六進(jìn)制數(shù):1A9試題程序:#請(qǐng)?jiān)赺____處使用一行代碼或表達(dá)式替換#注意:請(qǐng)不要修改其他已給出代碼num=eval(input(

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論