




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
遼寧省遼陽市全國計(jì)算機(jī)等級(jí)考試Python語言程序設(shè)計(jì)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(30題)1.以下程序的意義是()。>>>car=‘BWM’>>>id(car)
A.查看變量所占的位數(shù)B.轉(zhuǎn)換成布爾值C.查看變量在內(nèi)存中的地址D.把變量中的元素隨機(jī)排列
2.以下程序的輸出結(jié)果是()。foriin”Nation”:forkinrange(2):ifi==’n’:breakprint(i,end=””)
A.aattiiooB.NNaattiiooC.NaattiioonD.aattiioonn
3.以下程序的輸出結(jié)果是()。a=divmod(5,2)b=divmod(2,6)c=set(a+b)print(sum(c))
A.3B.5C.2D.0
4.如果文件a.txt在目錄“C:\\A”下,執(zhí)行以下代碼會(huì)發(fā)生的操作是()。importosos.rmdir(r'C:\\A’)
A.刪除文件夾A,保留文件a.txt
B.刪除文件夾A和文件a.txt
C.刪除文件a.txt,保留文件夾A
D.OSError
5.下面程序輸出的結(jié)果是()。sl,s2=”Mom”,””Dad"Print(“{}loves{}format(s2,si))
A.DadlovesMomB.MomlovesDadC.sllovess2D.s2lovess1
6.下面關(guān)于遞歸函數(shù),描述錯(cuò)誤的是()。
A.遞歸函數(shù)必須有一個(gè)明確的結(jié)束條件
B.遞歸函數(shù)就是一個(gè)函數(shù)在內(nèi)部調(diào)用自身本身
C.遞歸效率不高,遞歸層次過多會(huì)導(dǎo)致棧溢出
D.每進(jìn)入更深一層的遞歸時(shí),問題規(guī)模相對(duì)于前一次遞歸是不變的
7.在Python中,屬于Web開發(fā)的第三方庫是()。
A.mayaviB.flaskC.PyQt5D.time
8.以下關(guān)于Python列表的描述中,正確的是()。
A.列表的長度和內(nèi)容都可以改變,但元素類型必須相同
B.不可以對(duì)列表進(jìn)行成員運(yùn)算操作、長度計(jì)算和分片
C.列表的索引是從1開始的
D.可以使用比較操作符(如>或<等)對(duì)列表進(jìn)行比較
9.在Python中,使用open()打開一個(gè)Windows操作系統(tǒng)D盤下的文件,路徑名錯(cuò)誤的是()。
A.D:\PythonTest\a.txt
B.D:\\PythonTest\\a.txt
C.D:/PythonTest/a.txt
D.D://PythonTest//a.txt
10.下面哪一種定義是類的私有成員?()
A._xxB._xx_C._xxxD.xxx
11.以下哪個(gè)語句不適宜對(duì)異常捕獲()
A.try..catchB.assertC.withD.ifelif
12.下面代碼的輸出結(jié)果是()。n=2deff(a):n=bool(a-2)returnnb=f(2)print(n,b)
A.20
B.0True
C.2False
D.0False
13.在E-R圖中,用來表示實(shí)體的圖形是()。
A.橢圓形B.矩形C.菱形D.三角形
14.以下代碼的輸出結(jié)果是()。a=5.2b=2.5print(a//b)
A.2.08B.2.1C.2D.2.0
15.下面代碼的輸出結(jié)果是()。print("calculationerror*')else:print("noerror")
A.calculationerrorB.noerrorC.9.0D.9.0noerror
16.關(guān)于Python文件打開模式,表示錯(cuò)誤的是()。
A.rtB.nbC.abD.wt
17.以下關(guān)于Python文件打開模式的描述中,錯(cuò)誤的是()。
A.只讀模式rB.覆蓋寫模式wC.追加寫模式aD.創(chuàng)建寫模式n
18.樹的度為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
19.下載但不安裝一個(gè)第三方庫的命名格式是()。
A.pipdownload<第三方庫名>
B.pipuninstall<第三方庫名>
C.pipinstall<第三方庫名>
D.pipsearch<第三方庫名>
20.現(xiàn)要將某氣象觀測(cè)站每天不同時(shí)間點(diǎn)的氣溫及濕度的觀察值保存,方便以后進(jìn)行調(diào)用及查詢,在Python3哪種數(shù)據(jù)結(jié)構(gòu)更合適()
A.字符串B.列表C.集合D.字典
21.以下語句不會(huì)引發(fā)異常的是()。
A.a=b=3+1jB.1+“1”C.3/0D.print“noerror”
22.下面代碼的輸出結(jié)果是()。>>>s=(3,)>>>type(s)
A.<class'diet'>
B.<class'tuple’>
C.<class'list'>
D.<class'set’>
23.下面代碼的輸出結(jié)果是()。deff(n):ifn==1:return1else:returnn*f(n—1)print(f(4))
A.24B.4C.0D.10
24.下列關(guān)于Python中復(fù)數(shù)類型的描述錯(cuò)誤的是()。
A.復(fù)數(shù)由實(shí)數(shù)部分和虛數(shù)部分構(gòu)成
B.復(fù)數(shù)可以看作二元有序?qū)崝?shù)對(duì)(a,b)
C.虛數(shù)部分必須有后綴j,且為小寫
D.復(fù)數(shù)中的虛數(shù)部分不能單獨(dú)存在,必須有實(shí)數(shù)部分
25.Python中文件的打開模式為“t”,對(duì)應(yīng)的文件打開模式為()。
A.只讀模式B.覆蓋寫模式C.文本文件模式D.二進(jìn)制文件模式
26.以下保留字不用于循環(huán)邏輯的是()。
A.tryB.elseC.forD.continue
27.下面代碼的輸出結(jié)果是()。list=[“1”,”3”,”5”]defapp(x):list.a(chǎn)ppend(x)app(”7”)print(list)
A.[’1’,’3’,’5’]B.[’1’,’3’,’5’,’7’]C.[’7’]D.”1,3,5,7”
28.以下關(guān)于分支結(jié)構(gòu)的描述中,錯(cuò)誤的是()。
A.if語句中語句塊執(zhí)行與否依賴于條件判斷
B.if語句中條件部分可以使用任何能夠產(chǎn)生True和False的語句和函數(shù)
C.二分支結(jié)構(gòu)有一種緊湊形式,使用保留字if和elif實(shí)現(xiàn)
D.多分支結(jié)構(gòu)用于設(shè)置多個(gè)判斷條件以及對(duì)應(yīng)的多條執(zhí)行路徑
29.下面的d是一個(gè)字典變量,能夠輸出數(shù)字2的語句是()。d={’food’:{’cake’:1,’egg’:5},’cake’:2,’egg’:3}
A.print(d[’food’][’egg’])
B.print(d[’cake’])
C.print(d[’food’][一1])
D.print(d[’cake’][1])
30.下列敘述中正確的是()。
A.找是“先進(jìn)先出”的線性表
B.隊(duì)列是“先進(jìn)后出”的線性表
C.循環(huán)隊(duì)列是非線性結(jié)構(gòu)
D.有序線性表既可以釆用順序存儲(chǔ)結(jié)構(gòu),也可以采用鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)
二、判斷題(10題)31.執(zhí)行語句frommathimportsin之后,可以直接使用sin()函數(shù),例如sin(3)。
A.是B.否
32.異常處理結(jié)構(gòu)也不是萬能的,處理異常的代碼也有引發(fā)異常的可能。
A.是B.否
33.定義函數(shù)時(shí),即使該函數(shù)不需要接收任何參數(shù),也必須保留一對(duì)空的圓括號(hào)來表示這是一個(gè)函數(shù)。
A.是B.否
34.放在一對(duì)三引號(hào)之間的任何內(nèi)容將被認(rèn)為是注釋。
A.是B.否
35.程序中異常處理結(jié)構(gòu)在大多數(shù)情況下是沒必要的。
A.是B.否
36.已知x=3,那么賦值語句x='abcedfg'是無法正常執(zhí)行的。
A.是B.否
37.異常處理結(jié)構(gòu)中的finally塊中代碼仍然有可能出錯(cuò)從而再次引發(fā)異常。
A.是B.否
38.無法刪除集合中指定位置的元素,只能刪除特定值的元素。
A.是B.否
39.字典可以作為集合的元素。
A.是B.否
40.在Python3.x中可以使用中文作為變量名。
A.是B.否
三、填空題(10題)41.表達(dá)式int(4**0.5)的值為____________。
42.Python擴(kuò)展庫______________和______________提供了圖像處理功能。
43.已知列表x=[1,2],那么執(zhí)行語句x.append([3])之后,x的值為_____________。
44.已知x={1:2},那么執(zhí)行語句x[2]=3之后,x的值為________________。
45.表達(dá)式1<2<3的值為_________。
46.表達(dá)式type(3)==int的值為__________。
47.表達(dá)式'abcabcabc'.count('abc')的值為_____________。
48.表達(dá)式abs(3+4j)的值為____________。
49.查看變量類型的Python內(nèi)置函數(shù)是________________。
50.表達(dá)式':'.join('abcdefg'.split('cd'))的值為______________。
四、操作題(3題)51.考生文件夾下存在一個(gè)Python源文件“PY301.py”,請(qǐng)按照文件內(nèi)說明修改代碼,實(shí)現(xiàn)以下功能。愷撒密碼是一種非常古老的加密算法,相傳當(dāng)年愷撒大帝行軍打仗時(shí)為了保證自己的命令不被敵軍知道,它采用了替換方法將信息中的每一個(gè)英文字母循環(huán)替換為字母表序列中該字母后面的第三個(gè)字母,即循環(huán)后三位,對(duì)應(yīng)關(guān)系如下。原文:ABCDEFGHIJKLMNOPQRSTUVWXYZ密文:DEFGHIJKLMNOPQRSTUVWXYZABC原文字母P,其密文字母C滿足如下條件。C=(P+3)mod26解密方法反之,滿足如下條件。P=(C-3)mod26愷撒密碼包括加密算法和解密算法兩個(gè)部分。愷撒密碼的加密算法程序首先接收用戶輸入的文本,然后對(duì)字母a?z和字母A?Z按照密碼算法進(jìn)行轉(zhuǎn)換,同時(shí)輸出。其他非英文字母原樣輸出。試題程序:#以下代碼為提示框架#請(qǐng)?jiān)?..處使用一行或多行代碼替換#注意..提示框架的代碼可以任意修改,以完成程序功能為準(zhǔn)intxt=input(“請(qǐng)輸入明文:")
52.考生文件夾下存在一個(gè)文件“PY202.py”,該文件是本題目的代碼提示框架,其中代碼可以任意修改。請(qǐng)?jiān)谠撐募芯帉懘a,以實(shí)現(xiàn)如下功能。用鍵盤輸入兩個(gè)大于0的整數(shù),按要求輸出這兩個(gè)整數(shù)之間(不包括這兩個(gè)整數(shù))的所有素?cái)?shù)。素?cái)?shù)又稱質(zhì)數(shù),是指除了1和它本身以外不能被其他整數(shù)整除的數(shù)。試題程序:#以下代碼為提示框架#請(qǐng)?jiān)?..處使用一行或多行代碼替換#請(qǐng)?jiān)赺____處使用一行代碼替換#注意:提示框架的代碼可以任意修改,以完成程序功能為準(zhǔn)lower=int(input(‘輸入?yún)^(qū)間最小值:’))upper=int(inputs(‘輸入?yún)^(qū)間最大值:’))fornuminrange(_____,_____):
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.Cid(x)是Python中的內(nèi)置函數(shù),用來查看變量在內(nèi)存中的地址。本題選擇C選項(xiàng)。
2.B在Python中對(duì)字母大小寫是敏感的,’N’和’n’是不同的字符。本題中,有兩層for循環(huán),即每個(gè)字符要輸出兩次,直到i=’n’時(shí),跳出循環(huán),執(zhí)行輸出語句。故答案為B項(xiàng)。
3.Adivmod(a,b)函數(shù)返回的是兩個(gè)數(shù)值的商和余數(shù),那么a和b的值分別是(2,1)和(0,2),而c是把a(bǔ)、b相加后轉(zhuǎn)為集合型,那么a+b為(2,1,0,2),轉(zhuǎn)成集合后即{0,1,2},最后是取總和的sum()函數(shù),所以相加的總和為3。本題選擇A選項(xiàng)。
4.D使用rmdir()刪除目錄之前要先清除其中所有的文件,否則會(huì)報(bào)OSError錯(cuò)誤。本題選擇D選項(xiàng)。
5.APython使用format()格式化方法,語法格式為<模板字符串>.format(\n<逗號(hào)分隔的參數(shù)>),其中模板字符串是一個(gè)由字符串和槽組成的字符串,用來控制字符串和變量的顯示效果。槽用花括號(hào)({})表示,對(duì)應(yīng)fcmnat()方法中逗號(hào)分隔的參數(shù)。如果模板字符串有多個(gè)槽,且槽內(nèi)沒有指定序號(hào),則按照槽出現(xiàn)的順序分別對(duì)應(yīng)format()方法中的不同參數(shù)。參數(shù)根據(jù)出現(xiàn)先后存在一個(gè)默認(rèn)序號(hào)。本題選擇A選項(xiàng)。
6.DA選項(xiàng)正確,遞歸函數(shù)必須要有一個(gè)明確的結(jié)束條件作為遞歸的出口;B選項(xiàng)正是遞歸函數(shù)的含義,正確;C選項(xiàng)正確,在計(jì)算機(jī)中,函數(shù)調(diào)用是通過棧這種數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn)的,每當(dāng)進(jìn)入一個(gè)函數(shù)調(diào)用,棧就會(huì)加一層棧幀,每當(dāng)函數(shù)返回,棧就會(huì)減一層棧幀,由于棧的大小不是無限的,所以,遞歸調(diào)用的次數(shù)過多,會(huì)導(dǎo)致棧溢出;D選項(xiàng),每當(dāng)進(jìn)入更深一層的遞歸時(shí),問題規(guī)模顯然會(huì)相對(duì)前一次遞歸減小。
7.B在Python中,屬于Web開發(fā)的第三方庫的有Django庫、pyramid庫及Flask庫。本題選擇B選項(xiàng)。
8.D列表是包含0個(gè)或多個(gè)元素的有序序列,屬于序列類型。列表用中括號(hào)([])表示,由于列表屬于序列類型,故繼承了序列類型的所有屬性和方法。索引是列表的基本操作,用于獲得列表中的一個(gè)元素,該操作沿用序列類型的索引方式,即正向遞增序號(hào)或反向遞減序號(hào),使用中括號(hào)作為索引操作符,索引號(hào)不得超過列表的元素范圍,否則將產(chǎn)生lndexError錯(cuò)誤。索引下標(biāo)從0開始。列表可以進(jìn)行元素增加、刪除、替換、查找等操作。列表沒有長度限制,元素類型可以不同,能夠包含其他的組合數(shù)據(jù)類型,可以使用比較操作符(如>或<等)對(duì)列表進(jìn)行比較,也可以對(duì)列表進(jìn)行成員運(yùn)算操作、長度計(jì)算和分片。故D項(xiàng)正確。
9.A在Python中,使用open()打開文件的操作過程中需要注意,由于“\\”是字符串中的轉(zhuǎn)義符,所以表示路徑時(shí),使用“\\\\”,“/”或“//”代替“\\”。本題選擇A選項(xiàng)。
10.C在Python中,類的定義中以一個(gè)下劃線開頭是成員的保護(hù)成員,以兩個(gè)下劃線開頭和結(jié)束的成員是系統(tǒng)定義的特殊成員,以兩個(gè)或多個(gè)下劃線開頭但不以兩個(gè)或多個(gè)下劃線結(jié)束的成員是私有成員,所以選C。
11.D
12.C這段代碼是全局變量、局部變量以及Python內(nèi)置函數(shù)bool()的一個(gè)結(jié)合。在函數(shù)內(nèi)部的局部變量名和函數(shù)外部全局變量名相同時(shí),調(diào)用函數(shù)時(shí),總是先找到函數(shù)內(nèi)部的局部變量名,所以當(dāng)a為2時(shí),經(jīng)過布爾型轉(zhuǎn)換之后的a\r\n-2,即b為False,而在函數(shù)外部只能訪問全局變量名,所以n仍為2,本題選擇C選項(xiàng)。
13.B在E—R圖中實(shí)體集用矩形,屬性用橢圓,聯(lián)系用菱形。
14.D“//”返回兩個(gè)數(shù)的整數(shù)商,且返回的類型滿足以下關(guān)系:①整數(shù)和浮點(diǎn)數(shù)混合運(yùn)算,輸出結(jié)果是浮點(diǎn)數(shù);②整數(shù)之間運(yùn)算,結(jié)果為整數(shù)。因此,5.2//2.5=2.0。
15.D只有當(dāng)程序未引發(fā)異常順利執(zhí)行完try中的代碼后,else語句塊內(nèi)的代碼才會(huì)執(zhí)行。本題中try中無異常,輸出變量C的值,再執(zhí)行else中的代碼。本題選擇D選項(xiàng)。
16.BPython中open()函數(shù)提供了7種基本的文件打開模式:r、w、x、a、b、t、+。其中,r、w、x、a可以和b、t、+組合使用。故表示錯(cuò)誤的是B項(xiàng)。
17.D文件打開模式有:\nr:只讀模式,如果文件不存在,返回異常FileNotFoundError,默認(rèn)值。\nx:創(chuàng)建寫模式,文件不存在則創(chuàng)建,存在則返回異常FileExistsError。\nw:覆蓋寫模式,文件不存在則創(chuàng)建,存在則完全覆蓋原文件。\na:追加寫模式,文件不存在則創(chuàng)建,存在則在原文件最后追加內(nèi)容。\n文件打開模式中沒有n,故D項(xiàng)錯(cuò)誤。
18.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)。
19.Apipdownload<第三方庫名>用于下載第三方庫的安裝包,但并不安裝;pipuninstall<第三方庫名>用于卸載一個(gè)已經(jīng)安裝的第三方庫;pipinstall<第三方庫名>用于安裝第三方庫;pipsearch<第三方庫名>用于聯(lián)網(wǎng)搜索庫名或摘要中的關(guān)鍵字。本題選擇A選項(xiàng)。
20.D
21.A不同類型之間不能相互運(yùn)算;除數(shù)不能為0;print“noerror”語句是Python2.x系列的語法,不適用Python3.x系列。本題選擇A選項(xiàng)。
22.B變量s是元組類型,type()返回的是表達(dá)式的值的類型。本題選擇B選項(xiàng)。
23.A該代碼的功能是根據(jù)傳人的參數(shù)求取該數(shù)的階乘,經(jīng)過一系列的運(yùn)算將結(jié)果返回,4的階乘為24。
24.CPython中復(fù)數(shù)類型的虛數(shù)部分的后綴可以為j或者J;復(fù)數(shù)的實(shí)部可以單獨(dú)存在,但是虛部不可以單獨(dú)存在;復(fù)數(shù)由實(shí)部和虛部構(gòu)成,可以使用z.\nreal和z.imag分別獲得它的實(shí)部和虛部。本題選擇C選項(xiàng)。
25.C在Python中,文件的打開模式對(duì)應(yīng)為:r表示只讀;w表示覆蓋寫;t表示文本文件模式;b表示二進(jìn)制文件模式。本題選擇D選項(xiàng)。
26.A用于循環(huán)邏輯的保留字:while、for、else、break、continue。try用于捕捉異常。
27.Bappend()是向列表元素的結(jié)尾增加元素。
28.CPython的單分支結(jié)構(gòu)使用if保留字對(duì)條件進(jìn)行判斷,使用方式為:\nif<條件>:\n<語句塊>\nPython的二分支結(jié)構(gòu)使用if—else保留字對(duì)條件進(jìn)行判斷,語法格式為:\nif<條件>:\n<語句塊1>\nelse:\n<語句塊2>\nPython的多分支結(jié)構(gòu)使用if—elif—else保留字對(duì)多個(gè)相關(guān)條件進(jìn)行判斷,并根據(jù)不同條件的結(jié)果按照順\n序選擇執(zhí)行路徑,語法格式為:\nif<條件l>:\n<語句塊1>\nelif<條件2>:\n<語句塊2>\nelse:\n<語句塊3>
29.B在Python語言中,字典是存儲(chǔ)可變數(shù)量鍵值對(duì)的數(shù)據(jù)結(jié)構(gòu),鍵和值可以是任意數(shù)據(jù)類型,通過鍵索引值,并可以通過鍵修改值。因此,可以直接利用鍵值對(duì)關(guān)系索引元素。索引模式:<值>=<字典變量>[<鍵>]。故能夠正確索引字典并輸出數(shù)字2的語句是pnnt(d[’cake’]),B項(xiàng)正確。
30.D棧是先進(jìn)后出的線性表,所以A選項(xiàng)錯(cuò)誤;隊(duì)列是先進(jìn)先出的線性表,所以B選項(xiàng)錯(cuò)誤;循環(huán)隊(duì)列是線性結(jié)構(gòu)的線性表,所以C選項(xiàng)錯(cuò)誤。本題選擇D選項(xiàng)。
31.Y
32.Y
33.Y
34.N
35.N
36.N
37.Y
38.Y
39.N
40.Y
41.2
42.PIL、pillow
43.[1,2,[3]]
44.{1:2,2:3}
45.True
46.TrueTrue
47.3
48.5.0
49.type()
50.'ab:efg'
51.intxt=input(”請(qǐng)輸入明文:”)ForpinintxtIf”a”<=p<=”z”:Print(chr(ord(“a”)+(ord(p)-ord(“a”)+3%26),end=””)Elif”A”<=p<=”z”:Print(chr(ord(“A”)+(ord(p)-ord(“A”)+3%26),end=””)Else:Print(p,end=””)使用for循環(huán)遍歷輸入的每一個(gè)字符:如果輸入的字符是大小寫字母,把該字母替換為該字母后面的第三個(gè)字母,將轉(zhuǎn)換后的字母進(jìn)行輸出;如果輸入的字符不是大小寫字母,則原樣輸出字符,該部分功能通過if多分支結(jié)構(gòu)實(shí)現(xiàn)。
52.lower=int(input(‘輸入?yún)^(qū)間最小值:’))upper=int(inputs(‘輸入?yún)^(qū)間最大值:’))fornuminrange(lower+1,upper):Ifnum>1:Foriin染個(gè)(2,num):If(num%i)==0:BreakElse:Print(num)題目要求輸出兩個(gè)整數(shù)之間(不包括這兩個(gè)整數(shù))的所有素?cái)?shù),因此mnge()函數(shù)的參數(shù)應(yīng)為lower+1和upper。for循環(huán)遍歷range(lower\n+l,upper)返回的每個(gè)整數(shù)num,判斷該數(shù)是否為素?cái)?shù)。如果num大于1(1既不是素?cái)?shù)也不是合數(shù)),且該數(shù)能被取值范圍為[2,num-1\n]的任何一個(gè)整數(shù)整除,那么該數(shù)一定不是素?cái)?shù),否則一定是素?cái)?shù)。
53.importrandom\r\nbrandlist=[’三星’,’蘋果’,’vivo’,’OPPO’,’魅族’]\r\nrandom.seed(0)\r\nname=brandlist[random.randint(0,4)]
print(name)題目要求隨機(jī)輸出列表中的一個(gè)手機(jī)名稱,“隨機(jī)”需要用到Python的標(biāo)準(zhǔn)庫random,random.seed(0)的作用是設(shè)置初始化隨機(jī)數(shù)種子,設(shè)置種子的好處就是可以重復(fù)再現(xiàn)相同的隨機(jī)數(shù)序列。輸出列表中的元素可以使用索引的方法,分析代碼可知,列表中共有5個(gè)元素,所以元素的序號(hào)由0到4,需要用到random庫的randint()方法。random.randint(a,b)的作用是產(chǎn)生一個(gè)[a,b]之間的隨機(jī)整數(shù)。遼寧省遼陽市全國計(jì)算機(jī)等級(jí)考試Python語言程序設(shè)計(jì)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(30題)1.以下程序的意義是()。>>>car=‘BWM’>>>id(car)
A.查看變量所占的位數(shù)B.轉(zhuǎn)換成布爾值C.查看變量在內(nèi)存中的地址D.把變量中的元素隨機(jī)排列
2.以下程序的輸出結(jié)果是()。foriin”Nation”:forkinrange(2):ifi==’n’:breakprint(i,end=””)
A.aattiiooB.NNaattiiooC.NaattiioonD.aattiioonn
3.以下程序的輸出結(jié)果是()。a=divmod(5,2)b=divmod(2,6)c=set(a+b)print(sum(c))
A.3B.5C.2D.0
4.如果文件a.txt在目錄“C:\\A”下,執(zhí)行以下代碼會(huì)發(fā)生的操作是()。importosos.rmdir(r'C:\\A’)
A.刪除文件夾A,保留文件a.txt
B.刪除文件夾A和文件a.txt
C.刪除文件a.txt,保留文件夾A
D.OSError
5.下面程序輸出的結(jié)果是()。sl,s2=”Mom”,””Dad"Print(“{}loves{}format(s2,si))
A.DadlovesMomB.MomlovesDadC.sllovess2D.s2lovess1
6.下面關(guān)于遞歸函數(shù),描述錯(cuò)誤的是()。
A.遞歸函數(shù)必須有一個(gè)明確的結(jié)束條件
B.遞歸函數(shù)就是一個(gè)函數(shù)在內(nèi)部調(diào)用自身本身
C.遞歸效率不高,遞歸層次過多會(huì)導(dǎo)致棧溢出
D.每進(jìn)入更深一層的遞歸時(shí),問題規(guī)模相對(duì)于前一次遞歸是不變的
7.在Python中,屬于Web開發(fā)的第三方庫是()。
A.mayaviB.flaskC.PyQt5D.time
8.以下關(guān)于Python列表的描述中,正確的是()。
A.列表的長度和內(nèi)容都可以改變,但元素類型必須相同
B.不可以對(duì)列表進(jìn)行成員運(yùn)算操作、長度計(jì)算和分片
C.列表的索引是從1開始的
D.可以使用比較操作符(如>或<等)對(duì)列表進(jìn)行比較
9.在Python中,使用open()打開一個(gè)Windows操作系統(tǒng)D盤下的文件,路徑名錯(cuò)誤的是()。
A.D:\PythonTest\a.txt
B.D:\\PythonTest\\a.txt
C.D:/PythonTest/a.txt
D.D://PythonTest//a.txt
10.下面哪一種定義是類的私有成員?()
A._xxB._xx_C._xxxD.xxx
11.以下哪個(gè)語句不適宜對(duì)異常捕獲()
A.try..catchB.assertC.withD.ifelif
12.下面代碼的輸出結(jié)果是()。n=2deff(a):n=bool(a-2)returnnb=f(2)print(n,b)
A.20
B.0True
C.2False
D.0False
13.在E-R圖中,用來表示實(shí)體的圖形是()。
A.橢圓形B.矩形C.菱形D.三角形
14.以下代碼的輸出結(jié)果是()。a=5.2b=2.5print(a//b)
A.2.08B.2.1C.2D.2.0
15.下面代碼的輸出結(jié)果是()。print("calculationerror*')else:print("noerror")
A.calculationerrorB.noerrorC.9.0D.9.0noerror
16.關(guān)于Python文件打開模式,表示錯(cuò)誤的是()。
A.rtB.nbC.abD.wt
17.以下關(guān)于Python文件打開模式的描述中,錯(cuò)誤的是()。
A.只讀模式rB.覆蓋寫模式wC.追加寫模式aD.創(chuàng)建寫模式n
18.樹的度為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
19.下載但不安裝一個(gè)第三方庫的命名格式是()。
A.pipdownload<第三方庫名>
B.pipuninstall<第三方庫名>
C.pipinstall<第三方庫名>
D.pipsearch<第三方庫名>
20.現(xiàn)要將某氣象觀測(cè)站每天不同時(shí)間點(diǎn)的氣溫及濕度的觀察值保存,方便以后進(jìn)行調(diào)用及查詢,在Python3哪種數(shù)據(jù)結(jié)構(gòu)更合適()
A.字符串B.列表C.集合D.字典
21.以下語句不會(huì)引發(fā)異常的是()。
A.a=b=3+1jB.1+“1”C.3/0D.print“noerror”
22.下面代碼的輸出結(jié)果是()。>>>s=(3,)>>>type(s)
A.<class'diet'>
B.<class'tuple’>
C.<class'list'>
D.<class'set’>
23.下面代碼的輸出結(jié)果是()。deff(n):ifn==1:return1else:returnn*f(n—1)print(f(4))
A.24B.4C.0D.10
24.下列關(guān)于Python中復(fù)數(shù)類型的描述錯(cuò)誤的是()。
A.復(fù)數(shù)由實(shí)數(shù)部分和虛數(shù)部分構(gòu)成
B.復(fù)數(shù)可以看作二元有序?qū)崝?shù)對(duì)(a,b)
C.虛數(shù)部分必須有后綴j,且為小寫
D.復(fù)數(shù)中的虛數(shù)部分不能單獨(dú)存在,必須有實(shí)數(shù)部分
25.Python中文件的打開模式為“t”,對(duì)應(yīng)的文件打開模式為()。
A.只讀模式B.覆蓋寫模式C.文本文件模式D.二進(jìn)制文件模式
26.以下保留字不用于循環(huán)邏輯的是()。
A.tryB.elseC.forD.continue
27.下面代碼的輸出結(jié)果是()。list=[“1”,”3”,”5”]defapp(x):list.a(chǎn)ppend(x)app(”7”)print(list)
A.[’1’,’3’,’5’]B.[’1’,’3’,’5’,’7’]C.[’7’]D.”1,3,5,7”
28.以下關(guān)于分支結(jié)構(gòu)的描述中,錯(cuò)誤的是()。
A.if語句中語句塊執(zhí)行與否依賴于條件判斷
B.if語句中條件部分可以使用任何能夠產(chǎn)生True和False的語句和函數(shù)
C.二分支結(jié)構(gòu)有一種緊湊形式,使用保留字if和elif實(shí)現(xiàn)
D.多分支結(jié)構(gòu)用于設(shè)置多個(gè)判斷條件以及對(duì)應(yīng)的多條執(zhí)行路徑
29.下面的d是一個(gè)字典變量,能夠輸出數(shù)字2的語句是()。d={’food’:{’cake’:1,’egg’:5},’cake’:2,’egg’:3}
A.print(d[’food’][’egg’])
B.print(d[’cake’])
C.print(d[’food’][一1])
D.print(d[’cake’][1])
30.下列敘述中正確的是()。
A.找是“先進(jìn)先出”的線性表
B.隊(duì)列是“先進(jìn)后出”的線性表
C.循環(huán)隊(duì)列是非線性結(jié)構(gòu)
D.有序線性表既可以釆用順序存儲(chǔ)結(jié)構(gòu),也可以采用鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)
二、判斷題(10題)31.執(zhí)行語句frommathimportsin之后,可以直接使用sin()函數(shù),例如sin(3)。
A.是B.否
32.異常處理結(jié)構(gòu)也不是萬能的,處理異常的代碼也有引發(fā)異常的可能。
A.是B.否
33.定義函數(shù)時(shí),即使該函數(shù)不需要接收任何參數(shù),也必須保留一對(duì)空的圓括號(hào)來表示這是一個(gè)函數(shù)。
A.是B.否
34.放在一對(duì)三引號(hào)之間的任何內(nèi)容將被認(rèn)為是注釋。
A.是B.否
35.程序中異常處理結(jié)構(gòu)在大多數(shù)情況下是沒必要的。
A.是B.否
36.已知x=3,那么賦值語句x='abcedfg'是無法正常執(zhí)行的。
A.是B.否
37.異常處理結(jié)構(gòu)中的finally塊中代碼仍然有可能出錯(cuò)從而再次引發(fā)異常。
A.是B.否
38.無法刪除集合中指定位置的元素,只能刪除特定值的元素。
A.是B.否
39.字典可以作為集合的元素。
A.是B.否
40.在Python3.x中可以使用中文作為變量名。
A.是B.否
三、填空題(10題)41.表達(dá)式int(4**0.5)的值為____________。
42.Python擴(kuò)展庫______________和______________提供了圖像處理功能。
43.已知列表x=[1,2],那么執(zhí)行語句x.append([3])之后,x的值為_____________。
44.已知x={1:2},那么執(zhí)行語句x[2]=3之后,x的值為________________。
45.表達(dá)式1<2<3的值為_________。
46.表達(dá)式type(3)==int的值為__________。
47.表達(dá)式'abcabcabc'.count('abc')的值為_____________。
48.表達(dá)式abs(3+4j)的值為____________。
49.查看變量類型的Python內(nèi)置函數(shù)是________________。
50.表達(dá)式':'.join('abcdefg'.split('cd'))的值為______________。
四、操作題(3題)51.考生文件夾下存在一個(gè)Python源文件“PY301.py”,請(qǐng)按照文件內(nèi)說明修改代碼,實(shí)現(xiàn)以下功能。愷撒密碼是一種非常古老的加密算法,相傳當(dāng)年愷撒大帝行軍打仗時(shí)為了保證自己的命令不被敵軍知道,它采用了替換方法將信息中的每一個(gè)英文字母循環(huán)替換為字母表序列中該字母后面的第三個(gè)字母,即循環(huán)后三位,對(duì)應(yīng)關(guān)系如下。原文:ABCDEFGHIJKLMNOPQRSTUVWXYZ密文:DEFGHIJKLMNOPQRSTUVWXYZABC原文字母P,其密文字母C滿足如下條件。C=(P+3)mod26解密方法反之,滿足如下條件。P=(C-3)mod26愷撒密碼包括加密算法和解密算法兩個(gè)部分。愷撒密碼的加密算法程序首先接收用戶輸入的文本,然后對(duì)字母a?z和字母A?Z按照密碼算法進(jìn)行轉(zhuǎn)換,同時(shí)輸出。其他非英文字母原樣輸出。試題程序:#以下代碼為提示框架#請(qǐng)?jiān)?..處使用一行或多行代碼替換#注意..提示框架的代碼可以任意修改,以完成程序功能為準(zhǔn)intxt=input(“請(qǐng)輸入明文:")
52.考生文件夾下存在一個(gè)文件“PY202.py”,該文件是本題目的代碼提示框架,其中代碼可以任意修改。請(qǐng)?jiān)谠撐募芯帉懘a,以實(shí)現(xiàn)如下功能。用鍵盤輸入兩個(gè)大于0的整數(shù),按要求輸出這兩個(gè)整數(shù)之間(不包括這兩個(gè)整數(shù))的所有素?cái)?shù)。素?cái)?shù)又稱質(zhì)數(shù),是指除了1和它本身以外不能被其他整數(shù)整除的數(shù)。試題程序:#以下代碼為提示框架#請(qǐng)?jiān)?..處使用一行或多行代碼替換#請(qǐng)?jiān)赺____處使用一行代碼替換#注意:提示框架的代碼可以任意修改,以完成程序功能為準(zhǔn)lower=int(input(‘輸入?yún)^(qū)間最小值:’))upper=int(inputs(‘輸入?yún)^(qū)間最大值:’))fornuminrange(_____,_____):
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.Cid(x)是Python中的內(nèi)置函數(shù),用來查看變量在內(nèi)存中的地址。本題選擇C選項(xiàng)。
2.B在Python中對(duì)字母大小寫是敏感的,’N’和’n’是不同的字符。本題中,有兩層for循環(huán),即每個(gè)字符要輸出兩次,直到i=’n’時(shí),跳出循環(huán),執(zhí)行輸出語句。故答案為B項(xiàng)。
3.Adivmod(a,b)函數(shù)返回的是兩個(gè)數(shù)值的商和余數(shù),那么a和b的值分別是(2,1)和(0,2),而c是把a(bǔ)、b相加后轉(zhuǎn)為集合型,那么a+b為(2,1,0,2),轉(zhuǎn)成集合后即{0,1,2},最后是取總和的sum()函數(shù),所以相加的總和為3。本題選擇A選項(xiàng)。
4.D使用rmdir()刪除目錄之前要先清除其中所有的文件,否則會(huì)報(bào)OSError錯(cuò)誤。本題選擇D選項(xiàng)。
5.APython使用format()格式化方法,語法格式為<模板字符串>.format(\n<逗號(hào)分隔的參數(shù)>),其中模板字符串是一個(gè)由字符串和槽組成的字符串,用來控制字符串和變量的顯示效果。槽用花括號(hào)({})表示,對(duì)應(yīng)fcmnat()方法中逗號(hào)分隔的參數(shù)。如果模板字符串有多個(gè)槽,且槽內(nèi)沒有指定序號(hào),則按照槽出現(xiàn)的順序分別對(duì)應(yīng)format()方法中的不同參數(shù)。參數(shù)根據(jù)出現(xiàn)先后存在一個(gè)默認(rèn)序號(hào)。本題選擇A選項(xiàng)。
6.DA選項(xiàng)正確,遞歸函數(shù)必須要有一個(gè)明確的結(jié)束條件作為遞歸的出口;B選項(xiàng)正是遞歸函數(shù)的含義,正確;C選項(xiàng)正確,在計(jì)算機(jī)中,函數(shù)調(diào)用是通過棧這種數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn)的,每當(dāng)進(jìn)入一個(gè)函數(shù)調(diào)用,棧就會(huì)加一層棧幀,每當(dāng)函數(shù)返回,棧就會(huì)減一層棧幀,由于棧的大小不是無限的,所以,遞歸調(diào)用的次數(shù)過多,會(huì)導(dǎo)致棧溢出;D選項(xiàng),每當(dāng)進(jìn)入更深一層的遞歸時(shí),問題規(guī)模顯然會(huì)相對(duì)前一次遞歸減小。
7.B在Python中,屬于Web開發(fā)的第三方庫的有Django庫、pyramid庫及Flask庫。本題選擇B選項(xiàng)。
8.D列表是包含0個(gè)或多個(gè)元素的有序序列,屬于序列類型。列表用中括號(hào)([])表示,由于列表屬于序列類型,故繼承了序列類型的所有屬性和方法。索引是列表的基本操作,用于獲得列表中的一個(gè)元素,該操作沿用序列類型的索引方式,即正向遞增序號(hào)或反向遞減序號(hào),使用中括號(hào)作為索引操作符,索引號(hào)不得超過列表的元素范圍,否則將產(chǎn)生lndexError錯(cuò)誤。索引下標(biāo)從0開始。列表可以進(jìn)行元素增加、刪除、替換、查找等操作。列表沒有長度限制,元素類型可以不同,能夠包含其他的組合數(shù)據(jù)類型,可以使用比較操作符(如>或<等)對(duì)列表進(jìn)行比較,也可以對(duì)列表進(jìn)行成員運(yùn)算操作、長度計(jì)算和分片。故D項(xiàng)正確。
9.A在Python中,使用open()打開文件的操作過程中需要注意,由于“\\”是字符串中的轉(zhuǎn)義符,所以表示路徑時(shí),使用“\\\\”,“/”或“//”代替“\\”。本題選擇A選項(xiàng)。
10.C在Python中,類的定義中以一個(gè)下劃線開頭是成員的保護(hù)成員,以兩個(gè)下劃線開頭和結(jié)束的成員是系統(tǒng)定義的特殊成員,以兩個(gè)或多個(gè)下劃線開頭但不以兩個(gè)或多個(gè)下劃線結(jié)束的成員是私有成員,所以選C。
11.D
12.C這段代碼是全局變量、局部變量以及Python內(nèi)置函數(shù)bool()的一個(gè)結(jié)合。在函數(shù)內(nèi)部的局部變量名和函數(shù)外部全局變量名相同時(shí),調(diào)用函數(shù)時(shí),總是先找到函數(shù)內(nèi)部的局部變量名,所以當(dāng)a為2時(shí),經(jīng)過布爾型轉(zhuǎn)換之后的a\r\n-2,即b為False,而在函數(shù)外部只能訪問全局變量名,所以n仍為2,本題選擇C選項(xiàng)。
13.B在E—R圖中實(shí)體集用矩形,屬性用橢圓,聯(lián)系用菱形。
14.D“//”返回兩個(gè)數(shù)的整數(shù)商,且返回的類型滿足以下關(guān)系:①整數(shù)和浮點(diǎn)數(shù)混合運(yùn)算,輸出結(jié)果是浮點(diǎn)數(shù);②整數(shù)之間運(yùn)算,結(jié)果為整數(shù)。因此,5.2//2.5=2.0。
15.D只有當(dāng)程序未引發(fā)異常順利執(zhí)行完try中的代碼后,else語句塊內(nèi)的代碼才會(huì)執(zhí)行。本題中try中無異常,輸出變量C的值,再執(zhí)行else中的代碼。本題選擇D選項(xiàng)。
16.BPython中open()函數(shù)提供了7種基本的文件打開模式:r、w、x、a、b、t、+。其中,r、w、x、a可以和b、t、+組合使用。故表示錯(cuò)誤的是B項(xiàng)。
17.D文件打開模式有:\nr:只讀模式,如果文件不存在,返回異常FileNotFoundError,默認(rèn)值。\nx:創(chuàng)建寫模式,文件不存在則創(chuàng)建,存在則返回異常FileExistsError。\nw:覆蓋寫模式,文件不存在則創(chuàng)建,存在則完全覆蓋原文件。\na:追加寫模式,文件不存在則創(chuàng)建,存在則在原文件最后追加內(nèi)容。\n文件打開模式中沒有n,故D項(xiàng)錯(cuò)誤。
18.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)。
19.Apipdownload<第三方庫名>用于下載第三方庫的安裝包,但并不安裝;pipuninstall<第三方庫名>用于卸載一個(gè)已經(jīng)安裝的第三方庫;pipinstall<第三方庫名>用于安裝第三方庫;pipsearch<第三方庫名>用于聯(lián)網(wǎng)搜索庫名或摘要中的關(guān)鍵字。本題選擇A選項(xiàng)。
20.D
21.A不同類型之間不能相互運(yùn)算;除數(shù)不能為0;print“noerror”語句是Python2.x系列的語法,不適用Python3.x系列。本題選擇A選項(xiàng)。
22.B變量s是元組類型,type()返回的是表達(dá)式的值的類型。本題選擇B選項(xiàng)。
23.A該代碼的功能是根據(jù)傳人的參數(shù)求取該數(shù)的階乘,經(jīng)過一系列的運(yùn)算將結(jié)果返回,4的階乘為24。
24.CPython中復(fù)數(shù)類型的虛數(shù)部分的后綴可以為j或者J;復(fù)數(shù)的實(shí)部可以單獨(dú)存在,但是虛部不可以單獨(dú)存在;復(fù)數(shù)由實(shí)部和虛部構(gòu)成,可以使用z.\nreal和z.imag分別獲得它的實(shí)部和虛部。本題選擇C選項(xiàng)。
25.C在Python中,文件的打開模式對(duì)應(yīng)為:r表示只讀;w表示覆蓋寫;t表示文本文件模式;b表示二進(jìn)制文件模式。本題選擇D選項(xiàng)。
26.A用于循環(huán)邏輯的保留字:while、for、else、break、continue。try用于捕捉異常。
27.Bappend()是向列表元素的結(jié)尾增加元素。
28.CPython的單分支結(jié)構(gòu)使用if保留字對(duì)條件進(jìn)行判斷,使用方式為:\nif<條件>:\n<語句塊>\nPython的二分支結(jié)構(gòu)使用if—else保留字對(duì)條件進(jìn)行判斷,語法格式為:\nif<條件>:\n<語句塊1>\nelse:\n<語句塊2>\nPython的多分支結(jié)構(gòu)使用if—elif—else保留字對(duì)多個(gè)相關(guān)條件進(jìn)行判斷,并根據(jù)不同條件的結(jié)果按照順\n序選擇執(zhí)行路徑,語法格式為:\nif<條件l>:\n<語句塊1>\nelif<條件2>:\n<語句塊2>\nelse:\n<語句塊3>
29.B在Python語言中,字典是存儲(chǔ)可變數(shù)量鍵值對(duì)的數(shù)據(jù)結(jié)構(gòu),鍵和值可以是任意數(shù)據(jù)類型,通過鍵索引值,并可以通過鍵修改值。因此,可以直接利用鍵值對(duì)關(guān)系索引元素。索引模式:<值>=<字典變量>[<鍵>]。故能夠正確索引字典并輸出數(shù)字2的語句是pnnt(d[’cake’]),B項(xiàng)正確。
30.D棧是先進(jìn)后出的線性表,所以A選項(xiàng)錯(cuò)誤;隊(duì)列是先進(jìn)先出的線性表,所以B選項(xiàng)錯(cuò)誤;循環(huán)隊(duì)列是線性結(jié)構(gòu)的線性表,所以C選項(xiàng)錯(cuò)誤。本題選擇D選項(xiàng)。
31.Y
32.Y
33.Y
34.N
35.N
36.N
37.Y
38.Y
39.N
40.Y
41.2
42.PIL、pillow
43.[1,2,[3]]
44.{1:2,2:3}
45.True
46.TrueTrue
47.3
48.5.0
49.type()
50.'ab:efg'
51.intxt=input(”請(qǐng)輸入明文:”)ForpinintxtIf”a”<=p<=”z”:Print(chr(ord(“a”)+(ord(p)-ord(“a”)+3%26),end=””)Elif”A”<=p<=”z”:Print(chr(ord(“A”)+(ord(p)-ord(“A”)+3%26),end=””)Else:Print(p,end=””)使用for循環(huán)遍歷輸入的每一個(gè)字符:如果輸入的字符是大小寫字母,把該字母替換為該字母后面的第三個(gè)字母,將轉(zhuǎn)換后的字母進(jìn)行輸出;如果輸入的字符不是大小寫字母,則原樣輸出字符,該部分功能通過if多分支結(jié)構(gòu)實(shí)現(xiàn)。
52.lower=int(input(‘輸入?yún)^(qū)間最小值:’))upper=int(inputs(‘輸入?yún)^(qū)間最大值:’))fornuminrange(lower+1,upper):Ifnum>1:Foriin染個(gè)(2,num):If(num%i)==0:BreakElse:Print(num)題目要求輸出兩個(gè)整數(shù)之間(不包括這兩個(gè)整數(shù))的所有素?cái)?shù),因此mnge()函數(shù)的參數(shù)應(yīng)為lower+1和upper。for循環(huán)遍歷range(lower\n+l,upper)返回的每個(gè)整數(shù)num,判斷該數(shù)是否為素?cái)?shù)。如果num大于1(1既不是素?cái)?shù)也不是合數(shù)),且該數(shù)能被取值范圍為[2,num-1\n]的任何一個(gè)整數(shù)整除,那么該數(shù)一定不是素?cái)?shù),否則一定是素?cái)?shù)。
53.importrandom\r\nbrandlist=[’三星’,’蘋果’,’vivo’,’OPPO’,’魅族’]\r\nrandom.seed(0)\r\nname=brandlist[random.randint(0,4)]
print(name)題目要求隨機(jī)輸出列表中的一個(gè)手機(jī)名稱,“隨機(jī)”需要用到Python的標(biāo)準(zhǔn)庫random,random.seed(0)的作用是設(shè)置初始化隨機(jī)數(shù)種子,設(shè)置種子的好處就是可以重復(fù)再現(xiàn)相同的隨機(jī)數(shù)序列。輸出列表中的元素可以使用索引的方法,分析代碼可知,列表中共有5個(gè)元素,所以元素的序號(hào)由0到4,需要用到random庫的randint()方法。random.randint(a,b)的作用是產(chǎn)生一個(gè)[a,b]之間的隨機(jī)整數(shù)。遼寧省遼陽市全國計(jì)算機(jī)等級(jí)考試Python語言程序設(shè)計(jì)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(30題)1.以下程序的意義是()。>>>car=‘BWM’>>>id(car)
A.查看變量所占的位數(shù)B.轉(zhuǎn)換成布爾值C.查看變量在內(nèi)存中的地址D.把變量中的元素隨機(jī)排列
2.以下程序的輸出結(jié)果是()。foriin”Nation”:forkinrange(2):ifi==’n’:breakprint(i,end=””)
A.aattiiooB.NNaattiiooC.NaattiioonD.aattiioonn
3.以下程序的輸出結(jié)果是()。a=divmod(5,2)b=divmod(2,6)c=set(a+b)print(sum(c))
A.3B.5C.2D.0
4.如果文件a.txt在目錄“C:\\A”下,執(zhí)行以下代碼會(huì)發(fā)生的操作是()。importosos.rmdir(r'C:\\A’)
A.刪除文件夾A,保留文件a.txt
B.刪除文件夾A和文件a.txt
C.刪除文件a.txt,保留文件夾A
D.OSError
5.下面程序輸出的結(jié)果是()。sl,s2=”Mom”,””Dad"Print(“{}loves{}format(s2,si))
A.DadlovesMomB.MomlovesDadC.sllovess2D.s2lovess1
6.下面關(guān)于遞歸函數(shù),描述錯(cuò)誤的是()。
A.遞歸函數(shù)必須有一個(gè)明確的結(jié)束條件
B.遞歸函數(shù)就是一個(gè)函數(shù)在內(nèi)部調(diào)用自身本身
C.遞歸效率不高,遞歸層次過多會(huì)導(dǎo)致棧溢出
D.每進(jìn)入更深一層的遞歸時(shí),問題規(guī)模相對(duì)于前一次遞歸是不變的
7.在Python中,屬于Web開發(fā)的第三方庫是()。
A.mayaviB.flaskC.PyQt5D.time
8.以下關(guān)于Python列表的描述中,正確的是()。
A.列表的長度和內(nèi)容都可以改變,但元素類型必須相同
B.不可以對(duì)列表進(jìn)行成員運(yùn)算操作、長度計(jì)算和分片
C.列表的索引是從1開始的
D.可以使用比較操作符(如>或<等)對(duì)列表進(jìn)行比較
9.在Python中,使用open()打開一個(gè)Windows操作系統(tǒng)D盤下的文件,路徑名錯(cuò)誤的是()。
A.D:\PythonTest\a.txt
B.D:\\PythonTest\\a.txt
C.D:/PythonTest/a.txt
D.D://PythonTest//a.txt
10.下面哪一種定義是類的私有成員?()
A._xxB._xx_C._xxxD.xxx
11.以下哪個(gè)語句不適宜對(duì)異常捕獲()
A.try..catchB.assertC.withD.ifelif
12.下面代碼的輸出結(jié)果是()。n=2deff(a):n=bool(a-2)returnnb=f(2)print(n,b)
A.20
B.0True
C.2False
D.0False
13.在E-R圖中,用來表示實(shí)體的圖形是()。
A.橢圓形B.矩形C.菱形D.三角形
14.以下代碼的輸出結(jié)果是()。a=5.2b=2.5print(a//b)
A.2.08B.2.1C.2D.2.0
15.下面代碼的輸出結(jié)果是()。print("calculationerror*')else:print("noerror")
A.calculationerrorB.noerrorC.9.0D.9.0noerror
16.關(guān)于Python文件打開模式,表示錯(cuò)誤的是()。
A.rtB.nbC.abD.wt
17.以下關(guān)于Python文件打開模式的描述中,錯(cuò)誤的是()。
A.只讀模式rB.覆蓋寫模式wC.追加寫模式aD.創(chuàng)建寫模式n
18.樹的度為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
19.下載但不安裝一個(gè)第三方庫的命名格式是()。
A.pipdownload<第三方庫名>
B.pipuninstall<第三方庫名>
C.pipinstall<第三方庫名>
D.pipsearch<第三方庫名>
20.現(xiàn)要將某氣象觀測(cè)站每天不同時(shí)間點(diǎn)的氣溫及濕度的觀察值保存,方便以后進(jìn)行調(diào)用及查詢,在Python3哪種數(shù)據(jù)結(jié)構(gòu)更合適()
A.字符串B.列表C.集合D.字典
21.以下語句不會(huì)引發(fā)異常的是()。
A.a=b=3+1jB.1+“1”C.3/0D.print“noerror”
22.下面代碼的輸出結(jié)果是()。>>>s=(3,)>>>type(s)
A.<class'diet'>
B.<class'tuple’>
C.<class'list'>
D.<class'set’>
23.下面代碼的輸出結(jié)果是()。deff(n):ifn==1:return1else:returnn*f(n—1)print(f(4))
A.24B.4C.0D.10
24.下列關(guān)于Python中復(fù)數(shù)類型的描述錯(cuò)誤的是()。
A.復(fù)數(shù)由實(shí)數(shù)部分和虛數(shù)部分構(gòu)成
B.復(fù)數(shù)可以看作二元有序?qū)崝?shù)對(duì)(a,b)
C.虛數(shù)部分必須有后綴j,且為小寫
D.復(fù)數(shù)中的虛數(shù)部分不能單獨(dú)存在,必須有實(shí)數(shù)部分
25.Python中文件的打開模式為“t”,對(duì)應(yīng)的文件打開模式為()。
A.只讀模式B.覆蓋寫模式C.文本文件模式D.二進(jìn)制文件模式
26.以下保留字不用于循環(huán)邏輯的是()。
A.tryB.elseC.forD.continue
27.下面代碼的輸出結(jié)果是()。list=[“1”,”3”,”5”]defapp(x):list.a(chǎn)ppend(x)app(”7”)print(list)
A.[’1’,’3’,’5’]B.[’1’,’3’,’5’,’7’]C.[’7’]D.”1,3,5,7”
28.以下關(guān)于分支結(jié)構(gòu)的描述中,錯(cuò)誤的是()。
A.if語句中語句塊執(zhí)行與否依賴于條件判斷
B.if語句中條件部分可以使用任何能夠產(chǎn)生True和False的語句和函數(shù)
C.二分支結(jié)構(gòu)有一種緊湊形式,使用保留字if和elif實(shí)現(xiàn)
D.多分支結(jié)構(gòu)用于設(shè)置多個(gè)判斷條件以及對(duì)應(yīng)的多條執(zhí)行路徑
29.下面的d是一個(gè)字典變量,能夠輸出數(shù)字2的語句是()。d={’food’:{’cake’:1,’egg’:5},’cake’:2,’egg’:3}
A.print(d[’food’][’egg’])
B.print(d[’cake’])
C.print(d[’food’][一1])
D.print(d[’cake’][1])
30.下列敘述中正確的是()。
A.找是“先進(jìn)先出”的線性表
B.隊(duì)列是“先進(jìn)后出”的線性表
C.循環(huán)隊(duì)列是非線性結(jié)構(gòu)
D.有序線性表既可以釆用順序存儲(chǔ)結(jié)構(gòu),也可以采用鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)
二、判斷題(10題)31.執(zhí)行語句frommathimportsin之后,可以直接使用sin()函數(shù),例如sin(3)。
A.是B.否
32.異常處理結(jié)構(gòu)也不是萬能的,處理異常的代碼也有引發(fā)異常的可能。
A.是B.否
33.定義函數(shù)時(shí),即使該函數(shù)不需要接收任何參數(shù),也必須保留一對(duì)空的圓括號(hào)來表示這是一個(gè)函數(shù)。
A.是B.否
34.放在一對(duì)三引號(hào)之間的任何內(nèi)容將被認(rèn)為是注釋。
A.是B.否
35.程序中異常處理結(jié)構(gòu)在大多數(shù)情況下是沒必要的。
A.是B.否
36.已知x=3,那么賦值語句x='abcedfg'是無法正常執(zhí)行的。
A.是B.否
37.異常處理結(jié)構(gòu)中的finally塊中代碼仍然有可能出錯(cuò)從而再次引發(fā)異常。
A.是B.否
38.無法刪除集合中指定位置的元素,只能刪除特定值的元素。
A.是B.否
39.字典可以作為集合的元素。
A.是B.否
40.在Python3.x中可以使用中文作為變量名。
A.是B.否
三、填空題(10題)41.表達(dá)式int(4**0.5)的值為____________。
42.Python擴(kuò)展庫______________和______________提供了圖像處理功能。
43.已知列表x=[1,2],那么執(zhí)行語句x.append([3])之后,x的值為_____________。
44.已知x={1:2},那么執(zhí)行語句x[2]=3之后,x的值為________________。
45.表達(dá)式1<2<3的值為_________。
46.表達(dá)式type(3)==int的值為__________。
47.表達(dá)式'abcabcabc'.count('abc')的值為_____________。
48.表達(dá)式abs(3+4j)的值為____________。
49.查看變量類型的Python內(nèi)置函數(shù)是________________。
50.表達(dá)式':'.join('abcdefg'.split('cd'))的值為______________。
四、操作題(3題)51.考生文件夾下存在一個(gè)Python源文件“PY301.py”,請(qǐng)按照文件內(nèi)說明修改代碼,實(shí)現(xiàn)以下功能。愷撒密碼是一種非常古老的加密算法,相傳當(dāng)年愷撒大帝行軍打仗時(shí)為了保證自己的命令不被敵軍知道,它采用了替換方法將信息中的每一個(gè)英文字母循環(huán)替換為字母表序列中該字母后面的第三個(gè)字母,即循環(huán)后三位,對(duì)應(yīng)關(guān)系如下。原文:ABCDEFGHIJKLMNOPQRSTUVWXYZ密文:DEFGHIJKLMNOPQRSTUVWXYZABC原文字母P,其密文字母C滿足如下條件。C=(P+3)mod26解密方法反之,滿足如下條件。P=(C-3)mod26愷撒密碼包括加密算法和解密算法兩個(gè)部分。愷撒密碼的加密算法程序首先接收用戶輸入的文本,然后對(duì)字母a?z和字母A?Z按照密碼算法進(jìn)行轉(zhuǎn)換,同時(shí)輸出。其他非英文字母原樣輸出。試題程序:#以下代碼為提示框架#請(qǐng)?jiān)?..處使用一行或多行代碼替換#注意..提示框架的代碼可以任意修改,以完成程序功能為準(zhǔn)intxt=input(“請(qǐng)輸入明文:")
52.考生文件夾下存在一個(gè)文件“PY202.py”,該文件是本題目的代碼提示框架,其中代碼可以任意修改。請(qǐng)?jiān)谠撐募芯帉懘a,以實(shí)現(xiàn)如下功能。用鍵盤輸入兩個(gè)大于0的整數(shù),按要求輸出這兩個(gè)整數(shù)之間(不包括這兩個(gè)整數(shù))的所有素?cái)?shù)。素?cái)?shù)又稱質(zhì)數(shù),是指除了1和它本身以外不能被其他整數(shù)整除的數(shù)。試題程序:#以下代碼為提示框架#請(qǐng)?jiān)?..處使用一行或多行代碼替換#請(qǐng)?jiān)赺____處使用一行代碼替換#注意:提示框架的代碼可以任意修改,以完成程序功能為準(zhǔn)lower=int(input(‘輸入?yún)^(qū)間最小值:’))upper=int(inputs(‘輸入?yún)^(qū)間最大值:’))fornuminrange(_____,_____):
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.Cid(x)是Python中的內(nèi)置函數(shù),用來查看變量在內(nèi)存中的地址。本題選擇C選項(xiàng)。
2.B在Python中對(duì)字母大小寫是敏感的,’N’和’n’是不同的字符。本題中,有兩層for循環(huán),即每個(gè)字符要輸出兩次,直到i=’n’時(shí),跳出循環(huán),執(zhí)行輸出語句。故答案為B項(xiàng)。
3.Adivmod(a,b)函數(shù)返回的是兩個(gè)數(shù)值的商和余數(shù),那么a和b的值分別是(2,1)和(0,2),而c是把a(bǔ)、b相加后轉(zhuǎn)為集合型,那么a+b為(2,1,0,2),轉(zhuǎn)成集合后即{0,1,2},最后是取總和的sum()函數(shù),所以相加的總和為3。本題選擇A選項(xiàng)。
4.D使用rmdir()刪除目錄之前要先清除其中所有的文件,否則會(huì)報(bào)OSError錯(cuò)誤。本題選擇D選項(xiàng)。
5.APython使用format()格式化方法,語法格式為<模板字符串>.format(\n<逗號(hào)分隔的參數(shù)>),其中模板字符串是一個(gè)由字符串和槽組成的字符串,用來控制字符串和變量的顯示效果。槽用花括號(hào)({})表示,對(duì)應(yīng)fcmnat()方法中逗號(hào)分隔的參數(shù)。如果模板字符串有多個(gè)槽,且槽內(nèi)沒有指定序號(hào),則按照槽出現(xiàn)的順序分別對(duì)應(yīng)format()方法中的不同參數(shù)。參數(shù)根據(jù)出現(xiàn)先后存在一個(gè)默認(rèn)序號(hào)。本題選擇A選項(xiàng)。
6.DA選項(xiàng)正確,遞歸函數(shù)必須要有一個(gè)明確的結(jié)束條件作為遞歸的出口;B選項(xiàng)正是遞歸函數(shù)的含義,正確;C選項(xiàng)正確,在計(jì)算機(jī)中,函數(shù)調(diào)用是通過棧這種數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn)的,每當(dāng)進(jìn)入一個(gè)函數(shù)調(diào)用,棧就會(huì)加一層棧幀,每當(dāng)函數(shù)返回,棧就會(huì)減一層棧幀,由于棧的大小不是無限的,所以,遞歸調(diào)用的次數(shù)過多,會(huì)導(dǎo)致棧溢出;D選項(xiàng),每當(dāng)進(jìn)入更深一層的遞歸時(shí),問題規(guī)模顯然會(huì)相對(duì)前一次遞歸減小。
7.B在Python中,屬于Web開發(fā)的第三方庫的有Django庫、pyramid庫及Flask庫。本題選擇B選項(xiàng)。
8.D列表是包含0個(gè)或多個(gè)元素的有序序列,屬于序列類型。列表用中括號(hào)([])表示,由于列表屬于序列類型,故繼承了序列類型的所有屬性和方法。索引是列表的基本操作,用于獲得列表中的一個(gè)元素,該操作沿用序列類型的索引方式,即正向遞增序號(hào)或反向遞減序號(hào),使用中括號(hào)作為索引操作符,索引號(hào)不得超過列表的元素范圍,否則將產(chǎn)生lndexError錯(cuò)誤。索引下標(biāo)從0開始。列表可以進(jìn)行元素增加、刪除、替換、查找等操作。列表沒有長度限制,元素類型可以不同,能夠包含其他的組合數(shù)據(jù)類型,可以使用比較操作符(如>或<等)對(duì)列表進(jìn)行比較,也可以對(duì)列表進(jìn)行成員運(yùn)算操作、長度計(jì)算和分片。故D項(xiàng)正確。
9.A在Python中,使用open()打開文件的操作過程中需要注意,由于“\\”是字符串中的轉(zhuǎn)義符,所以表示路徑時(shí),使用“\\\\”,“/”或“//”代替“\\”。本題選擇A選項(xiàng)。
10.C在Python中,類的定義中以一個(gè)下劃線開頭是成員的保護(hù)成員,以兩個(gè)下劃線開頭和結(jié)束的成員是系統(tǒng)定義的特殊成員,以兩個(gè)或多個(gè)下劃線開頭但不以兩個(gè)或多個(gè)下劃線結(jié)束的成員是私有成員,所以選C。
11.D
12.C這段代碼是全局變量、局部變量以及Python內(nèi)置函數(shù)bool()的一個(gè)結(jié)合。在函數(shù)內(nèi)部的局部變量名和函數(shù)外部全局變量名相同時(shí),調(diào)用函數(shù)時(shí),總是先找到函數(shù)內(nèi)部的局部變量名,所以當(dāng)a為2時(shí),經(jīng)過布爾型轉(zhuǎn)換之后的a\r\n-2,即b為False,而在函數(shù)外部只能訪問全局變量名,所以n仍為2,本題選擇C選項(xiàng)。
13.B在E—R圖中實(shí)體集用矩形,
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 賓館店鋪轉(zhuǎn)讓合同范本
- 2025年真空采血管合作協(xié)議書
- 吊燈墻面施工合同范本
- 合資房產(chǎn)合同范本
- 合作診所補(bǔ)充協(xié)議合同范本
- 后廚設(shè)計(jì)合同范本
- 合同范本套裝
- 醫(yī)院市場(chǎng)營銷合同范本
- 廠家與物流合同范本
- 商鋪合作經(jīng)營合同范本
- 跳繩之雙腳跳教案
- 拇外翻護(hù)理課件
- 六年級(jí)英語教學(xué)隨筆5篇
- 物資管理工作流程圖
- 讀書分享交流會(huì)《從一到無窮大》課件
- 高大模板支撐體系安全檢查驗(yàn)收表
- 蘇教版六年級(jí)下冊(cè)綜合實(shí)踐活動(dòng)計(jì)劃及全冊(cè)教案
- 醫(yī)療器械可用性工程文檔
- GB/T 24475-2023電梯遠(yuǎn)程報(bào)警系統(tǒng)
- 統(tǒng)編教材四年級(jí)下冊(cè)語文第二單元教學(xué)解讀及建議1
- 《中式面點(diǎn)技藝(第二版)》教案(高教版)
評(píng)論
0/150
提交評(píng)論