




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
河南省焦作市全國計算機等級考試Python語言程序設(shè)計學(xué)校:________班級:________姓名:________考號:________
一、單選題(30題)1.以下關(guān)于“for<循環(huán)變量>in<循環(huán)結(jié)構(gòu)>”的描述,錯誤的是()。
A.<循環(huán)結(jié)構(gòu)>采用[1,2,3]和[‘1’,‘2’,‘3’]的時候,循環(huán)的次數(shù)是一樣的
B.這個循環(huán)體語句中不能有break語句,會影響循環(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ù)
2.一個類繼承另一個類,那么被繼承的這個類被稱為()。
A.超類B.子類C.類D.繼承類
3.關(guān)于以下代碼的描述中,正確的是()。defrune(a,b):c=a**2+bb=areturnca=10b=2c=func(b,a)+a
A.執(zhí)行該函數(shù)后,變量c的值為112
B.該函數(shù)名稱為fun
C.執(zhí)行該函數(shù)后,變量b的值為2
D.執(zhí)行該函數(shù)后,變量b的值為10
4.以下程序的輸出結(jié)果是()。f=lambdax:5f(3)
A.3B.5C.35D.35
5.以下程序的輸出結(jié)果是()。Deffun(x):try:Returnx*4except:returnxprint(fun("5"))
A.20B.5555C.5D.9
6.下面代碼的輸出結(jié)果是()。foriin”Goaheadbravely!”:ifi==”b”:breakelse:print(i,end=””)
A.Goaheadrarely!B.bravely!C.Goaheadbravely!D.Goahead
7.以下關(guān)于Python循環(huán)結(jié)構(gòu)的描述中,錯誤的是()。
A.while循環(huán)使用關(guān)鍵字continue結(jié)束本次循環(huán)
B.while循環(huán)可以使用保留字break和continue
C.while循環(huán)也叫遍歷循環(huán),用來遍歷序列中的元素,默認提取每個元素并執(zhí)行一次循環(huán)體
D.while循環(huán)使用pass語句,則什么事也不做,只是空占位語句
8.以下代碼的輸出結(jié)果是()。print(1.5+2.1==3.6)
A.3.6B.TrueC.1.5+2.1==3.6D.False
9.以下關(guān)于Python的描述中,正確的是()。A.條件4<=5<=6是合法的,輸出False
B.條件4<=5<=6是不合法的
C.條件4<=5<=6是合法的,輸出True
D.條件4<=5<=6是不合法的,拋出異常
10.以下程序的輸出結(jié)果是()。fo=open(“book.txt”,“w”)ls=[‘C語言’,‘Java’,‘C#’,‘Python’]fo.writelines(ls)fo.close()
A.‘語言’‘Java’‘C#’‘Python’
B.C語言JavaC#Python
C.[C語言,Java,C#,Python]
D.[‘C語言’‘Java’‘C#’,‘Python’]
11.執(zhí)行以下代碼的結(jié)果是?A.4B.5C.6D.7
12.以下代碼的輸出結(jié)果是()。CLis=list(range(5))print(5inCLis)
A.TrueB.FalseC.0D.一1
13.數(shù)據(jù)流圖的作用是()。
A.描述軟件系統(tǒng)的控制流B.支持軟件系統(tǒng)的功能建模C.支持軟件系統(tǒng)的面向?qū)ο蠓治鯠.描述軟件系統(tǒng)的數(shù)據(jù)結(jié)構(gòu)
14.關(guān)于Python文件打開模式,表示錯誤的是()。
A.rtB.nbC.abD.wt
15.在Python中,能夠處理圖像的第三方庫是()。
A.PylnstallerB.PyserialC.PygameD.PIL
16.執(zhí)行以下代碼的結(jié)果是()A.2B.5C.8D.Anexceptionisthrown
17.在Python語言中,使用for…in方式形成的循環(huán)不能遍歷的類型是()。
A.復(fù)數(shù)B.列表C.字典D.字符串
18.以下關(guān)于分支結(jié)構(gòu)的描述中,錯誤的是()。
A.if語句中語句塊執(zhí)行與否依賴于條件判斷
B.if語句中條件部分可以使用任何能夠產(chǎn)生True和False的語句和函數(shù)
C.二分支結(jié)構(gòu)有一種緊湊形式,使用保留字if和elif實現(xiàn)
D.多分支結(jié)構(gòu)用于設(shè)置多個判斷條件以及對應(yīng)的多條執(zhí)行路徑
19.關(guān)于Python全局變量和局部變量,以下選項描述錯誤的是()。
A.全局變量在源文件頂層,一般沒有縮進
B.程序中的變量包含兩類:全局變量和局部變量
C.函數(shù)內(nèi)部使用各種全局變量,都要用globle語句聲明
D.不是在程序最開頭定義的全局變量,不是全過程均有效
20.如果文件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
21.當(dāng)在命令行中以pythonmy.pyv1v2形式運行python腳本時,通過fromsysimportargv如何獲得v2的參數(shù)值?
A.argv[0]B.argv[1]C.argv[2]D.argv[3]
22.表達式3**2*4//6%7的計算結(jié)果是()。
A.3B.5C.4D.6
23.time庫的time.time()函數(shù)的作用是()。
A.以數(shù)字形式返回當(dāng)前系統(tǒng)時間
B.以字符串形式返回當(dāng)前系統(tǒng)時間
C.以struct_time形式返回當(dāng)前系統(tǒng)時間
D.根據(jù)format格式定義返回當(dāng)前系統(tǒng)時間
24.以下程序的輸出結(jié)果是()。Is=[‘book’,666,[2018,‘python’,314],20]print(ls[2][1][-2])
A.nB.pythonC.oD.結(jié)果錯誤
25.在Python語言中,使用for..in..方式形成的循環(huán)不能遍歷的類型是()。
A.列表B.復(fù)數(shù)C.字符串D.字典
26.定義學(xué)生的關(guān)系模式如下:S(S#,Sn,Sex,Age,D#,Da)(其屬性分別為學(xué)號、姓名、性別、年齡、所屬學(xué)院、院長)該關(guān)系的范式最高是()。
A.1NFB.2NFC.3NFD.BCNF
27.以下代碼的輸出結(jié)果是()。d={”大海”:”藍色”,”天空":”灰色","大地":”黑色”}print(d["大地”],d.get("天空”,"黃色”))
A.黑色黑色B.黑色灰色C.黑色黃色D.黑色藍色
28.在Python中,讀入CSV文件保存的二維數(shù)據(jù),按特定分隔符抽取信息,最可能用到的函數(shù)是()。
A.read()B.join()C.replace()D.split()
29.關(guān)于字典的描述,錯誤的是()。
A.字典的元素以鍵為索引進行訪問
B.字典的一個鍵可以對應(yīng)多個值
C.字典長度是可變的
D.字典是鍵值對的結(jié)合,鍵值對之間沒有順序
30.以下代碼的輸出結(jié)果是()。print(0.1+0.2==0.3)
A.-1B.TrueC.FalseD.0
二、判斷題(10題)31.使用Python列表的方法insert()為列表插入元素時會改變列表中插入位置之后元素的索引。
A.是B.否
32.假設(shè)已成功導(dǎo)入os和sys標(biāo)準(zhǔn)庫,那么表達式os.path.dirname(sys.executable)的值為Python安裝目錄。
A.是B.否
33.已知x為非空列表,那么表達式sorted(x,reverse=True)==list(reversed(x))的值一定是True。
A.是B.否
34.Python字典中的“鍵”不允許重復(fù)。
A.是B.否
35.表達式{1,3,2}>{1,2,3}的值為True。
A.是B.否
36.在調(diào)用函數(shù)時,必須牢記函數(shù)形參順序才能正確傳值。
A.是B.否
37.Python變量名區(qū)分大小寫,所以student和Student不是同一個變量。
A.是B.否
38.Python列表、元組、字符串都屬于有序序列。
A.是B.否
39.集合可以作為列表的元素。
A.是B.否
40.Python標(biāo)準(zhǔn)庫os中的方法listdir()返回包含指定路徑中所有文件和文件夾名稱的列表。
A.是B.否
三、填空題(10題)41.正則表達式元字符________用來表示該符號前面的字符或子模式1次或多次出現(xiàn)。
42.已知列表x=[1,2],那么執(zhí)行語句x.append([3])之后,x的值為_____________。
43.已知a=[1,2,3]和b=[1,2,4],那么id(a[1])==id(b[1])的執(zhí)行結(jié)果為___________。
44.表達式type(3)==int的值為__________。
45.表達式{1,2,3}&{3,4,5}的值為______________。
46.表達式{1,2,3}&{2,3,4}的值為___________。
47.執(zhí)行語句x,y,z=map(str,range(3))之后,變量y的值為___________。
48.Python標(biāo)準(zhǔn)庫os中用來列出指定文件夾中的文件和子文件夾列表的方式是____________。
49.查看變量類型的Python內(nèi)置函數(shù)是________________。
50.已知列表x=[1,2,3],那么執(zhí)行語句x.pop(0)之后,x的值為_________。
四、操作題(3題)51.考生文件夾下存在一個文件“PY102.Py”,請寫代碼替換橫線,不修改其他代碼,實現(xiàn)以下功能。用鍵盤輸入一段文本,保存在一個字符串變量s中,分別用Python內(nèi)置函數(shù)和jieba庫中已有函數(shù)計算字符串s的中文字符個數(shù)和中文詞語個數(shù)。注意:中文字符包含中文標(biāo)點符號。示例格式如下。
鍵盤輸入:科技是第一生產(chǎn)力屏幕輸出:中文字符數(shù)為8,中文詞語數(shù)為4。
試題程序:#請在程序的處使用一行代碼或表達式替換
#注意:請不要修改其他已給出代碼importjiebas=input("請輸入一個字符串")n=_____(1)_____m=_____(2)_____print("中文字符數(shù)為{},中文詞語數(shù)為{}format(n,m))
52.考生文件夾下存在一個文件PY103.py,請寫代碼替換橫線,不修改其他代碼,實現(xiàn)以下功能:使用循環(huán)輸出從1到50之間的奇數(shù)。
試題程序:
#請在_____處使用一行代碼或表達式替換
#注意:請不要修改其他已給出代碼______whilecount<50:
ifcount%2==0:
print(count,end=”,”)
53.考生文件夾下存在一個文件“PY202.py”,該文件是本題目的代碼提示框架,其中代碼可以任意修改。請在該文件中編寫代碼,以實現(xiàn)如下功能。用鍵盤輸入兩個大于0的整數(shù),按要求輸出這兩個整數(shù)之間(不包括這兩個整數(shù))的所有素數(shù)。素數(shù)又稱質(zhì)數(shù),是指除了1和它本身以外不能被其他整數(shù)整除的數(shù)。試題程序:#以下代碼為提示框架#請在...處使用一行或多行代碼替換#請在_____處使用一行代碼替換#注意:提示框架的代碼可以任意修改,以完成程序功能為準(zhǔn)lower=int(input(‘輸入?yún)^(qū)間最小值:’))upper=int(inputs(‘輸入?yún)^(qū)間最大值:’))fornuminrange(_____,_____):
參考答案
1.Bfor語句的循環(huán)執(zhí)行次數(shù)是根據(jù)<循環(huán)結(jié)構(gòu)>中元素的個數(shù)確定的,[1,2,3]和[‘1’,‘2’,‘3’]均有3個元素,因此循環(huán)次數(shù)是一樣的,A選項正確。range()函數(shù)只有一個參數(shù)時表示會產(chǎn)生從0開始計數(shù)到輸入?yún)?shù)的前一位整數(shù)結(jié)束的整數(shù)列表;有兩個參數(shù)時,則將第一個參數(shù)作為起始位,第二個參數(shù)作為結(jié)束位,輸出從起始位到結(jié)束位的前一位的整數(shù)列表;有3個參數(shù)時,第三個參數(shù)表示步長,起始位按照步長遞增或遞減。因此選項C、D正確。循環(huán)體中的break語句的確能影響循環(huán)次數(shù),但是不代表循環(huán)體中不能有break語句,B選項錯誤。本題選擇B選項。
2.A一個類繼承另一個類,那么被繼承的這個類被稱為超類或者父類。
3.C程序中,將實參b的值傳給形參a,將實參a的值傳給形參b,則在函數(shù)體中c=2**2+10=14,函數(shù)返回14,則實參c=14+10=24;形參a和b在函數(shù)結(jié)束后會自動釋放,并沒有影響到實參a和b的值,故實參a仍然是10,實參b仍然是2。
4.Blambda關(guān)鍵字常用來聲明匿名函數(shù),其格式為:<函數(shù)名>=lambda.<參數(shù)列表>:<表達式>,等價于下面形式:\ndef<函數(shù)名>(<參數(shù)列表>):\nreturn<表達式>\n由此可以知道,不管傳給函數(shù)f的實參為多少,返回值始終為5。
5.Bfum(”5”)將字符5賦給形參x,由于5是字符類型,不是數(shù)字類型,不能進行數(shù)值運算,因此x\n*4是把字符5連續(xù)復(fù)制4次輸出。本題選擇B選項。
6.Dfor循環(huán)遍歷字符串,當(dāng)變量i賦值為b時,break跳出本層循環(huán),即后面的字符不再遍歷,當(dāng)值不為b時就將其輸出,結(jié)果為Goahead。
7.CPython中循環(huán)包括兩種:遍歷循環(huán)和無限循環(huán)。遍歷循環(huán)使用關(guān)鍵字for依次提取遍歷結(jié)構(gòu)元素進行處理;無限循環(huán)使用關(guān)鍵字while根據(jù)判斷條件執(zhí)行程序。循環(huán)結(jié)構(gòu)有兩個輔助循環(huán)控制關(guān)鍵字:break和continue。break用來跳出最內(nèi)層for或while循環(huán),脫離該循環(huán)后程序從循環(huán)后的代碼繼續(xù)執(zhí)行。continue用來結(jié)束當(dāng)前當(dāng)次循環(huán),即跳出循環(huán)體中下面尚未執(zhí)行的語句,但跳不出當(dāng)前循環(huán)。pass:什么事也不做,只是空占位語句,并且是無運算的占位語句,當(dāng)語法需要語句并且還沒有任何使用的語句可寫時,就可以使用它。它通常用于為復(fù)合語句編寫一個空的主體。如果寫無限循環(huán),每次迭代什么也不做,就寫pass。pass是有意義的,如忽略try語句所捕獲的異常,以及定義帶屬性的空類對象,而該類實現(xiàn)的對象行為就像其他語言的結(jié)構(gòu)和記錄。pass有時指“以后會填上”,只是暫時用于填充函數(shù)主體而已,無法保持函數(shù)體為空而不產(chǎn)生語法錯誤,因此,可以使用pass來替代。兩者的區(qū)別:continue語句只結(jié)束本次循環(huán),不終止整個循環(huán)的執(zhí)行,而break具備結(jié)束循環(huán)的能力。本題選擇C選項。
8.B“1.5+2.1”表達式的結(jié)果與3.6比較是否相等,返回的結(jié)果為布爾值,即True或False,結(jié)果相等,所以代碼輸出的結(jié)果應(yīng)為True。
9.C判斷條件4<=5<=6是成立的,故輸出True。本題選擇C選項。
10.B文件打開模式中“w”表示覆蓋寫模式,文件不存在則創(chuàng)建,存在則完全覆蓋原文件。文件寫入方法中,writelines()直接將列表類型的各元素連接起來寫入文件中。此代碼就是將列表ls中的內(nèi)容整體寫入文件中。本題選擇B選項。
11.C
12.Brange()函數(shù)的語法:range(start,stop,step),作用是生成一個從start參數(shù)的值開始,到stop參數(shù)的值結(jié)束的數(shù)字序列(注意不包含數(shù)stop),step是步進參數(shù)。cLis=list(range(5)),生成一個列表,包含0,1,2,3,4。因為5不在CLis列表中,故返回False。
13.B數(shù)據(jù)流圖是系統(tǒng)邏輯模型的圖形表示,從數(shù)據(jù)傳遞和加工的角度,來刻畫數(shù)據(jù)流從輸入到輸出的移動變化過程,它直接支持系統(tǒng)的功能建模。本題選擇B選項。
14.BPython中open()函數(shù)提供了7種基本的文件打開模式:r、w、x、a、b、t、+。其中,r、w、x、a可以和b、t、+組合使用。故表示錯誤的是B項。
15.DPIL庫是Python在圖像處理方向的重要的第三方庫,支持圖像存儲、處理和顯示,它能夠處理幾乎所有的圖片格式,可以完成對圖像的縮放、剪裁、疊加,以及為圖像添加線條和文字等。使用Python處理圖像相關(guān)的程序,首選PIL庫。本題選擇D選項。
16.D
17.Afor…in遍歷結(jié)構(gòu)可以是字符串、文件、rangge()函數(shù)和組合數(shù)據(jù)類型。
18.CPython的單分支結(jié)構(gòu)使用if保留字對條件進行判斷,使用方式為:\nif<條件>:\n<語句塊>\nPython的二分支結(jié)構(gòu)使用if—else保留字對條件進行判斷,語法格式為:\nif<條件>:\n<語句塊1>\nelse:\n<語句塊2>\nPython的多分支結(jié)構(gòu)使用if—elif—else保留字對多個相關(guān)條件進行判斷,并根據(jù)不同條件的結(jié)果按照順\n序選擇執(zhí)行路徑,語法格式為:\nif<條件l>:\n<語句塊1>\nelif<條件2>:\n<語句塊2>\nelse:\n<語句塊3>
19.C根據(jù)程序中變量所在的位置和作用范圍,變量分為全局變量和局部變量。局部變量指在函數(shù)內(nèi)部定義的變量,僅在函數(shù)內(nèi)部有效,且作用域也在函數(shù)內(nèi)部,當(dāng)函數(shù)退出時變量將不再存在。全局變量一般指在函數(shù)之外定義的變量,在程序執(zhí)行的全過程有效。全局變量在函數(shù)內(nèi)部使用時,需要提前使用保留字global聲明,語法形式:global<全局變量>。使用global對全局變量聲明時,該變量要與外部全局變量同名。故答案為C項。
20.D使用rmdir()刪除目錄之前要先清除其中所有的文件,否則會報OSError錯誤。本題選擇D選項。
21.C
22.D先計算冪,3**2=9,9*4=36,36//6=6,6%7=6。//是整除運算,%是求余運算。本題選D選項。
23.Atime.time()返回的是當(dāng)前時間的時間戳,是一個浮點數(shù),以秒為單位。本題選擇A選項。
24.C列表索引從0開始,列表遵循正向遞增索引和反向遞減索引,故ls[2][1][-2]是字符o。本題選擇C選項。
25.B在Python語言中,使用for..in..方式形成的循環(huán)能遍歷的類型有字符串、文件、range()函數(shù)或組合數(shù)據(jù)類型,不能遍歷復(fù)數(shù)。
26.B關(guān)系數(shù)據(jù)庫中的關(guān)系是要滿足一定要求的,滿足不同程度要求的為不同的范式。滿足最低要求的叫第一范式,簡稱1NF。在滿足第一范式的基礎(chǔ)上,進一步滿足更多要求規(guī)范則是第二范式。然后在滿足第二范式的基礎(chǔ)上,還可以再滿足第三范式,以此類推。\n對于關(guān)系模式,若其中的每個屬性都已不能再分為簡單項,則它屬于第一范式。\n若某個關(guān)系R為第一范式,并且R中每一個非主屬性完全依賴于R的某個候選鍵,則稱其為第二范式。第二范式消除了非主屬性對主鍵的部分依賴。\n如果關(guān)系R是第二范式,并且每個非主屬性都不傳遞依賴于R的候選鍵,則稱R為第三范式。(傳遞依賴:在關(guān)系模式中,如果Y→X,X→A,且X不決定Y和A不屬于X,那么Y→A是傳遞依賴。)\n本題中,關(guān)系S滿足第一范式和第二范式,但是S#→D#,D#→Da,存在傳遞依賴,因此不滿足第三范式。該關(guān)系的范式最高是2NF。本題選B選項。
27.B在Python中,字典是存儲可變數(shù)量鍵值對的數(shù)據(jù)結(jié)構(gòu),通過字典類型實現(xiàn)映射。字典使用花括號({})創(chuàng)建,每個元素是一個鍵值對,語法格式為:{<鍵1>:<值1>,<鍵2>:\n<值2>,'…,<鍵n:<值n>}其中,鍵和值通過冒號連接,不同鍵值對通過逗號隔開。字典具有和集合類似的性質(zhì),即鍵值對之間沒有順序且不能重復(fù)。d[鍵]獲取鍵對應(yīng)值的值,d.get(key,defart)方法用來返回key對應(yīng)的值,如果字典中不存在該鍵,則返回默認值。本題選擇B選項。
28.D在Python中,讀取CSV文件中的二維碼數(shù)據(jù)采用遍歷循環(huán)和字符串的split()方法相結(jié)合,方法如下:f=open('cpi.csv”,”r”)ls=[]forlineinf:Is.append(line,strip(“\\n').split(“,”))f.close()本題選擇D選項。
29.B在Python中,字典是存儲可變數(shù)量鍵值對的數(shù)據(jù)結(jié)構(gòu),通過字典類型實現(xiàn)映射,一個鍵對應(yīng)一個值,鍵必須是唯一的,且必須是不可變數(shù)據(jù)類型,值可以是任何數(shù)據(jù)類型。字典具有和集合類似的性質(zhì),即鍵值對之間沒有順序且不能重復(fù)。字典可以通過”字典[’鍵’]”的形式訪問對應(yīng)的元素,即以鍵為索引進行訪問。故描述錯誤的是B項。
30.C在Python中,0.1+0.2=0.30000000000000004。原因是:對于十進制,它只能表示以進制數(shù)的質(zhì)因子為分母的分數(shù)。10的質(zhì)因子有2和5,因此1/2、1/4、1/5、1/8及1/10都可以精確表示;相反,1/3、1/6及1/7都是循環(huán)小數(shù),因為它們的分母使用了質(zhì)因子3或者7。二進制中,只有一個質(zhì)因子,即2,因此只能精確表示分母質(zhì)因子是2的分數(shù)。二進制中,1/2、1/4及1/8都可以被精確表示,但1/5或者1/10就變成了循環(huán)小數(shù)。所以,在十進制中能夠精確表示的0.1與0.2(1/10與1/5),到了計算機所使用的二進制中就變成了循環(huán)小數(shù)。當(dāng)對這些循環(huán)小數(shù)進行數(shù)學(xué)運算并將二進制數(shù)據(jù)轉(zhuǎn)換成人類易讀的十進制數(shù)據(jù)時,會對小數(shù)尾部進行截斷處理。在不同的編程語言中,運行0.1+0.2會輸出不同的結(jié)果。本題選擇C選項。
31.Y
32.Y
33.N
34.Y
35.N
36.N
37.Y
38.Y
39.Y
40.Y
41.+
42.[1,2,[3]]
43.True
44.TrueTrue
45.{3}
46.{2,3}
47.'1'
48.listdir()
49.type()
50.[2,3]
51.importjiebas=input(”請輸入一個字符串”)n=len(s)m=len(jieba.lcut(s)print("中文字符數(shù)為{},中文詞語數(shù)為{}。”.format(n,m)本題要求使用jieba中文分詞庫,統(tǒng)計輸入的字符串的長度以及中文詞語數(shù)。給定的字符串s中僅包含中文字符和中文標(biāo)點符號,因此可以直接使用len()函數(shù)統(tǒng)計字符數(shù)量,第1空填len(s)。再使用jieba庫的lcut(s)方法,返回一個以中文詞語為元素的列表類型,使用len()獲得列表的長度,即中文詞語數(shù)量。因此第2\r\n空填len(jieba.lcut(s))
52.count=0\r\n
whilecount<50:\r\n
count+=1\r\n
ifcount%2==0:\r\n
continue\r\n
print(count,end=”,”)判斷一個數(shù)是否為奇數(shù),即判斷這個數(shù)能否被2整除,可以被整除則為偶數(shù),結(jié)束本次循環(huán),使用continue語句;不可以被整除則為奇數(shù),輸出該數(shù)。while循環(huán)不具有自動計數(shù)的功能,所以需要定義一個變量,初始值為0,每經(jīng)過一次循環(huán),變量加1;當(dāng)變量超過50時,停止循環(huán)。
53.lower=int(input(‘輸入?yún)^(qū)間最小值:’))upper=int(inputs(‘輸入?yún)^(qū)間最大值:’))fornuminrange(lower+1,upper):Ifnum>1:Foriin染個(2,num):If(num%i)==0:BreakElse:Print(num)題目要求輸出兩個整數(shù)之間(不包括這兩個整數(shù))的所有素數(shù),因此mnge()函數(shù)的參數(shù)應(yīng)為lower+1和upper。for循環(huán)遍歷range(lower\r\n+l,upper)返回的每個整數(shù)num,判斷該數(shù)是否為素數(shù)。如果num大于1(1既不是素數(shù)也不是合數(shù)),且該數(shù)能被取值范圍為[2,num-1\r\n]的任何一個整數(shù)整除,那么該數(shù)一定不是素數(shù),否則一定是素數(shù)。河南省焦作市全國計算機等級考試Python語言程序設(shè)計學(xué)校:________班級:________姓名:________考號:________
一、單選題(30題)1.以下關(guān)于“for<循環(huán)變量>in<循環(huán)結(jié)構(gòu)>”的描述,錯誤的是()。
A.<循環(huán)結(jié)構(gòu)>采用[1,2,3]和[‘1’,‘2’,‘3’]的時候,循環(huán)的次數(shù)是一樣的
B.這個循環(huán)體語句中不能有break語句,會影響循環(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ù)
2.一個類繼承另一個類,那么被繼承的這個類被稱為()。
A.超類B.子類C.類D.繼承類
3.關(guān)于以下代碼的描述中,正確的是()。defrune(a,b):c=a**2+bb=areturnca=10b=2c=func(b,a)+a
A.執(zhí)行該函數(shù)后,變量c的值為112
B.該函數(shù)名稱為fun
C.執(zhí)行該函數(shù)后,變量b的值為2
D.執(zhí)行該函數(shù)后,變量b的值為10
4.以下程序的輸出結(jié)果是()。f=lambdax:5f(3)
A.3B.5C.35D.35
5.以下程序的輸出結(jié)果是()。Deffun(x):try:Returnx*4except:returnxprint(fun("5"))
A.20B.5555C.5D.9
6.下面代碼的輸出結(jié)果是()。foriin”Goaheadbravely!”:ifi==”b”:breakelse:print(i,end=””)
A.Goaheadrarely!B.bravely!C.Goaheadbravely!D.Goahead
7.以下關(guān)于Python循環(huán)結(jié)構(gòu)的描述中,錯誤的是()。
A.while循環(huán)使用關(guān)鍵字continue結(jié)束本次循環(huán)
B.while循環(huán)可以使用保留字break和continue
C.while循環(huán)也叫遍歷循環(huán),用來遍歷序列中的元素,默認提取每個元素并執(zhí)行一次循環(huán)體
D.while循環(huán)使用pass語句,則什么事也不做,只是空占位語句
8.以下代碼的輸出結(jié)果是()。print(1.5+2.1==3.6)
A.3.6B.TrueC.1.5+2.1==3.6D.False
9.以下關(guān)于Python的描述中,正確的是()。A.條件4<=5<=6是合法的,輸出False
B.條件4<=5<=6是不合法的
C.條件4<=5<=6是合法的,輸出True
D.條件4<=5<=6是不合法的,拋出異常
10.以下程序的輸出結(jié)果是()。fo=open(“book.txt”,“w”)ls=[‘C語言’,‘Java’,‘C#’,‘Python’]fo.writelines(ls)fo.close()
A.‘語言’‘Java’‘C#’‘Python’
B.C語言JavaC#Python
C.[C語言,Java,C#,Python]
D.[‘C語言’‘Java’‘C#’,‘Python’]
11.執(zhí)行以下代碼的結(jié)果是?A.4B.5C.6D.7
12.以下代碼的輸出結(jié)果是()。CLis=list(range(5))print(5inCLis)
A.TrueB.FalseC.0D.一1
13.數(shù)據(jù)流圖的作用是()。
A.描述軟件系統(tǒng)的控制流B.支持軟件系統(tǒng)的功能建模C.支持軟件系統(tǒng)的面向?qū)ο蠓治鯠.描述軟件系統(tǒng)的數(shù)據(jù)結(jié)構(gòu)
14.關(guān)于Python文件打開模式,表示錯誤的是()。
A.rtB.nbC.abD.wt
15.在Python中,能夠處理圖像的第三方庫是()。
A.PylnstallerB.PyserialC.PygameD.PIL
16.執(zhí)行以下代碼的結(jié)果是()A.2B.5C.8D.Anexceptionisthrown
17.在Python語言中,使用for…in方式形成的循環(huán)不能遍歷的類型是()。
A.復(fù)數(shù)B.列表C.字典D.字符串
18.以下關(guān)于分支結(jié)構(gòu)的描述中,錯誤的是()。
A.if語句中語句塊執(zhí)行與否依賴于條件判斷
B.if語句中條件部分可以使用任何能夠產(chǎn)生True和False的語句和函數(shù)
C.二分支結(jié)構(gòu)有一種緊湊形式,使用保留字if和elif實現(xiàn)
D.多分支結(jié)構(gòu)用于設(shè)置多個判斷條件以及對應(yīng)的多條執(zhí)行路徑
19.關(guān)于Python全局變量和局部變量,以下選項描述錯誤的是()。
A.全局變量在源文件頂層,一般沒有縮進
B.程序中的變量包含兩類:全局變量和局部變量
C.函數(shù)內(nèi)部使用各種全局變量,都要用globle語句聲明
D.不是在程序最開頭定義的全局變量,不是全過程均有效
20.如果文件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
21.當(dāng)在命令行中以pythonmy.pyv1v2形式運行python腳本時,通過fromsysimportargv如何獲得v2的參數(shù)值?
A.argv[0]B.argv[1]C.argv[2]D.argv[3]
22.表達式3**2*4//6%7的計算結(jié)果是()。
A.3B.5C.4D.6
23.time庫的time.time()函數(shù)的作用是()。
A.以數(shù)字形式返回當(dāng)前系統(tǒng)時間
B.以字符串形式返回當(dāng)前系統(tǒng)時間
C.以struct_time形式返回當(dāng)前系統(tǒng)時間
D.根據(jù)format格式定義返回當(dāng)前系統(tǒng)時間
24.以下程序的輸出結(jié)果是()。Is=[‘book’,666,[2018,‘python’,314],20]print(ls[2][1][-2])
A.nB.pythonC.oD.結(jié)果錯誤
25.在Python語言中,使用for..in..方式形成的循環(huán)不能遍歷的類型是()。
A.列表B.復(fù)數(shù)C.字符串D.字典
26.定義學(xué)生的關(guān)系模式如下:S(S#,Sn,Sex,Age,D#,Da)(其屬性分別為學(xué)號、姓名、性別、年齡、所屬學(xué)院、院長)該關(guān)系的范式最高是()。
A.1NFB.2NFC.3NFD.BCNF
27.以下代碼的輸出結(jié)果是()。d={”大海”:”藍色”,”天空":”灰色","大地":”黑色”}print(d["大地”],d.get("天空”,"黃色”))
A.黑色黑色B.黑色灰色C.黑色黃色D.黑色藍色
28.在Python中,讀入CSV文件保存的二維數(shù)據(jù),按特定分隔符抽取信息,最可能用到的函數(shù)是()。
A.read()B.join()C.replace()D.split()
29.關(guān)于字典的描述,錯誤的是()。
A.字典的元素以鍵為索引進行訪問
B.字典的一個鍵可以對應(yīng)多個值
C.字典長度是可變的
D.字典是鍵值對的結(jié)合,鍵值對之間沒有順序
30.以下代碼的輸出結(jié)果是()。print(0.1+0.2==0.3)
A.-1B.TrueC.FalseD.0
二、判斷題(10題)31.使用Python列表的方法insert()為列表插入元素時會改變列表中插入位置之后元素的索引。
A.是B.否
32.假設(shè)已成功導(dǎo)入os和sys標(biāo)準(zhǔn)庫,那么表達式os.path.dirname(sys.executable)的值為Python安裝目錄。
A.是B.否
33.已知x為非空列表,那么表達式sorted(x,reverse=True)==list(reversed(x))的值一定是True。
A.是B.否
34.Python字典中的“鍵”不允許重復(fù)。
A.是B.否
35.表達式{1,3,2}>{1,2,3}的值為True。
A.是B.否
36.在調(diào)用函數(shù)時,必須牢記函數(shù)形參順序才能正確傳值。
A.是B.否
37.Python變量名區(qū)分大小寫,所以student和Student不是同一個變量。
A.是B.否
38.Python列表、元組、字符串都屬于有序序列。
A.是B.否
39.集合可以作為列表的元素。
A.是B.否
40.Python標(biāo)準(zhǔn)庫os中的方法listdir()返回包含指定路徑中所有文件和文件夾名稱的列表。
A.是B.否
三、填空題(10題)41.正則表達式元字符________用來表示該符號前面的字符或子模式1次或多次出現(xiàn)。
42.已知列表x=[1,2],那么執(zhí)行語句x.append([3])之后,x的值為_____________。
43.已知a=[1,2,3]和b=[1,2,4],那么id(a[1])==id(b[1])的執(zhí)行結(jié)果為___________。
44.表達式type(3)==int的值為__________。
45.表達式{1,2,3}&{3,4,5}的值為______________。
46.表達式{1,2,3}&{2,3,4}的值為___________。
47.執(zhí)行語句x,y,z=map(str,range(3))之后,變量y的值為___________。
48.Python標(biāo)準(zhǔn)庫os中用來列出指定文件夾中的文件和子文件夾列表的方式是____________。
49.查看變量類型的Python內(nèi)置函數(shù)是________________。
50.已知列表x=[1,2,3],那么執(zhí)行語句x.pop(0)之后,x的值為_________。
四、操作題(3題)51.考生文件夾下存在一個文件“PY102.Py”,請寫代碼替換橫線,不修改其他代碼,實現(xiàn)以下功能。用鍵盤輸入一段文本,保存在一個字符串變量s中,分別用Python內(nèi)置函數(shù)和jieba庫中已有函數(shù)計算字符串s的中文字符個數(shù)和中文詞語個數(shù)。注意:中文字符包含中文標(biāo)點符號。示例格式如下。
鍵盤輸入:科技是第一生產(chǎn)力屏幕輸出:中文字符數(shù)為8,中文詞語數(shù)為4。
試題程序:#請在程序的處使用一行代碼或表達式替換
#注意:請不要修改其他已給出代碼importjiebas=input("請輸入一個字符串")n=_____(1)_____m=_____(2)_____print("中文字符數(shù)為{},中文詞語數(shù)為{}format(n,m))
52.考生文件夾下存在一個文件PY103.py,請寫代碼替換橫線,不修改其他代碼,實現(xiàn)以下功能:使用循環(huán)輸出從1到50之間的奇數(shù)。
試題程序:
#請在_____處使用一行代碼或表達式替換
#注意:請不要修改其他已給出代碼______whilecount<50:
ifcount%2==0:
print(count,end=”,”)
53.考生文件夾下存在一個文件“PY202.py”,該文件是本題目的代碼提示框架,其中代碼可以任意修改。請在該文件中編寫代碼,以實現(xiàn)如下功能。用鍵盤輸入兩個大于0的整數(shù),按要求輸出這兩個整數(shù)之間(不包括這兩個整數(shù))的所有素數(shù)。素數(shù)又稱質(zhì)數(shù),是指除了1和它本身以外不能被其他整數(shù)整除的數(shù)。試題程序:#以下代碼為提示框架#請在...處使用一行或多行代碼替換#請在_____處使用一行代碼替換#注意:提示框架的代碼可以任意修改,以完成程序功能為準(zhǔn)lower=int(input(‘輸入?yún)^(qū)間最小值:’))upper=int(inputs(‘輸入?yún)^(qū)間最大值:’))fornuminrange(_____,_____):
參考答案
1.Bfor語句的循環(huán)執(zhí)行次數(shù)是根據(jù)<循環(huán)結(jié)構(gòu)>中元素的個數(shù)確定的,[1,2,3]和[‘1’,‘2’,‘3’]均有3個元素,因此循環(huán)次數(shù)是一樣的,A選項正確。range()函數(shù)只有一個參數(shù)時表示會產(chǎn)生從0開始計數(shù)到輸入?yún)?shù)的前一位整數(shù)結(jié)束的整數(shù)列表;有兩個參數(shù)時,則將第一個參數(shù)作為起始位,第二個參數(shù)作為結(jié)束位,輸出從起始位到結(jié)束位的前一位的整數(shù)列表;有3個參數(shù)時,第三個參數(shù)表示步長,起始位按照步長遞增或遞減。因此選項C、D正確。循環(huán)體中的break語句的確能影響循環(huán)次數(shù),但是不代表循環(huán)體中不能有break語句,B選項錯誤。本題選擇B選項。
2.A一個類繼承另一個類,那么被繼承的這個類被稱為超類或者父類。
3.C程序中,將實參b的值傳給形參a,將實參a的值傳給形參b,則在函數(shù)體中c=2**2+10=14,函數(shù)返回14,則實參c=14+10=24;形參a和b在函數(shù)結(jié)束后會自動釋放,并沒有影響到實參a和b的值,故實參a仍然是10,實參b仍然是2。
4.Blambda關(guān)鍵字常用來聲明匿名函數(shù),其格式為:<函數(shù)名>=lambda.<參數(shù)列表>:<表達式>,等價于下面形式:\ndef<函數(shù)名>(<參數(shù)列表>):\nreturn<表達式>\n由此可以知道,不管傳給函數(shù)f的實參為多少,返回值始終為5。
5.Bfum(”5”)將字符5賦給形參x,由于5是字符類型,不是數(shù)字類型,不能進行數(shù)值運算,因此x\n*4是把字符5連續(xù)復(fù)制4次輸出。本題選擇B選項。
6.Dfor循環(huán)遍歷字符串,當(dāng)變量i賦值為b時,break跳出本層循環(huán),即后面的字符不再遍歷,當(dāng)值不為b時就將其輸出,結(jié)果為Goahead。
7.CPython中循環(huán)包括兩種:遍歷循環(huán)和無限循環(huán)。遍歷循環(huán)使用關(guān)鍵字for依次提取遍歷結(jié)構(gòu)元素進行處理;無限循環(huán)使用關(guān)鍵字while根據(jù)判斷條件執(zhí)行程序。循環(huán)結(jié)構(gòu)有兩個輔助循環(huán)控制關(guān)鍵字:break和continue。break用來跳出最內(nèi)層for或while循環(huán),脫離該循環(huán)后程序從循環(huán)后的代碼繼續(xù)執(zhí)行。continue用來結(jié)束當(dāng)前當(dāng)次循環(huán),即跳出循環(huán)體中下面尚未執(zhí)行的語句,但跳不出當(dāng)前循環(huán)。pass:什么事也不做,只是空占位語句,并且是無運算的占位語句,當(dāng)語法需要語句并且還沒有任何使用的語句可寫時,就可以使用它。它通常用于為復(fù)合語句編寫一個空的主體。如果寫無限循環(huán),每次迭代什么也不做,就寫pass。pass是有意義的,如忽略try語句所捕獲的異常,以及定義帶屬性的空類對象,而該類實現(xiàn)的對象行為就像其他語言的結(jié)構(gòu)和記錄。pass有時指“以后會填上”,只是暫時用于填充函數(shù)主體而已,無法保持函數(shù)體為空而不產(chǎn)生語法錯誤,因此,可以使用pass來替代。兩者的區(qū)別:continue語句只結(jié)束本次循環(huán),不終止整個循環(huán)的執(zhí)行,而break具備結(jié)束循環(huán)的能力。本題選擇C選項。
8.B“1.5+2.1”表達式的結(jié)果與3.6比較是否相等,返回的結(jié)果為布爾值,即True或False,結(jié)果相等,所以代碼輸出的結(jié)果應(yīng)為True。
9.C判斷條件4<=5<=6是成立的,故輸出True。本題選擇C選項。
10.B文件打開模式中“w”表示覆蓋寫模式,文件不存在則創(chuàng)建,存在則完全覆蓋原文件。文件寫入方法中,writelines()直接將列表類型的各元素連接起來寫入文件中。此代碼就是將列表ls中的內(nèi)容整體寫入文件中。本題選擇B選項。
11.C
12.Brange()函數(shù)的語法:range(start,stop,step),作用是生成一個從start參數(shù)的值開始,到stop參數(shù)的值結(jié)束的數(shù)字序列(注意不包含數(shù)stop),step是步進參數(shù)。cLis=list(range(5)),生成一個列表,包含0,1,2,3,4。因為5不在CLis列表中,故返回False。
13.B數(shù)據(jù)流圖是系統(tǒng)邏輯模型的圖形表示,從數(shù)據(jù)傳遞和加工的角度,來刻畫數(shù)據(jù)流從輸入到輸出的移動變化過程,它直接支持系統(tǒng)的功能建模。本題選擇B選項。
14.BPython中open()函數(shù)提供了7種基本的文件打開模式:r、w、x、a、b、t、+。其中,r、w、x、a可以和b、t、+組合使用。故表示錯誤的是B項。
15.DPIL庫是Python在圖像處理方向的重要的第三方庫,支持圖像存儲、處理和顯示,它能夠處理幾乎所有的圖片格式,可以完成對圖像的縮放、剪裁、疊加,以及為圖像添加線條和文字等。使用Python處理圖像相關(guān)的程序,首選PIL庫。本題選擇D選項。
16.D
17.Afor…in遍歷結(jié)構(gòu)可以是字符串、文件、rangge()函數(shù)和組合數(shù)據(jù)類型。
18.CPython的單分支結(jié)構(gòu)使用if保留字對條件進行判斷,使用方式為:\nif<條件>:\n<語句塊>\nPython的二分支結(jié)構(gòu)使用if—else保留字對條件進行判斷,語法格式為:\nif<條件>:\n<語句塊1>\nelse:\n<語句塊2>\nPython的多分支結(jié)構(gòu)使用if—elif—else保留字對多個相關(guān)條件進行判斷,并根據(jù)不同條件的結(jié)果按照順\n序選擇執(zhí)行路徑,語法格式為:\nif<條件l>:\n<語句塊1>\nelif<條件2>:\n<語句塊2>\nelse:\n<語句塊3>
19.C根據(jù)程序中變量所在的位置和作用范圍,變量分為全局變量和局部變量。局部變量指在函數(shù)內(nèi)部定義的變量,僅在函數(shù)內(nèi)部有效,且作用域也在函數(shù)內(nèi)部,當(dāng)函數(shù)退出時變量將不再存在。全局變量一般指在函數(shù)之外定義的變量,在程序執(zhí)行的全過程有效。全局變量在函數(shù)內(nèi)部使用時,需要提前使用保留字global聲明,語法形式:global<全局變量>。使用global對全局變量聲明時,該變量要與外部全局變量同名。故答案為C項。
20.D使用rmdir()刪除目錄之前要先清除其中所有的文件,否則會報OSError錯誤。本題選擇D選項。
21.C
22.D先計算冪,3**2=9,9*4=36,36//6=6,6%7=6。//是整除運算,%是求余運算。本題選D選項。
23.Atime.time()返回的是當(dāng)前時間的時間戳,是一個浮點數(shù),以秒為單位。本題選擇A選項。
24.C列表索引從0開始,列表遵循正向遞增索引和反向遞減索引,故ls[2][1][-2]是字符o。本題選擇C選項。
25.B在Python語言中,使用for..in..方式形成的循環(huán)能遍歷的類型有字符串、文件、range()函數(shù)或組合數(shù)據(jù)類型,不能遍歷復(fù)數(shù)。
26.B關(guān)系數(shù)據(jù)庫中的關(guān)系是要滿足一定要求的,滿足不同程度要求的為不同的范式。滿足最低要求的叫第一范式,簡稱1NF。在滿足第一范式的基礎(chǔ)上,進一步滿足更多要求規(guī)范則是第二范式。然后在滿足第二范式的基礎(chǔ)上,還可以再滿足第三范式,以此類推。\n對于關(guān)系模式,若其中的每個屬性都已不能再分為簡單項,則它屬于第一范式。\n若某個關(guān)系R為第一范式,并且R中每一個非主屬性完全依賴于R的某個候選鍵,則稱其為第二范式。第二范式消除了非主屬性對主鍵的部分依賴。\n如果關(guān)系R是第二范式,并且每個非主屬性都不傳遞依賴于R的候選鍵,則稱R為第三范式。(傳遞依賴:在關(guān)系模式中,如果Y→X,X→A,且X不決定Y和A不屬于X,那么Y→A是傳遞依賴。)\n本題中,關(guān)系S滿足第一范式和第二范式,但是S#→D#,D#→Da,存在傳遞依賴,因此不滿足第三范式。該關(guān)系的范式最高是2NF。本題選B選項。
27.B在Python中,字典是存儲可變數(shù)量鍵值對的數(shù)據(jù)結(jié)構(gòu),通過字典類型實現(xiàn)映射。字典使用花括號({})創(chuàng)建,每個元素是一個鍵值對,語法格式為:{<鍵1>:<值1>,<鍵2>:\n<值2>,'…,<鍵n:<值n>}其中,鍵和值通過冒號連接,不同鍵值對通過逗號隔開。字典具有和集合類似的性質(zhì),即鍵值對之間沒有順序且不能重復(fù)。d[鍵]獲取鍵對應(yīng)值的值,d.get(key,defart)方法用來返回key對應(yīng)的值,如果字典中不存在該鍵,則返回默認值。本題選擇B選項。
28.D在Python中,讀取CSV文件中的二維碼數(shù)據(jù)采用遍歷循環(huán)和字符串的split()方法相結(jié)合,方法如下:f=open('cpi.csv”,”r”)ls=[]forlineinf:Is.append(line,strip(“\\n').split(“,”))f.close()本題選擇D選項。
29.B在Python中,字典是存儲可變數(shù)量鍵值對的數(shù)據(jù)結(jié)構(gòu),通過字典類型實現(xiàn)映射,一個鍵對應(yīng)一個值,鍵必須是唯一的,且必須是不可變數(shù)據(jù)類型,值可以是任何數(shù)據(jù)類型。字典具有和集合類似的性質(zhì),即鍵值對之間沒有順序且不能重復(fù)。字典可以通過”字典[’鍵’]”的形式訪問對應(yīng)的元素,即以鍵為索引進行訪問。故描述錯誤的是B項。
30.C在Python中,0.1+0.2=0.30000000000000004。原因是:對于十進制,它只能表示以進制數(shù)的質(zhì)因子為分母的分數(shù)。10的質(zhì)因子有2和5,因此1/2、1/4、1/5、1/8及1/10都可以精確表示;相反,1/3、1/6及1/7都是循環(huán)小數(shù),因為它們的分母使用了質(zhì)因子3或者7。二進制中,只有一個質(zhì)因子,即2,因此只能精確表示分母質(zhì)因子是2的分數(shù)。二進制中,1/2、1/4及1/8都可以被精確表示,但1/5或者1/10就變成了循環(huán)小數(shù)。所以,在十進制中能夠精確表示的0.1與0.2(1/10與1/5),到了計算機所使用的二進制中就變成了循環(huán)小數(shù)。當(dāng)對這些循環(huán)小數(shù)進行數(shù)學(xué)運算并將二進制數(shù)據(jù)轉(zhuǎn)換成人類易讀的十進制數(shù)據(jù)時,會對小數(shù)尾部進行截斷處理。在不同的編程語言中,運行0.1+0.2會輸出不同的結(jié)果。本題選擇C選項。
31.Y
32.Y
33.N
34.Y
35.N
36.N
37.Y
38.Y
39.Y
40.Y
41.+
42.[1,2,[3]]
43.True
44.TrueTrue
45.{3}
46.{2,3}
47.'1'
48.listdir()
49.type()
50.[2,3]
51.importjiebas=input(”請輸入一個字符串”)n=len(s)m=len(jieba.lcut(s)print("中文字符數(shù)為{},中文詞語數(shù)為{}。”.format(n,m)本題要求使用jieba中文分詞庫,統(tǒng)計輸入的字符串的長度以及中文詞語數(shù)。給定的字符串s中僅包含中文字符和中文標(biāo)點符號,因此可以直接使用len()函數(shù)統(tǒng)計字符數(shù)量,第1空填len(s)。再使用jieba庫的lcut(s)方法,返回一個以中文詞語為元素的列表類型,使用len()獲得列表的長度,即中文詞語數(shù)量。因此第2\r\n空填len(jieba.lcut(s))
52.count=0\r\n
whilecount<50:\r\n
count+=1\r\n
ifcount%2==0:\r\n
continue\r\n
print(count,end=”,”)判斷一個數(shù)是否為奇數(shù),即判斷這個數(shù)能否被2整除,可以被整除則為偶數(shù),結(jié)束本次循環(huán),使用continue語句;不可以被整除則為奇數(shù),輸出該數(shù)。while循環(huán)不具有自動計數(shù)的功能,所以需要定義一個變量,初始值為0,每經(jīng)過一次循環(huán),變量加1;當(dāng)變量超過50時,停止循環(huán)。
53.lower=int(input(‘輸入?yún)^(qū)間最小值:’))upper=int(inputs(‘輸入?yún)^(qū)間最大值:’))fornuminrange(lower+1,upper):Ifnum>1:Foriin染個(2,num):If(num%i)==0:BreakElse:Print(num)題目要求輸出兩個整數(shù)之間(不包括這兩個整數(shù))的所有素數(shù),因此mnge()函數(shù)的參數(shù)應(yīng)為lower+1和upper。for循環(huán)遍歷range(lower\r\n+l,upper)返回的每個整數(shù)num,判斷該數(shù)是否為素數(shù)。如果num大于1(1既不是素數(shù)也不是合數(shù)),且該數(shù)能被取值范圍為[2,num-1\r\n]的任何一個整數(shù)整除,那么該數(shù)一定不是素數(shù),否則一定是素數(shù)。河南省焦作市全國計算機等級考試Python語言程序設(shè)計學(xué)校:________班級:________姓名:________考號:________
一、單選題(30題)1.以下關(guān)于“for<循環(huán)變量>in<循環(huán)結(jié)構(gòu)>”的描述,錯誤的是()。
A.<循環(huán)結(jié)構(gòu)>采用[1,2,3]和[‘1’,‘2’,‘3’]的時候,循環(huán)的次數(shù)是一樣的
B.這個循環(huán)體語句中不能有break語句,會影響循環(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ù)
2.一個類繼承另一個類,那么被繼承的這個類被稱為()。
A.超類B.子類C.類D.繼承類
3.關(guān)于以下代碼的描述中,正確的是()。defrune(a,b):c=a**2+bb=areturnca=10b=2c=func(b,a)+a
A.執(zhí)行該函數(shù)后,變量c的值為112
B.該函數(shù)名稱為fun
C.執(zhí)行該函數(shù)后,變量b的值為2
D.執(zhí)行該函數(shù)后,變量b的值為10
4.以下程序的輸出結(jié)果是()。f=lambdax:5f(3)
A.3B.5C.35D.35
5.以下程序的輸出結(jié)果是()。Deffun(x):try:Returnx*4except:returnxprint(fun("5"))
A.20B.5555C.5D.9
6.下面代碼的輸出結(jié)果是()。foriin”Goaheadbravely!”:ifi==”b”:breakelse:print(i,end=””)
A.Goaheadrarely!B.bravely!C.Goaheadbravely!D.Goahead
7.以下關(guān)于Python循環(huán)結(jié)構(gòu)的描述中,錯誤的是()。
A.while循環(huán)使用關(guān)鍵字continue結(jié)束本次循環(huán)
B.while循環(huán)可以使用保留字break和continue
C.while循環(huán)也叫遍歷循環(huán),用來遍歷序列中的元素,默認提取每個元素并執(zhí)行一次循環(huán)體
D.while循環(huán)使用pass語句,則什么事也不做,只是空占位語句
8.以下代碼的輸出結(jié)果是()。print(1.5+2.1==3.6)
A.3.6B.TrueC.1.5+2.1==3.6D.False
9.以下關(guān)于Python的描述中,正確的是()。A.條件4<=5<=6是合法的,輸出False
B.條件4<=5<=6是不合法的
C.條件4<=5<=6是合法的,輸出True
D.條件4<=5<=6是不合法的,拋出異常
10.以下程序的輸出結(jié)果是()。fo=open(“book.txt”,“w”)ls=[‘C語言’,‘Java’,‘C#’,‘Python’]fo.writelines(ls)fo.close()
A.‘語言’‘Java’‘C#’‘Python’
B.C語言JavaC#Python
C.[C語言,Java,C#,Python]
D.[‘C語言’‘Java’‘C#’,‘Python’]
11.執(zhí)行以下代碼的結(jié)果是?A.4B.5C.6D.7
12.以下代碼的輸出結(jié)果是()。CLis=list(range(5))print(5inCLis)
A.TrueB.FalseC.0D.一1
13.數(shù)據(jù)流圖的作用是()。
A.描述軟件系統(tǒng)的控制流B.支持軟件系統(tǒng)的功能建模C.支持軟件系統(tǒng)的面向?qū)ο蠓治鯠.描述軟件系統(tǒng)的數(shù)據(jù)結(jié)構(gòu)
14.關(guān)于Python文件打開模式,表示錯誤的是()。
A.rtB.nbC.abD.wt
15.在Python中,能夠處理圖像的第三方庫是()。
A.PylnstallerB.PyserialC.PygameD.PIL
16.執(zhí)行以下代碼的結(jié)果是()A.2B.5C.8D.Anexceptionisthrown
17.在Python語言中,使用for…in方式形成的循環(huán)不能遍歷的類型是()。
A.復(fù)數(shù)B.列表C.字典D.字符串
18.以下關(guān)于分支結(jié)構(gòu)的描述中,錯誤的是()。
A.if語句中語句塊執(zhí)行與否依賴于條件判斷
B.if語句中條件部分可以使用任何能夠產(chǎn)生True和False的語句和函數(shù)
C.二分支結(jié)構(gòu)有一種緊湊形式,使用保留字if和elif實現(xiàn)
D.多分支結(jié)構(gòu)用于設(shè)置多個判斷條件以及對應(yīng)的多條執(zhí)行路徑
19.關(guān)于Python全局變量和局部變量,以下選項描述錯誤的是()。
A.全局變量在源文件頂層,一般沒有縮進
B.程序中的變量包含兩類:全局變量和局部變量
C.函數(shù)內(nèi)部使用各種全局變量,都要用globle語句聲明
D.不是在程序最開頭定義的全局變量,不是全過程均有效
20.如果文件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
21.當(dāng)在命令行中以pythonmy.pyv1v2形式運行python腳本時,通過fromsysimportargv如何獲得v2的參數(shù)值?
A.argv[0]B.argv[1]C.argv[2]D.argv[3]
22.表達式3**2*4//6%7的計算結(jié)果是()。
A.3B.5C.4D.6
23.time庫的time.time()函數(shù)的作用是()。
A.以數(shù)字形式返回當(dāng)前系統(tǒng)時間
B.以字符串形式返回當(dāng)前系統(tǒng)時間
C.以struct_time形式返回當(dāng)前系統(tǒng)時間
D.根據(jù)format格式定義返回當(dāng)前系統(tǒng)時間
24.以下程序的輸出結(jié)果是()。Is=[‘book’,666,[2018,‘python’,314],20]print(ls[2][1][-2])
A.nB.pythonC.oD.結(jié)果錯誤
25.在Python語言中,使用for..in..方式形成的循環(huán)不能遍歷的類型是()。
A.列表B.復(fù)數(shù)C.字符串D.字典
26.定義學(xué)生的關(guān)系模式如下:S(S#,Sn,Sex,Age,D#,Da)(其屬性分別為學(xué)號、姓名、性別、年齡、所屬學(xué)院、院長)該關(guān)系的范式最高是()。
A.1NFB.2NFC.3NFD.BCNF
27.以下代碼的輸出結(jié)果是()。d={”大海”:”藍色”,”天空":”灰色","大地":”黑色”}print(d["大地”],d.get("天空”,"黃色”))
A.黑色黑色B.黑色灰色C.黑色黃色D.黑色藍色
28.在Python中,讀入CSV文件保存的二維數(shù)據(jù),按特定分隔符抽取信息,最可能用到的函數(shù)是()。
A.read()B.join()C.replace()D.split()
29.關(guān)于字典的描述,錯誤的是()。
A.字典的元素以鍵為索引進行訪問
B.字典的一個鍵可以對應(yīng)多個值
C.字典長度是可變的
D.字典是鍵值對的結(jié)合,鍵值對之間沒有順序
30.以下代碼的輸出結(jié)果是()。print(0.1+0.2==0.3)
A.-1B.TrueC.FalseD.0
二、判斷題(10題)31.使用Python列表的方法insert()為列表插入元素時會改變列表中插入位置之后元素的索引。
A.是B.否
32.假設(shè)已成功導(dǎo)入os和sys標(biāo)準(zhǔn)庫,那么表達式os.path.dirname(sys.executable)的值為Python安裝目錄。
A.是B.否
33.已知x為非空列表,那么表達式sorted(x,reverse=True)==list(reversed(x))的值一定是True。
A.是B.否
34.Python字典中的“鍵”不允許重復(fù)。
A.是B.否
35.表達式{1,3,2}>{1,2,3}的值為True。
A.是B.否
36.在調(diào)用函數(shù)時,必須牢記函數(shù)形參順序才能正確傳值。
A.是B.否
37.Python變量名區(qū)分大小寫,所以student和Student不是同一個變量。
A.是B.否
38.Python列表、元組、字符串都屬于有序序列。
A.是B.否
39.集合可以作為列表的元素。
A.是B.否
40.Python標(biāo)準(zhǔn)庫os中的方法listdir()返回包含指定路徑中所有文件和文件夾名稱的列表。
A.是B.否
三、填空題(10題)41.正則表達式元字符________用來表示該符號前面的字符或子模式1次或多次出現(xiàn)。
42.已知列表x=[1,2],那么執(zhí)行語句x.append([3])之后,x的值為_____________。
43.已知a=[1,2,3]和b=[1,2,4],那么id(a[1])==id(b[1])的執(zhí)行結(jié)果為___________。
44.表達式type(3)==int的值為__________。
45.表達式{1,2,3}&{3,4,5}的值為______________。
46.表達式{1,2,3}&{2,3,4}的值為___________。
47.執(zhí)行語句x,y,z=map(str,range(3))之后,變量y的值為___________。
48.Python標(biāo)準(zhǔn)庫os中用來列出指定文件夾中的文件和子文件夾列表的方式是____________。
49.查看變量類型的Python內(nèi)置函數(shù)是________________。
50.已知列表x=[1,2,3],那么執(zhí)行語句x.pop(0)之后,x的值為_________。
四、操作題(3題)51.考生文件夾下存在一個文件“PY102.Py”,請寫代碼替換橫線,不修改其他代碼,實現(xiàn)以下功能。用鍵盤輸入一段文本,保存在一個字符串變量s中,分別用Python內(nèi)置函數(shù)和jieba庫中已有函數(shù)計算字符串s的中文字符個數(shù)和中文詞語個數(shù)。注意:中文字符包含中文標(biāo)點符號。示例格式如下。
鍵盤輸入:科技是第一生產(chǎn)力屏幕輸出:中文字符數(shù)為8,中文詞語數(shù)為4。
試題程序:#請在程序的處使用一行代碼或表達式替換
#注意:請不要修改其他已給出代碼importjiebas=input("請輸入一個字符串")n=_____(1)_____m=_____(2)_____print("中文字符數(shù)為{},中文詞語數(shù)為{}format(n,m))
52.考生文件夾下存在一個文件PY103.py,請寫代碼替換橫線,不修改其他代碼,實現(xiàn)以下功能:使用循環(huán)輸出從1到50之間的奇數(shù)。
試題程序:
#請在_____處使用一行代碼或表達式替換
#注意:請不要修改其他已給出代碼______whilecount<50:
ifcount%2==0:
print(count,end=”,”)
53.考生文件夾下存在一個文件“PY202.py”,該文件是本題目的代碼提示框架,其中代碼可以任意修改。請在該文件中編寫代碼,以實現(xiàn)如下功能。用鍵盤輸入兩個大于0的整數(shù),按要求輸出這兩個整數(shù)之間(不包括這兩個整數(shù))的所有素數(shù)。素數(shù)又稱質(zhì)數(shù),是指除了1和它本身以外不能被其他整數(shù)整除的數(shù)。試題程序:#以下代碼為提示框架#請在...處使用一行或多行代碼替換#請在_____處使用一行代碼替換#注意:提示框架的代碼可以任意修改,以完成程序功能為準(zhǔn)lower=int(input(‘輸入?yún)^(qū)間最小值:’))upper=int(inputs(‘輸入?yún)^(qū)間最大值:’))fornuminrange(_____,_____):
參考答案
1.Bfor語句的循環(huán)執(zhí)行次數(shù)是根據(jù)<循環(huán)結(jié)構(gòu)>中元素的個數(shù)確定的,[1,2,3]和[‘1’,‘2’,‘3’]均有3個元素,因此循環(huán)次數(shù)是一樣的,A選項正確。range()函數(shù)只有一個參數(shù)時表示會產(chǎn)生從0開始計數(shù)到輸入?yún)?shù)的前一位整數(shù)結(jié)束的整數(shù)列表;有兩個參數(shù)時,則將第一個參數(shù)作為起始位,第二個參數(shù)作為結(jié)束位,輸出從起始位到結(jié)束位的前一位的整數(shù)列表;有3個參數(shù)時,第三個參數(shù)表示步長,起始位按照步長遞增或遞減。因此選項C、D正確。循環(huán)體中的break語句的確能影響循環(huán)次數(shù),但是不代表循環(huán)體中不能有break語句,B選項錯誤。本題選擇B選項。
2.A一個類繼承另一個類,那么被繼承的這個類被稱為超類或者父類。
3.C程序中,將實參b的值傳給形參a,將實參a的值傳給形參b,則在函數(shù)體中c=2**2+10=14,函數(shù)返回14,則實參c=14+10=24;形參a和b在函數(shù)結(jié)束后會自動釋放,并沒有影響到實參a和b的值,故實參a仍然是10,實參b仍然是2。
4.Blambda關(guān)鍵字常用來聲明匿名函數(shù),其格式為:<函數(shù)名>=lambda.<參數(shù)列表>:<表達式>,等價于下面形式:\ndef<函數(shù)名>(<參數(shù)列表>):\nreturn<表達式>\n由此可以知道,不管傳給函數(shù)f的實參為多少,返回值始終為5。
5.Bfum(”5”)將字符5賦給形參x,由于5是字符類型,不是數(shù)字類型,不能進行數(shù)值運算,因此x\n*4是把字符5連續(xù)復(fù)制4次輸出。本題選擇B選項。
6.Dfor循環(huán)遍歷字符串,當(dāng)變量i賦值為b時,break跳出本層循環(huán),即后面的字符不再遍歷,當(dāng)值不為b時就將其輸出,結(jié)果為Goahead。
7.CPython中循環(huán)包括兩種:遍歷循環(huán)和無限循環(huán)。遍歷循環(huán)使用關(guān)鍵字for依次提取遍歷結(jié)構(gòu)元素進行處理;無限循環(huán)使用關(guān)鍵字while根據(jù)判斷條件執(zhí)行程序。循環(huán)結(jié)構(gòu)有兩個輔助循環(huán)控制關(guān)鍵字:break和continue。break用來跳出最內(nèi)層for或while循環(huán),脫離該循環(huán)后程序從循環(huán)后的代碼繼續(xù)執(zhí)行。continue用來結(jié)束當(dāng)前當(dāng)次循環(huán),即跳出循環(huán)體中下面尚未執(zhí)行的語句,但跳不出當(dāng)前循環(huán)。pass:什么事也不做,只是空占位語句,并且是無運算的占位語句,當(dāng)語法需要語句并且還沒有任何使用的語句可寫時,就可以使用它。它通常用于為復(fù)合語句編寫一個空的主體。如果寫無限循環(huán),每次迭代什么也不做,就寫pass。pass是有意義的,如忽略try語句所捕獲的異常,以及定義帶屬性的空類對象,而該類實現(xiàn)的對象行為就像其他語言的結(jié)構(gòu)和記錄。pass有時指“以后會填上”,只是暫時用于填充函數(shù)主體而已,無法保持函數(shù)體為空而不產(chǎn)生語法錯誤,因此,可以使用pass來替代。兩者的區(qū)別:continue語句只結(jié)束本次循環(huán),不終止整個循環(huán)的執(zhí)行,而break具備結(jié)束循環(huán)的能力。本題選擇C選項。
8.B“1.5+2.1”表達式的結(jié)果與3.6比較是否相等,返回的結(jié)果為布爾值,即True或False,結(jié)果相等,所以代碼輸出的結(jié)果應(yīng)為True。
9.C判斷條件4<=5<=6是成立的,故輸出True。本題選擇C選項。
10.B文件打開模式中“w”表示覆蓋寫模式,文件不存在則創(chuàng)建,存在則完全覆蓋原文件。文件寫入方法中,writelines()直接將列表類型的各元素連接起來寫入文件中。此代碼就是將列表ls中的內(nèi)容整體寫入文件中。本題選擇B選項。
11.C
12.Brange()函數(shù)的語法:range(start,stop,step),作用是生成一個從start參數(shù)的值開始,到stop參數(shù)的值結(jié)束的數(shù)字序列(注意不包含數(shù)stop),step是步進參數(shù)。cLis=list(range(5)),生成一個列表,包含0,1,2,3,4。因為5不在CLis列表中,故返回False。
13.B數(shù)據(jù)流圖是系統(tǒng)邏輯模型的圖形表示,從數(shù)據(jù)傳遞和加工的角度,來刻畫數(shù)據(jù)流從輸入到輸出的移動變化過程,它直接支持系統(tǒng)的功能建模。本題選擇B選項。
14.BPython中open()函數(shù)提供了7種基本的文件打開模式:r、w、x、a、b、t、+。其中,r、w、x、a可以和b、t、+組合使用。故表示錯誤的是B項。
15.DPIL庫是Python在圖像處理方向的重要的第三方庫,支持圖像存儲、處理和顯示,它能夠處理幾乎所有的圖片格式,可以完成對圖像的縮放、剪裁、疊加,以及為圖像添加線條和文字等。使用Python處理圖像相關(guān)的程序,首選PIL庫。本題選擇D選項。
16.D
17.Afor…in遍歷結(jié)構(gòu)可以是字符串、文件、rangge()函數(shù)和組合數(shù)據(jù)類型。
18.CPython的單分支結(jié)構(gòu)使用if保留字對條件進行判斷,使用方式為:\nif<條件>:\n
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 設(shè)備現(xiàn)場維修管理制度
- 設(shè)備缺陷登記管理制度
- 設(shè)想幾種班級管理制度
- 設(shè)計服務(wù)收費管理制度
- 設(shè)計部門人事管理制度
- 診所租賃設(shè)備管理制度
- 試驗檢測合同管理制度
- 財務(wù)針對部門管理制度
- 財政專用資金管理制度
- 貨物專用運輸管理制度
- 河北省邢臺市卓越聯(lián)盟2024-2025學(xué)年高二下學(xué)期第三次考試(6月)語文試卷(圖片版含解析)
- 2025年佛山市南海區(qū)民政局招聘殘疾人專項工作人員題庫帶答案分析
- 學(xué)習(xí)通《形勢與政策》2025春章節(jié)測試答案
- 2025年山西焦煤集團有限責(zé)任公司招聘筆試參考題庫含答案解析
- 2025年福建日報社招聘筆試參考題庫含答案解析
- “非遺”之首-昆曲經(jīng)典藝術(shù)欣賞智慧樹知到期末考試答案章節(jié)答案2024年北京大學(xué)
- 國家開放大學(xué)-法學(xué)專業(yè)-2023年秋季《法律文化》形成性考核作業(yè)答案
- 浦發(fā)銀行個人信用報告異議申請表
- 鋼琴鍵盤大譜表對照表-直接打印版(共6頁)
- 化工企業(yè)安全生產(chǎn)診斷檢查表
- 石河砂出廠合格證
評論
0/150
提交評論