版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
湖南省永州市全國(guó)計(jì)算機(jī)等級(jí)考試Python語(yǔ)言程序設(shè)計(jì)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(30題)1.S和T是兩個(gè)集合,對(duì)S&T的描述正確的是()。
A.S和T的交運(yùn)算,包括同時(shí)在集合S和T中的元素
B.S和T的并運(yùn)算,包括在集合S和T中的所有元素
C.S和T的差運(yùn)算,包括在集合S但不在T中的元素
D.S和T的補(bǔ)運(yùn)算,包括S和T中的幾個(gè)非相同元素
2.以下程序的輸出結(jié)果是()。ls=[’綠茶’,’烏龍茶’,’紅茶’,’白茶’,’黑茶’]x=’烏龍茶’print(ls.index(x,0))
A.一3B.0C.1D.一4
3.下列哪種情況不會(huì)導(dǎo)致Python對(duì)象的引用計(jì)數(shù)增加()
A.對(duì)象被創(chuàng)建B.被作為參數(shù)傳遞給函數(shù)C.成為容器對(duì)象的元素D.該對(duì)象無(wú)法訪問(wèn)時(shí)
4.以下程序的輸出結(jié)果是()。x=4ca=‘123456’ifstr(x)inca: print(ca.replace(ca[x],str(x-2)))
A.123456B.123426C.5D.2
5.擬在屏幕上輸出HelloWorld,使用的Python語(yǔ)句是()。
A.printf(‘HelloWorld’)
B.print(HelloWorld)
C.print(“HelloWorld")
D.printf("HelloWorld")
6.不屬于Python數(shù)據(jù)分析及可視化處理的第三方庫(kù)的是()。
A.seabornB.randomC.mayavi2D.NumPy
7.以下代碼的輸出結(jié)果是()。d={”大海”:”藍(lán)色”,”天空":”灰色","大地":”黑色”}print(d["大地”],d.get("天空”,"黃色”))
A.黑色黑色B.黑色灰色C.黑色黃色D.黑色藍(lán)色
8.一棵二叉樹(shù)共有25個(gè)節(jié)點(diǎn),其中5個(gè)是葉子節(jié)點(diǎn),則度為1的節(jié)點(diǎn)數(shù)為()。
A.16B.10C.6D.4
9.執(zhí)行以下代碼的結(jié)果是?A.0B.1C.2D.3
10.下列敘述中正確的是()。
A.順序存儲(chǔ)結(jié)構(gòu)的存儲(chǔ)一定是連續(xù)的,鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)的存儲(chǔ)空間不一定是連續(xù)的
B.順序存儲(chǔ)結(jié)構(gòu)只針對(duì)線性結(jié)構(gòu),鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)只針對(duì)非線性結(jié)構(gòu)
C.順序存儲(chǔ)結(jié)構(gòu)能存儲(chǔ)有序表,鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)不能存儲(chǔ)有序表
D.鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)比順序存儲(chǔ)結(jié)構(gòu)節(jié)省存儲(chǔ)空間
11.結(jié)構(gòu)化程序設(shè)計(jì)的基本原則不包括A.多態(tài)性B.自頂向下C.模塊化D.逐步求精
12.執(zhí)行以下代碼的結(jié)果是()A.2B.4C.5D.8
13.下面描述錯(cuò)誤的是()。
A.對(duì)象一定有標(biāo)識(shí)B.對(duì)象一定有屬性和方法(或操作)C.對(duì)象具有封裝性D.不同對(duì)象的同一屬性一定有相同的屬性值
14.以下哪個(gè)語(yǔ)句不適宜對(duì)異常捕獲()
A.try..catchB.assertC.withD.ifelif
15.程序流程圖是()。
A.總體設(shè)計(jì)階段使用的表達(dá)工具B.詳細(xì)設(shè)計(jì)階段使用的表達(dá)工具C.編碼階段使用的表達(dá)工具D.測(cè)試階段使用的表達(dá)工具
16.用Pyinstaller工具打包Python源文件時(shí)一F參數(shù)的含義是()。
A.指定所需要的第三方庫(kù)路徑
B.在dist文件夾中只生成獨(dú)立的打包文件
C.指定生成打包文件的目錄
D.刪除生成的臨時(shí)文件
17.執(zhí)行以下代碼的結(jié)果是()A.2B.5C.8D.Anexceptionisthrown
18.下列關(guān)于Python中復(fù)數(shù)類(lèi)型的描述錯(cuò)誤的是()。
A.復(fù)數(shù)由實(shí)數(shù)部分和虛數(shù)部分構(gòu)成
B.復(fù)數(shù)可以看作二元有序?qū)崝?shù)對(duì)(a,b)
C.虛數(shù)部分必須有后綴j,且為小寫(xiě)
D.復(fù)數(shù)中的虛數(shù)部分不能單獨(dú)存在,必須有實(shí)數(shù)部分
19.在Python中,使用for—n…方式形成的循環(huán)不能遍歷的類(lèi)型是()。
A.列表B.復(fù)數(shù)C.字符串D.字典
20.以下程序的輸出結(jié)果是()。s=”LOVES'’print(”{:*^13}".format(s))
A.LOVESB.********LOVESC.LOVES********D.****LOVES****
21.在Python中,將二維數(shù)據(jù)寫(xiě)入CSV文件,最可能使用的函數(shù)是()。
A.write()B.split()C.join()D.exists()
22.以下屬于Python中Web開(kāi)發(fā)的第三方庫(kù)的是()。
A.DjangoB.TinyDBC.audiolazyD.Pattern
23.現(xiàn)在假設(shè)有一個(gè)包含一個(gè)函數(shù)的程序放在一個(gè)文件中,在主程序文件中使用下面各種方法來(lái)導(dǎo)入它,哪一種方法是錯(cuò)誤的?()
A.importmodule
B.frommoduleasfimportfunction
C.importmoduleasm
D.frommoduleimport*
24.若I,j均為整形數(shù)值對(duì)象,以下哪個(gè)語(yǔ)句計(jì)算i被j除后的余數(shù)()
A.imodjB.i/jC.i%jD.i//j
25.下面代碼的輸出結(jié)果是()。forxinrange(2,8):y=0y+=Xprint(y)
A.27B.7C.8D.35
26.以下描述錯(cuò)誤的是()。
A.Python是一門(mén)動(dòng)態(tài)的解釋型語(yǔ)言
B.當(dāng)Python腳本程序發(fā)生異常時(shí),如果不處理,運(yùn)行結(jié)果不可預(yù)測(cè)
C.編程語(yǔ)言中的異常和錯(cuò)誤是完全相同的概念
D.Python通過(guò)try、except等保留字提供異常處理功能
27.以下代碼的輸出結(jié)果是()。forsin”P(pán)ythonNCRE”:ifs==”N”:breakprint(s,end=””)
A.PythonCREB.NC.PythonD.PythonNCRE
28.設(shè)str1=‘*@python@*’,語(yǔ)句print(str1[2:].strip(‘@’))的執(zhí)行結(jié)果是()。
A.python@*B.python*C.*@python@*D.*python*
29.下面關(guān)于遞歸函數(shù)的描述中,錯(cuò)誤的是()。
A.遞歸函數(shù)必須有一個(gè)明確的結(jié)束條件
B.遞歸函數(shù)就是一個(gè)函數(shù)在內(nèi)部調(diào)用自身
C.遞歸效率不高,遞歸層次過(guò)多會(huì)導(dǎo)致棧溢出
D.每進(jìn)入更深一層的遞歸時(shí),問(wèn)題規(guī)模相對(duì)前一次遞歸是不變的
30.樹(shù)的度為3,且有9個(gè)度為3的節(jié)點(diǎn),5個(gè)度為1的節(jié)點(diǎn),但沒(méi)有度為2的節(jié)點(diǎn)。則該樹(shù)中的葉子節(jié)點(diǎn)數(shù)為()。
A.18B.33C.19D.32
二、判斷題(10題)31.在Python中定義函數(shù)時(shí)不需要聲明函數(shù)參數(shù)的類(lèi)型。
A.是B.否
32.Python是一種跨平臺(tái)、開(kāi)源、免費(fèi)的高級(jí)動(dòng)態(tài)編程語(yǔ)言。
A.是B.否
33.形參可以看做是函數(shù)內(nèi)部的局部變量,函數(shù)運(yùn)行結(jié)束之后形參就不可訪問(wèn)了。
A.是B.否
34.在Python中可以使用if作為變量名。
A.是B.否
35.對(duì)文件進(jìn)行讀寫(xiě)操作之后必須顯式關(guān)閉文件以確保所有內(nèi)容都得到保存。
A.是B.否
36.對(duì)于Python類(lèi)中的私有成員,可以通過(guò)“對(duì)象名._類(lèi)名__私有成員名”的方式來(lái)訪問(wèn)。
A.是B.否
37.元組可以作為字典的“鍵”。
A.是B.否
38.調(diào)用函數(shù)時(shí),在實(shí)參前面加一個(gè)型號(hào)*表示序列解包。
A.是B.否
39.不同版本的Python不能安裝到同一臺(tái)計(jì)算機(jī)上。
A.是B.否
40.已知seq為長(zhǎng)度大于10的列表,并且已導(dǎo)入random模塊,那么[random.choice(seq)foriinrange(10)]和random.sample(seq,10)等價(jià)。A.是B.否
三、填空題(10題)41.已知x={'a':'b','c':'d'},那么表達(dá)式'a'inx的值為_(kāi)_____________。
42.已知x=[3,7,5],那么執(zhí)行語(yǔ)句x=x.sort(reverse=True)之后,x的值為_(kāi)________。
43.表達(dá)式int('101',2)的值為_(kāi)_________。
44.已知列表x=[1,2],執(zhí)行語(yǔ)句y=x后,表達(dá)式id(x)==id(y)的值為_(kāi)______。
45.表達(dá)式len(range(1,10))的值為_(kāi)__________。
46.已知x=[[1,2,3,],[4,5,6]],那么表達(dá)式sum([i*jfori,jinzip(*x)])的值為_(kāi)_____。
47.已知x=[1,11,111],那么執(zhí)行語(yǔ)句x.sort(key=lambdax:len(str(x)),reverse=True)之后,x的值為_(kāi)_________________。
48.表達(dá)式print(0b10101)的值為_(kāi)___________。
49.表達(dá)式'Thefirst:{1},thesecondis{0}'.format(65,97)的值為_(kāi)_____________________________。
50.假設(shè)re模塊已導(dǎo)入,那么表達(dá)式re.findall('(\d)\\1+','33abcd112')的值為_(kāi)__________________。
四、操作題(3題)51.考生文件夾下存在一個(gè)文件“PY201.py”,請(qǐng)寫(xiě)代碼替換橫線,不修改其他代碼,實(shí)現(xiàn)以下功能。使用turtle庫(kù)的turtle.right()函數(shù)和turtle.fd()函數(shù)繪制一個(gè)五角星,邊長(zhǎng)為200像素,5個(gè)內(nèi)角度數(shù)為36度,效果如下所示。試題程序:#請(qǐng)?jiān)诔绦虻腳____處使用一行代碼或表達(dá)式替換#注意:請(qǐng)不要修改其他已給出代碼fromturtleimport*foriin_____(1)_____:fd(_____(2)_____)_____(3)_____
52.考生文件夾下存在2個(gè)Python源文件和3個(gè)文本文件,分別對(duì)應(yīng)兩個(gè)問(wèn)題,請(qǐng)按照文件內(nèi)說(shuō)明修改代碼,實(shí)現(xiàn)以下功能。《論語(yǔ)》是儒家學(xué)派的經(jīng)典著作之一,主要記錄了孔子及其弟子言行。這里給出了一個(gè)網(wǎng)絡(luò)版本的《論語(yǔ)》,文件名稱(chēng)為“論語(yǔ).txt”,其內(nèi)容采用逐句“原文”與逐句“注釋”相結(jié)合的形式組織,通過(guò)【原文】標(biāo)記《論語(yǔ)》原文內(nèi)容,通過(guò)【注釋】標(biāo)記《論語(yǔ)》注釋內(nèi)容,具體格式請(qǐng)參考“論語(yǔ).txt”文件。問(wèn)題1:在“PY301-1.py”文件中修改代碼,提取“論語(yǔ).txt”文件中的原文內(nèi)容,輸出保存到考生文件夾下,文件名為“論語(yǔ)-原文.txt”。具體要求:僅保留“論語(yǔ).txt”文件中所有【原文】標(biāo)簽下面的內(nèi)容,不保留標(biāo)簽,并去掉每行行首空格及行尾空格,無(wú)空行。原文圓括號(hào)及內(nèi)部數(shù)字是源文件中注釋內(nèi)容的標(biāo)記,請(qǐng)保留。文件輸出格式請(qǐng)參考“論語(yǔ)-原文-輸出示例.txt”文件。注意:輸出示例僅幫助考生了解輸出格式,不作它用。試題程序:#以下代碼為提示框架#請(qǐng)?jiān)诔绦虻?..處使用一行或多行代碼替換#請(qǐng)?jiān)诔绦虻腳___處使用一行代碼替換#注意:提示框架的代碼可以任意修改,以完成程序功能為準(zhǔn)fi=open(“論語(yǔ).txt",)fo=open(“論語(yǔ)-原文.txt",)…Forlineinfi:…fo.write(line.lstrip())問(wèn)題2:在“PY301-2.py”文件中修改代碼,對(duì)“論語(yǔ)-原文.txt”或“論語(yǔ).txt”文件進(jìn)一步提純,去掉每行文字中所有圓括號(hào)及內(nèi)部數(shù)字,保存為“論語(yǔ)-提純?cè)?txt”文件。文件輸出格式請(qǐng)參考“論語(yǔ)-提純?cè)?輸出示例.txt”文件。注意:示例輸出文件僅幫助考生了解輸出格式,不做它用。試題程序:#以下代碼為提示框架#請(qǐng)?jiān)诔绦虻?..處使用一行或多行代碼替換#請(qǐng)?jiān)诔绦虻奶幨褂靡恍写a替換#注意:提示框架的代碼可以任意修改,以完成程序功能為準(zhǔn)fi=open("論語(yǔ)-原文.txt",_____)fo=open("論語(yǔ)-提純?cè)?txt",_____)Forlineinfi:line=line.replace()
53.考生文件夾下存在一個(gè)文件PY101.py,請(qǐng)寫(xiě)代碼替換橫線,不修改其他代碼,實(shí)現(xiàn)以下功能:
鍵盤(pán)輸入正整數(shù)n,按要求把n輸出到屏幕,格式要求:寬度為25個(gè)字符,等號(hào)字符(=)填充,右對(duì)齊,帶千位分隔符。如果輸入正整數(shù)超過(guò)25位,則按照真實(shí)長(zhǎng)度輸出。
例如:鍵盤(pán)輸入正整數(shù)n為1234,屏幕輸出===================1,234
試題程序:
#請(qǐng)完善如下代碼
s=input()
print(”{________(1)_________}”.format(________(2)_________))
參考答案
1.AS&T返回一個(gè)新集合,包括同時(shí)在集合S和T中的元素。本題選擇A選項(xiàng)。
2.C列表的index()方法用于從列表中找出某個(gè)對(duì)象第一個(gè)匹配項(xiàng)的索引位置,如果這個(gè)對(duì)象不在列表中會(huì)報(bào)一個(gè)異常。其語(yǔ)法為:list.index(obj[,start=0[,stop=len(L)]]),其中obj為必須參數(shù),指要查找的對(duì)象;start為可選參數(shù),指從哪個(gè)索引位置開(kāi)始查找,默認(rèn)為0;stop為可選參數(shù),指查找到哪個(gè)索引位置結(jié)束,默認(rèn)為列表的長(zhǎng)度。本題中,查找對(duì)象為’烏龍茶’,從索引位置為0處開(kāi)始查找,查找到第二個(gè)元素匹配,故返回其索引位置1。
3.D
4.Bstr(4)=‘4’,此字符在字符串ca中,滿足if條件,執(zhí)行輸出語(yǔ)句。ca.replace(ca[4],str(4-2))是指返回字符串ca副本,ca[4]是指字符串中序號(hào)為4的字符‘5’,str(4-2)返回字符‘2’,也就是用字符‘2’來(lái)替換字符‘5’。本題選擇B選項(xiàng)。
5.C在Python中,輸出用print()函數(shù),HelloWorld是字符串類(lèi)型,需要加單引號(hào)或雙引號(hào)。本題選擇C選項(xiàng)。
6.B屬于Python數(shù)據(jù)分析及可視化的第三方庫(kù)的有seabom、NumPy、scipy、pandas、matplotlib、TVTK、mayavi(也稱(chēng)mayavi2)等。random庫(kù)是Python用于產(chǎn)生各種分布的偽隨機(jī)數(shù)序列的庫(kù)。本題選擇B選項(xiàng)。
7.B在Python中,字典是存儲(chǔ)可變數(shù)量鍵值對(duì)的數(shù)據(jù)結(jié)構(gòu),通過(guò)字典類(lèi)型實(shí)現(xiàn)映射。字典使用花括號(hào)({})創(chuàng)建,每個(gè)元素是一個(gè)鍵值對(duì),語(yǔ)法格式為:{<鍵1>:<值1>,<鍵2>:\n<值2>,'…,<鍵n:<值n>}其中,鍵和值通過(guò)冒號(hào)連接,不同鍵值對(duì)通過(guò)逗號(hào)隔開(kāi)。字典具有和集合類(lèi)似的性質(zhì),即鍵值對(duì)之間沒(méi)有順序且不能重復(fù)。d[鍵]獲取鍵對(duì)應(yīng)值的值,d.get(key,defart)方法用來(lái)返回key對(duì)應(yīng)的值,如果字典中不存在該鍵,則返回默認(rèn)值。本題選擇B選項(xiàng)。
8.A根據(jù)二叉樹(shù)的性質(zhì)3:在任意一棵二叉樹(shù)中,度為0的葉子結(jié)點(diǎn)總是比度為2的結(jié)點(diǎn)多一個(gè),所以本題中度為2的結(jié)點(diǎn)是5-1\n=4個(gè),所以度為1的結(jié)點(diǎn)的個(gè)數(shù)是25-5-4=16個(gè)。本題選擇A選項(xiàng)。
9.C
10.A解析:順序存儲(chǔ)結(jié)構(gòu)就是用一組地址連續(xù)的存儲(chǔ)單元依次存儲(chǔ)該線性表中的各個(gè)元素,鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)中各數(shù)據(jù)結(jié)點(diǎn)的存儲(chǔ)序號(hào)是不連續(xù)的,并且各結(jié)點(diǎn)在存儲(chǔ)空間中的位置關(guān)系與邏輯關(guān)系也不一致,所以選項(xiàng)A是正確的。兩者都可以存儲(chǔ)線性的、有序的邏輯結(jié)構(gòu),所以選項(xiàng)B、C不正確。順序結(jié)構(gòu)使用的是連續(xù)物理空間,鏈?zhǔn)浇Y(jié)構(gòu)可以使用零散的物理空間存儲(chǔ),鏈?zhǔn)浇Y(jié)構(gòu)更靈活,不存在誰(shuí)節(jié)約空間的說(shuō)法,所以選項(xiàng)D不正確。
11.A結(jié)構(gòu)化程序設(shè)計(jì)方法的主要原則可以概括為:自頂向下,逐步求精,模塊化和限制使用GOTO語(yǔ)句,其中不包括多態(tài)性。
12.D
13.D屬性即對(duì)象所包含的信息,它在設(shè)計(jì)對(duì)象時(shí)確定,一般只能通過(guò)執(zhí)行對(duì)象的操作來(lái)改變。不同對(duì)象的同一屬性可以具有相同或不同的屬性值。例如,張三的年齡是20,李四的年齡是18,張三、李四是兩個(gè)不同的對(duì)象,他們共同的屬性”年齡”的值不同。
14.D
15.B詳細(xì)設(shè)計(jì)階段常見(jiàn)的工具有程序流程圖、N—S圖、PAD圖、HIPO圖、判定表等。本題選B選項(xiàng)。
16.B一F是指在dist文件夾中只生成獨(dú)立的打包文件(即exe文件),所有的第三方依賴(lài)、資源和代碼均打包進(jìn)此exe中。
17.D
18.CPython中復(fù)數(shù)類(lèi)型的虛數(shù)部分的后綴可以為j或者J;復(fù)數(shù)的實(shí)部可以單獨(dú)存在,但是虛部不可以單獨(dú)存在;復(fù)數(shù)由實(shí)部和虛部構(gòu)成,可以使用z.\nreal和z.imag分別獲得它的實(shí)部和虛部。本題選擇C選項(xiàng)。
19.B在Python中,使用for…in…方式形成的循環(huán)能遍歷的類(lèi)型有字符串、文件、range()函數(shù)或組合數(shù)據(jù)類(lèi)型,不能遍歷復(fù)數(shù)。本題選擇B選項(xiàng)。
20.D本題考查的是字符串輸出格式化知識(shí)點(diǎn),其中“{:*^13},,表示輸出的字符串長(zhǎng)度為13,居中對(duì)齊,空白處用“*”填充。最后輸出的是****LOVES****,D項(xiàng)正確。
21.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)。
22.AB選項(xiàng)是一個(gè)微型的面向文檔的數(shù)據(jù)庫(kù),C選項(xiàng)是Python的數(shù)字信號(hào)處理包,D選項(xiàng)是Python的網(wǎng)絡(luò)信息挖掘模塊。本題選擇A選項(xiàng)。
23.BD選項(xiàng)用于導(dǎo)入模塊中所有的函數(shù)從而直接調(diào)用該模塊中的函數(shù);A選項(xiàng)直接導(dǎo)入整個(gè)模塊,再利用“模塊名.函數(shù)名”這樣的方式來(lái)運(yùn)行該模塊中的函數(shù);C選項(xiàng)只是在導(dǎo)入該模塊時(shí)給該模塊起了一個(gè)別名,本質(zhì)和A選項(xiàng)一樣。B選項(xiàng)正確的寫(xiě)法應(yīng)該是frommoduleimportfunctionasf,所以B選項(xiàng)錯(cuò)誤。
24.C
25.B變量x依次被賦值為[2,8)區(qū)間的自然數(shù),在循環(huán)內(nèi)定義一變量y并賦值為0,即每次計(jì)算累加和之前y都被清零,所以結(jié)果為7。
26.C異常指的是在程序運(yùn)行過(guò)程中發(fā)生的異常事件,通常是由外部問(wèn)題(如硬件錯(cuò)誤、輸入錯(cuò)誤)所導(dǎo)致的。錯(cuò)誤是指導(dǎo)致系統(tǒng)不能按照用戶(hù)意圖工作的一切原因、事件。在程序設(shè)計(jì)過(guò)程中,由于某些錯(cuò)誤的存在,致使程序無(wú)法正常運(yùn)行,處理這些錯(cuò)誤以使程序正確運(yùn)行就稱(chēng)為錯(cuò)誤處理。異常和錯(cuò)誤是完全不同的概念。本題選擇C選項(xiàng)。
27.Cfor循環(huán)將字符串”P(pán)ythonNCRE”的字符依次賦給變量s,當(dāng)s==”N”時(shí),跳出for循環(huán),故輸出為Python。本題選C選項(xiàng)。
28.Astr1[2:]表示對(duì)字符串str1進(jìn)行切片,即從序號(hào)為2的字符開(kāi)始切片直到字符串結(jié)尾(字符串最左側(cè)的字符序號(hào)為0),其結(jié)果為“npython@*”;strip(Chars)方法是從字符串中去掉其左側(cè)和右側(cè)chars中列出的字符,“python@*”.strip(‘@’)表示將字符串左側(cè)和右側(cè)的”字符去掉,由于字符串左側(cè)和右側(cè)均無(wú)“@”字符,因此結(jié)果為“python@*”。本題選擇A選項(xiàng)。
29.DA選項(xiàng)正確,遞歸函數(shù)必須有一個(gè)明確的結(jié)束條件作為遞歸的出口;B選項(xiàng)正是遞歸函數(shù)的含義,正確;C選項(xiàng)正確,在計(jì)算機(jī)中,函數(shù)調(diào)用是通過(guò)棧這種數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn)的,每當(dāng)進(jìn)入一個(gè)函數(shù)調(diào)用,棧就會(huì)加一層棧幀,每當(dāng)函數(shù)返回,棧就會(huì)減一層棧幀,由于棧的大小不是無(wú)限的,因此,遞歸調(diào)用的次數(shù)過(guò)多,會(huì)導(dǎo)致棧溢出;D選項(xiàng)錯(cuò)誤,每當(dāng)進(jìn)入更深一層的遞歸時(shí),問(wèn)題規(guī)模顯然會(huì)相對(duì)前一次遞歸減小。本題選擇D選項(xiàng)。
30.C設(shè)葉子結(jié)點(diǎn)數(shù)為〃,則該樹(shù)的結(jié)點(diǎn)數(shù)為n+9+5=n+\n14,根據(jù)樹(shù)中的結(jié)點(diǎn)數(shù)=樹(shù)中所有結(jié)點(diǎn)的度之和+1,得9×3+0×2+5×1+n×0+1=n+14,則n=19。本題選擇C選項(xiàng)。
31.Y
32.Y
33.Y
34.N
35.Y
36.Y
37.Y
38.Y
39.N
40.N
41.True
42.None
43.5
44.True
45.9
46.32
47.[111,11,1]
48.21
49.'Thefirst:97,thesecondis65'
50.['3','1']
51.fromturtleimport*foriinrange(5):fd(200)right(144)該題考查的是Python標(biāo)準(zhǔn)庫(kù)——turtle庫(kù),繪制五角星。因?yàn)槔L制5條邊,所以循環(huán)執(zhí)行5次,故第1空填range(5)。因?yàn)槲褰切沁呴L(zhǎng)為200像素,所以第2空填200。最后由于本題要求使用right()函數(shù),且五角星的內(nèi)角為36度,因此第3空填right(\r\n144)。
52.fi=open(“論語(yǔ).txt'”r”)fo=open(”論語(yǔ)-原文.txt”,”w”)Flag=falseforlineinfi:If”【“inline:Flag=falseIf”【原文】”inline:Flag=tureContinueIffiag=ture:fo.write(line.lstrip())Fi.close()Fo.close()fi=open("論語(yǔ)-原文.txt"’r’)fo=open("論語(yǔ)-提純?cè)?txt”,’w’)forlineinfi:Foriinrange(1,23):line=line,replace(“{}”.format(i),””)fowrite(line)Fi.close()Fo.close()(1)題目要求從“論語(yǔ).txt”文件中提取內(nèi)容,輸出保存到文件“論語(yǔ)-原文.txt”中,因此需要用”r”模式打開(kāi)“論語(yǔ)”txt”,用”\r\nw”模式創(chuàng)建文件“論語(yǔ)-原文.txt”。本題要求區(qū)域性提取,與單行提取不同,因此,可以借助寫(xiě)標(biāo)記flag來(lái)標(biāo)記操作的是哪里的文本。使用for循環(huán)遍歷“論語(yǔ).txt”中的每一行,當(dāng)該行存在時(shí),說(shuō)明已經(jīng)到了新的區(qū)域,寫(xiě)標(biāo)記設(shè)置為否,即flag\r\n=False;當(dāng)該行存在【原文】時(shí),寫(xiě)標(biāo)記設(shè)置為T(mén)rue;當(dāng)寫(xiě)標(biāo)記為T(mén)rue時(shí),就將當(dāng)前行內(nèi)容寫(xiě)入新的文件”論語(yǔ)-原文.txt"中。對(duì)文件操作完成后,使用close()方法關(guān)閉文件。(2)題目要求對(duì)“論語(yǔ)-原文.txt”進(jìn)一步提純,保存為“論語(yǔ)-提純?cè)?txt”文件,因此需要用”r”模式打開(kāi)“論語(yǔ)-原文.txt”,用”\r\nw”模式創(chuàng)建文件“論語(yǔ)-提純?cè)?txt”。題目要求去掉每行文字中所有圓括號(hào)及內(nèi)部數(shù)字,可在for循環(huán)遍歷“論語(yǔ)-原文.txt”文件中的每一行時(shí),用空格來(lái)代替出現(xiàn)的“(數(shù)字)”形式。分析“論語(yǔ)-原文.txt”文件可知,其中出現(xiàn)(1)~(22)共22種可能,因此內(nèi)部嵌套for循環(huán)需要從1遍歷到22,構(gòu)造(i)并替換。替換后將該行內(nèi)容寫(xiě)入文件“論語(yǔ)-提純?cè)?txt”中。對(duì)文件操作完成后,使用close()方法關(guān)閉文件。
53.s=input()\r\nprint(”{:=>25}”.format(eval(s)))該題目主要考查Python字符串的格式化方法。Python語(yǔ)言推薦使用.format()格式化方法,其使用方式如下:\r\n
<模板字符串>.format(<逗號(hào)分隔的參數(shù)>)\r\n
其中,模板字符串是一個(gè)由字符串和槽組成的字符串,用來(lái)控制字符串和變量的顯示效果。槽用大括號(hào)({})表示,對(duì)應(yīng)format()方法中逗號(hào)分隔的參數(shù)。如果模板字符串中有多個(gè)槽,可以通過(guò)format()參數(shù)的序號(hào)在模板字符串槽中指定參數(shù)的使用,參數(shù)從0開(kāi)始編號(hào)。例如:\r\n”{0}日:學(xué)而不思則罔,思而不學(xué){1}?!保甪ormat(”孔子”,”則殆”)\r\n
其結(jié)果為:’孔子日:學(xué)而不思則罔,思而不學(xué)則殆。’\r\n
format()方法的槽除了包括參數(shù)序號(hào),還可以包括格式控制信息,語(yǔ)法格式如下:\r\n
{<參數(shù)序號(hào)>:<格式控制標(biāo)記>}\r\n其中,格式控制標(biāo)記包括:<填充><對(duì)齊><寬度><,><.精度><類(lèi)型>6個(gè)字段,由引導(dǎo)符號(hào)(:)作為引導(dǎo)標(biāo)記,這些字段都是可選的,可以組合使用。\r\n
<填充>:指用于填充的單個(gè)字符。\r\n
<對(duì)齊>:分別使用<、>和^三個(gè)符號(hào)表示左對(duì)齊、右對(duì)齊和居中對(duì)齊。\r\n<寬度>:當(dāng)前槽的設(shè)定輸出字符寬度。\r\n<,>:用于顯示數(shù)字類(lèi)型的千位分隔符。\r\n
<.精度>:由小數(shù)點(diǎn)(.)開(kāi)頭,對(duì)于浮點(diǎn)數(shù),精度表示小數(shù)部分輸出的有效位數(shù);對(duì)于字符串,精度表示輸出的最大長(zhǎng)度。\r\n
<類(lèi)型>:表示輸出整數(shù)和浮點(diǎn)數(shù)類(lèi)型的格式規(guī)則。\r\n
本題格式要求為:寬度為25個(gè)字符,等號(hào)字符(=)填充,右對(duì)齊,帶千位分隔符。則模板字符串為:{:=>25,}。\r\n
由于題目要求帶千位分隔符,所以模板字符串對(duì)應(yīng)的:format()方法中的參數(shù)必須是數(shù)字類(lèi)型,但無(wú)論用戶(hù)輸入的是字符還是數(shù)字,input()函數(shù)統(tǒng)一按照字符串類(lèi)型輸出,這時(shí)就需要先使用eval()函數(shù)去掉字符串最外側(cè)的引號(hào),然后再參與運(yùn)算。湖南省永州市全國(guó)計(jì)算機(jī)等級(jí)考試Python語(yǔ)言程序設(shè)計(jì)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(30題)1.S和T是兩個(gè)集合,對(duì)S&T的描述正確的是()。
A.S和T的交運(yùn)算,包括同時(shí)在集合S和T中的元素
B.S和T的并運(yùn)算,包括在集合S和T中的所有元素
C.S和T的差運(yùn)算,包括在集合S但不在T中的元素
D.S和T的補(bǔ)運(yùn)算,包括S和T中的幾個(gè)非相同元素
2.以下程序的輸出結(jié)果是()。ls=[’綠茶’,’烏龍茶’,’紅茶’,’白茶’,’黑茶’]x=’烏龍茶’print(ls.index(x,0))
A.一3B.0C.1D.一4
3.下列哪種情況不會(huì)導(dǎo)致Python對(duì)象的引用計(jì)數(shù)增加()
A.對(duì)象被創(chuàng)建B.被作為參數(shù)傳遞給函數(shù)C.成為容器對(duì)象的元素D.該對(duì)象無(wú)法訪問(wèn)時(shí)
4.以下程序的輸出結(jié)果是()。x=4ca=‘123456’ifstr(x)inca: print(ca.replace(ca[x],str(x-2)))
A.123456B.123426C.5D.2
5.擬在屏幕上輸出HelloWorld,使用的Python語(yǔ)句是()。
A.printf(‘HelloWorld’)
B.print(HelloWorld)
C.print(“HelloWorld")
D.printf("HelloWorld")
6.不屬于Python數(shù)據(jù)分析及可視化處理的第三方庫(kù)的是()。
A.seabornB.randomC.mayavi2D.NumPy
7.以下代碼的輸出結(jié)果是()。d={”大?!保骸彼{(lán)色”,”天空":”灰色","大地":”黑色”}print(d["大地”],d.get("天空”,"黃色”))
A.黑色黑色B.黑色灰色C.黑色黃色D.黑色藍(lán)色
8.一棵二叉樹(shù)共有25個(gè)節(jié)點(diǎn),其中5個(gè)是葉子節(jié)點(diǎn),則度為1的節(jié)點(diǎn)數(shù)為()。
A.16B.10C.6D.4
9.執(zhí)行以下代碼的結(jié)果是?A.0B.1C.2D.3
10.下列敘述中正確的是()。
A.順序存儲(chǔ)結(jié)構(gòu)的存儲(chǔ)一定是連續(xù)的,鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)的存儲(chǔ)空間不一定是連續(xù)的
B.順序存儲(chǔ)結(jié)構(gòu)只針對(duì)線性結(jié)構(gòu),鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)只針對(duì)非線性結(jié)構(gòu)
C.順序存儲(chǔ)結(jié)構(gòu)能存儲(chǔ)有序表,鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)不能存儲(chǔ)有序表
D.鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)比順序存儲(chǔ)結(jié)構(gòu)節(jié)省存儲(chǔ)空間
11.結(jié)構(gòu)化程序設(shè)計(jì)的基本原則不包括A.多態(tài)性B.自頂向下C.模塊化D.逐步求精
12.執(zhí)行以下代碼的結(jié)果是()A.2B.4C.5D.8
13.下面描述錯(cuò)誤的是()。
A.對(duì)象一定有標(biāo)識(shí)B.對(duì)象一定有屬性和方法(或操作)C.對(duì)象具有封裝性D.不同對(duì)象的同一屬性一定有相同的屬性值
14.以下哪個(gè)語(yǔ)句不適宜對(duì)異常捕獲()
A.try..catchB.assertC.withD.ifelif
15.程序流程圖是()。
A.總體設(shè)計(jì)階段使用的表達(dá)工具B.詳細(xì)設(shè)計(jì)階段使用的表達(dá)工具C.編碼階段使用的表達(dá)工具D.測(cè)試階段使用的表達(dá)工具
16.用Pyinstaller工具打包Python源文件時(shí)一F參數(shù)的含義是()。
A.指定所需要的第三方庫(kù)路徑
B.在dist文件夾中只生成獨(dú)立的打包文件
C.指定生成打包文件的目錄
D.刪除生成的臨時(shí)文件
17.執(zhí)行以下代碼的結(jié)果是()A.2B.5C.8D.Anexceptionisthrown
18.下列關(guān)于Python中復(fù)數(shù)類(lèi)型的描述錯(cuò)誤的是()。
A.復(fù)數(shù)由實(shí)數(shù)部分和虛數(shù)部分構(gòu)成
B.復(fù)數(shù)可以看作二元有序?qū)崝?shù)對(duì)(a,b)
C.虛數(shù)部分必須有后綴j,且為小寫(xiě)
D.復(fù)數(shù)中的虛數(shù)部分不能單獨(dú)存在,必須有實(shí)數(shù)部分
19.在Python中,使用for—n…方式形成的循環(huán)不能遍歷的類(lèi)型是()。
A.列表B.復(fù)數(shù)C.字符串D.字典
20.以下程序的輸出結(jié)果是()。s=”LOVES'’print(”{:*^13}".format(s))
A.LOVESB.********LOVESC.LOVES********D.****LOVES****
21.在Python中,將二維數(shù)據(jù)寫(xiě)入CSV文件,最可能使用的函數(shù)是()。
A.write()B.split()C.join()D.exists()
22.以下屬于Python中Web開(kāi)發(fā)的第三方庫(kù)的是()。
A.DjangoB.TinyDBC.audiolazyD.Pattern
23.現(xiàn)在假設(shè)有一個(gè)包含一個(gè)函數(shù)的程序放在一個(gè)文件中,在主程序文件中使用下面各種方法來(lái)導(dǎo)入它,哪一種方法是錯(cuò)誤的?()
A.importmodule
B.frommoduleasfimportfunction
C.importmoduleasm
D.frommoduleimport*
24.若I,j均為整形數(shù)值對(duì)象,以下哪個(gè)語(yǔ)句計(jì)算i被j除后的余數(shù)()
A.imodjB.i/jC.i%jD.i//j
25.下面代碼的輸出結(jié)果是()。forxinrange(2,8):y=0y+=Xprint(y)
A.27B.7C.8D.35
26.以下描述錯(cuò)誤的是()。
A.Python是一門(mén)動(dòng)態(tài)的解釋型語(yǔ)言
B.當(dāng)Python腳本程序發(fā)生異常時(shí),如果不處理,運(yùn)行結(jié)果不可預(yù)測(cè)
C.編程語(yǔ)言中的異常和錯(cuò)誤是完全相同的概念
D.Python通過(guò)try、except等保留字提供異常處理功能
27.以下代碼的輸出結(jié)果是()。forsin”P(pán)ythonNCRE”:ifs==”N”:breakprint(s,end=””)
A.PythonCREB.NC.PythonD.PythonNCRE
28.設(shè)str1=‘*@python@*’,語(yǔ)句print(str1[2:].strip(‘@’))的執(zhí)行結(jié)果是()。
A.python@*B.python*C.*@python@*D.*python*
29.下面關(guān)于遞歸函數(shù)的描述中,錯(cuò)誤的是()。
A.遞歸函數(shù)必須有一個(gè)明確的結(jié)束條件
B.遞歸函數(shù)就是一個(gè)函數(shù)在內(nèi)部調(diào)用自身
C.遞歸效率不高,遞歸層次過(guò)多會(huì)導(dǎo)致棧溢出
D.每進(jìn)入更深一層的遞歸時(shí),問(wèn)題規(guī)模相對(duì)前一次遞歸是不變的
30.樹(shù)的度為3,且有9個(gè)度為3的節(jié)點(diǎn),5個(gè)度為1的節(jié)點(diǎn),但沒(méi)有度為2的節(jié)點(diǎn)。則該樹(shù)中的葉子節(jié)點(diǎn)數(shù)為()。
A.18B.33C.19D.32
二、判斷題(10題)31.在Python中定義函數(shù)時(shí)不需要聲明函數(shù)參數(shù)的類(lèi)型。
A.是B.否
32.Python是一種跨平臺(tái)、開(kāi)源、免費(fèi)的高級(jí)動(dòng)態(tài)編程語(yǔ)言。
A.是B.否
33.形參可以看做是函數(shù)內(nèi)部的局部變量,函數(shù)運(yùn)行結(jié)束之后形參就不可訪問(wèn)了。
A.是B.否
34.在Python中可以使用if作為變量名。
A.是B.否
35.對(duì)文件進(jìn)行讀寫(xiě)操作之后必須顯式關(guān)閉文件以確保所有內(nèi)容都得到保存。
A.是B.否
36.對(duì)于Python類(lèi)中的私有成員,可以通過(guò)“對(duì)象名._類(lèi)名__私有成員名”的方式來(lái)訪問(wèn)。
A.是B.否
37.元組可以作為字典的“鍵”。
A.是B.否
38.調(diào)用函數(shù)時(shí),在實(shí)參前面加一個(gè)型號(hào)*表示序列解包。
A.是B.否
39.不同版本的Python不能安裝到同一臺(tái)計(jì)算機(jī)上。
A.是B.否
40.已知seq為長(zhǎng)度大于10的列表,并且已導(dǎo)入random模塊,那么[random.choice(seq)foriinrange(10)]和random.sample(seq,10)等價(jià)。A.是B.否
三、填空題(10題)41.已知x={'a':'b','c':'d'},那么表達(dá)式'a'inx的值為_(kāi)_____________。
42.已知x=[3,7,5],那么執(zhí)行語(yǔ)句x=x.sort(reverse=True)之后,x的值為_(kāi)________。
43.表達(dá)式int('101',2)的值為_(kāi)_________。
44.已知列表x=[1,2],執(zhí)行語(yǔ)句y=x后,表達(dá)式id(x)==id(y)的值為_(kāi)______。
45.表達(dá)式len(range(1,10))的值為_(kāi)__________。
46.已知x=[[1,2,3,],[4,5,6]],那么表達(dá)式sum([i*jfori,jinzip(*x)])的值為_(kāi)_____。
47.已知x=[1,11,111],那么執(zhí)行語(yǔ)句x.sort(key=lambdax:len(str(x)),reverse=True)之后,x的值為_(kāi)_________________。
48.表達(dá)式print(0b10101)的值為_(kāi)___________。
49.表達(dá)式'Thefirst:{1},thesecondis{0}'.format(65,97)的值為_(kāi)_____________________________。
50.假設(shè)re模塊已導(dǎo)入,那么表達(dá)式re.findall('(\d)\\1+','33abcd112')的值為_(kāi)__________________。
四、操作題(3題)51.考生文件夾下存在一個(gè)文件“PY201.py”,請(qǐng)寫(xiě)代碼替換橫線,不修改其他代碼,實(shí)現(xiàn)以下功能。使用turtle庫(kù)的turtle.right()函數(shù)和turtle.fd()函數(shù)繪制一個(gè)五角星,邊長(zhǎng)為200像素,5個(gè)內(nèi)角度數(shù)為36度,效果如下所示。試題程序:#請(qǐng)?jiān)诔绦虻腳____處使用一行代碼或表達(dá)式替換#注意:請(qǐng)不要修改其他已給出代碼fromturtleimport*foriin_____(1)_____:fd(_____(2)_____)_____(3)_____
52.考生文件夾下存在2個(gè)Python源文件和3個(gè)文本文件,分別對(duì)應(yīng)兩個(gè)問(wèn)題,請(qǐng)按照文件內(nèi)說(shuō)明修改代碼,實(shí)現(xiàn)以下功能。《論語(yǔ)》是儒家學(xué)派的經(jīng)典著作之一,主要記錄了孔子及其弟子言行。這里給出了一個(gè)網(wǎng)絡(luò)版本的《論語(yǔ)》,文件名稱(chēng)為“論語(yǔ).txt”,其內(nèi)容采用逐句“原文”與逐句“注釋”相結(jié)合的形式組織,通過(guò)【原文】標(biāo)記《論語(yǔ)》原文內(nèi)容,通過(guò)【注釋】標(biāo)記《論語(yǔ)》注釋內(nèi)容,具體格式請(qǐng)參考“論語(yǔ).txt”文件。問(wèn)題1:在“PY301-1.py”文件中修改代碼,提取“論語(yǔ).txt”文件中的原文內(nèi)容,輸出保存到考生文件夾下,文件名為“論語(yǔ)-原文.txt”。具體要求:僅保留“論語(yǔ).txt”文件中所有【原文】標(biāo)簽下面的內(nèi)容,不保留標(biāo)簽,并去掉每行行首空格及行尾空格,無(wú)空行。原文圓括號(hào)及內(nèi)部數(shù)字是源文件中注釋內(nèi)容的標(biāo)記,請(qǐng)保留。文件輸出格式請(qǐng)參考“論語(yǔ)-原文-輸出示例.txt”文件。注意:輸出示例僅幫助考生了解輸出格式,不作它用。試題程序:#以下代碼為提示框架#請(qǐng)?jiān)诔绦虻?..處使用一行或多行代碼替換#請(qǐng)?jiān)诔绦虻腳___處使用一行代碼替換#注意:提示框架的代碼可以任意修改,以完成程序功能為準(zhǔn)fi=open(“論語(yǔ).txt",)fo=open(“論語(yǔ)-原文.txt",)…Forlineinfi:…fo.write(line.lstrip())問(wèn)題2:在“PY301-2.py”文件中修改代碼,對(duì)“論語(yǔ)-原文.txt”或“論語(yǔ).txt”文件進(jìn)一步提純,去掉每行文字中所有圓括號(hào)及內(nèi)部數(shù)字,保存為“論語(yǔ)-提純?cè)?txt”文件。文件輸出格式請(qǐng)參考“論語(yǔ)-提純?cè)?輸出示例.txt”文件。注意:示例輸出文件僅幫助考生了解輸出格式,不做它用。試題程序:#以下代碼為提示框架#請(qǐng)?jiān)诔绦虻?..處使用一行或多行代碼替換#請(qǐng)?jiān)诔绦虻奶幨褂靡恍写a替換#注意:提示框架的代碼可以任意修改,以完成程序功能為準(zhǔn)fi=open("論語(yǔ)-原文.txt",_____)fo=open("論語(yǔ)-提純?cè)?txt",_____)Forlineinfi:line=line.replace()
53.考生文件夾下存在一個(gè)文件PY101.py,請(qǐng)寫(xiě)代碼替換橫線,不修改其他代碼,實(shí)現(xiàn)以下功能:
鍵盤(pán)輸入正整數(shù)n,按要求把n輸出到屏幕,格式要求:寬度為25個(gè)字符,等號(hào)字符(=)填充,右對(duì)齊,帶千位分隔符。如果輸入正整數(shù)超過(guò)25位,則按照真實(shí)長(zhǎng)度輸出。
例如:鍵盤(pán)輸入正整數(shù)n為1234,屏幕輸出===================1,234
試題程序:
#請(qǐng)完善如下代碼
s=input()
print(”{________(1)_________}”.format(________(2)_________))
參考答案
1.AS&T返回一個(gè)新集合,包括同時(shí)在集合S和T中的元素。本題選擇A選項(xiàng)。
2.C列表的index()方法用于從列表中找出某個(gè)對(duì)象第一個(gè)匹配項(xiàng)的索引位置,如果這個(gè)對(duì)象不在列表中會(huì)報(bào)一個(gè)異常。其語(yǔ)法為:list.index(obj[,start=0[,stop=len(L)]]),其中obj為必須參數(shù),指要查找的對(duì)象;start為可選參數(shù),指從哪個(gè)索引位置開(kāi)始查找,默認(rèn)為0;stop為可選參數(shù),指查找到哪個(gè)索引位置結(jié)束,默認(rèn)為列表的長(zhǎng)度。本題中,查找對(duì)象為’烏龍茶’,從索引位置為0處開(kāi)始查找,查找到第二個(gè)元素匹配,故返回其索引位置1。
3.D
4.Bstr(4)=‘4’,此字符在字符串ca中,滿足if條件,執(zhí)行輸出語(yǔ)句。ca.replace(ca[4],str(4-2))是指返回字符串ca副本,ca[4]是指字符串中序號(hào)為4的字符‘5’,str(4-2)返回字符‘2’,也就是用字符‘2’來(lái)替換字符‘5’。本題選擇B選項(xiàng)。
5.C在Python中,輸出用print()函數(shù),HelloWorld是字符串類(lèi)型,需要加單引號(hào)或雙引號(hào)。本題選擇C選項(xiàng)。
6.B屬于Python數(shù)據(jù)分析及可視化的第三方庫(kù)的有seabom、NumPy、scipy、pandas、matplotlib、TVTK、mayavi(也稱(chēng)mayavi2)等。random庫(kù)是Python用于產(chǎn)生各種分布的偽隨機(jī)數(shù)序列的庫(kù)。本題選擇B選項(xiàng)。
7.B在Python中,字典是存儲(chǔ)可變數(shù)量鍵值對(duì)的數(shù)據(jù)結(jié)構(gòu),通過(guò)字典類(lèi)型實(shí)現(xiàn)映射。字典使用花括號(hào)({})創(chuàng)建,每個(gè)元素是一個(gè)鍵值對(duì),語(yǔ)法格式為:{<鍵1>:<值1>,<鍵2>:\n<值2>,'…,<鍵n:<值n>}其中,鍵和值通過(guò)冒號(hào)連接,不同鍵值對(duì)通過(guò)逗號(hào)隔開(kāi)。字典具有和集合類(lèi)似的性質(zhì),即鍵值對(duì)之間沒(méi)有順序且不能重復(fù)。d[鍵]獲取鍵對(duì)應(yīng)值的值,d.get(key,defart)方法用來(lái)返回key對(duì)應(yīng)的值,如果字典中不存在該鍵,則返回默認(rèn)值。本題選擇B選項(xiàng)。
8.A根據(jù)二叉樹(shù)的性質(zhì)3:在任意一棵二叉樹(shù)中,度為0的葉子結(jié)點(diǎn)總是比度為2的結(jié)點(diǎn)多一個(gè),所以本題中度為2的結(jié)點(diǎn)是5-1\n=4個(gè),所以度為1的結(jié)點(diǎn)的個(gè)數(shù)是25-5-4=16個(gè)。本題選擇A選項(xiàng)。
9.C
10.A解析:順序存儲(chǔ)結(jié)構(gòu)就是用一組地址連續(xù)的存儲(chǔ)單元依次存儲(chǔ)該線性表中的各個(gè)元素,鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)中各數(shù)據(jù)結(jié)點(diǎn)的存儲(chǔ)序號(hào)是不連續(xù)的,并且各結(jié)點(diǎn)在存儲(chǔ)空間中的位置關(guān)系與邏輯關(guān)系也不一致,所以選項(xiàng)A是正確的。兩者都可以存儲(chǔ)線性的、有序的邏輯結(jié)構(gòu),所以選項(xiàng)B、C不正確。順序結(jié)構(gòu)使用的是連續(xù)物理空間,鏈?zhǔn)浇Y(jié)構(gòu)可以使用零散的物理空間存儲(chǔ),鏈?zhǔn)浇Y(jié)構(gòu)更靈活,不存在誰(shuí)節(jié)約空間的說(shuō)法,所以選項(xiàng)D不正確。
11.A結(jié)構(gòu)化程序設(shè)計(jì)方法的主要原則可以概括為:自頂向下,逐步求精,模塊化和限制使用GOTO語(yǔ)句,其中不包括多態(tài)性。
12.D
13.D屬性即對(duì)象所包含的信息,它在設(shè)計(jì)對(duì)象時(shí)確定,一般只能通過(guò)執(zhí)行對(duì)象的操作來(lái)改變。不同對(duì)象的同一屬性可以具有相同或不同的屬性值。例如,張三的年齡是20,李四的年齡是18,張三、李四是兩個(gè)不同的對(duì)象,他們共同的屬性”年齡”的值不同。
14.D
15.B詳細(xì)設(shè)計(jì)階段常見(jiàn)的工具有程序流程圖、N—S圖、PAD圖、HIPO圖、判定表等。本題選B選項(xiàng)。
16.B一F是指在dist文件夾中只生成獨(dú)立的打包文件(即exe文件),所有的第三方依賴(lài)、資源和代碼均打包進(jìn)此exe中。
17.D
18.CPython中復(fù)數(shù)類(lèi)型的虛數(shù)部分的后綴可以為j或者J;復(fù)數(shù)的實(shí)部可以單獨(dú)存在,但是虛部不可以單獨(dú)存在;復(fù)數(shù)由實(shí)部和虛部構(gòu)成,可以使用z.\nreal和z.imag分別獲得它的實(shí)部和虛部。本題選擇C選項(xiàng)。
19.B在Python中,使用for…in…方式形成的循環(huán)能遍歷的類(lèi)型有字符串、文件、range()函數(shù)或組合數(shù)據(jù)類(lèi)型,不能遍歷復(fù)數(shù)。本題選擇B選項(xiàng)。
20.D本題考查的是字符串輸出格式化知識(shí)點(diǎn),其中“{:*^13},,表示輸出的字符串長(zhǎng)度為13,居中對(duì)齊,空白處用“*”填充。最后輸出的是****LOVES****,D項(xiàng)正確。
21.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)。
22.AB選項(xiàng)是一個(gè)微型的面向文檔的數(shù)據(jù)庫(kù),C選項(xiàng)是Python的數(shù)字信號(hào)處理包,D選項(xiàng)是Python的網(wǎng)絡(luò)信息挖掘模塊。本題選擇A選項(xiàng)。
23.BD選項(xiàng)用于導(dǎo)入模塊中所有的函數(shù)從而直接調(diào)用該模塊中的函數(shù);A選項(xiàng)直接導(dǎo)入整個(gè)模塊,再利用“模塊名.函數(shù)名”這樣的方式來(lái)運(yùn)行該模塊中的函數(shù);C選項(xiàng)只是在導(dǎo)入該模塊時(shí)給該模塊起了一個(gè)別名,本質(zhì)和A選項(xiàng)一樣。B選項(xiàng)正確的寫(xiě)法應(yīng)該是frommoduleimportfunctionasf,所以B選項(xiàng)錯(cuò)誤。
24.C
25.B變量x依次被賦值為[2,8)區(qū)間的自然數(shù),在循環(huán)內(nèi)定義一變量y并賦值為0,即每次計(jì)算累加和之前y都被清零,所以結(jié)果為7。
26.C異常指的是在程序運(yùn)行過(guò)程中發(fā)生的異常事件,通常是由外部問(wèn)題(如硬件錯(cuò)誤、輸入錯(cuò)誤)所導(dǎo)致的。錯(cuò)誤是指導(dǎo)致系統(tǒng)不能按照用戶(hù)意圖工作的一切原因、事件。在程序設(shè)計(jì)過(guò)程中,由于某些錯(cuò)誤的存在,致使程序無(wú)法正常運(yùn)行,處理這些錯(cuò)誤以使程序正確運(yùn)行就稱(chēng)為錯(cuò)誤處理。異常和錯(cuò)誤是完全不同的概念。本題選擇C選項(xiàng)。
27.Cfor循環(huán)將字符串”P(pán)ythonNCRE”的字符依次賦給變量s,當(dāng)s==”N”時(shí),跳出for循環(huán),故輸出為Python。本題選C選項(xiàng)。
28.Astr1[2:]表示對(duì)字符串str1進(jìn)行切片,即從序號(hào)為2的字符開(kāi)始切片直到字符串結(jié)尾(字符串最左側(cè)的字符序號(hào)為0),其結(jié)果為“npython@*”;strip(Chars)方法是從字符串中去掉其左側(cè)和右側(cè)chars中列出的字符,“python@*”.strip(‘@’)表示將字符串左側(cè)和右側(cè)的”字符去掉,由于字符串左側(cè)和右側(cè)均無(wú)“@”字符,因此結(jié)果為“python@*”。本題選擇A選項(xiàng)。
29.DA選項(xiàng)正確,遞歸函數(shù)必須有一個(gè)明確的結(jié)束條件作為遞歸的出口;B選項(xiàng)正是遞歸函數(shù)的含義,正確;C選項(xiàng)正確,在計(jì)算機(jī)中,函數(shù)調(diào)用是通過(guò)棧這種數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn)的,每當(dāng)進(jìn)入一個(gè)函數(shù)調(diào)用,棧就會(huì)加一層棧幀,每當(dāng)函數(shù)返回,棧就會(huì)減一層棧幀,由于棧的大小不是無(wú)限的,因此,遞歸調(diào)用的次數(shù)過(guò)多,會(huì)導(dǎo)致棧溢出;D選項(xiàng)錯(cuò)誤,每當(dāng)進(jìn)入更深一層的遞歸時(shí),問(wèn)題規(guī)模顯然會(huì)相對(duì)前一次遞歸減小。本題選擇D選項(xiàng)。
30.C設(shè)葉子結(jié)點(diǎn)數(shù)為〃,則該樹(shù)的結(jié)點(diǎn)數(shù)為n+9+5=n+\n14,根據(jù)樹(shù)中的結(jié)點(diǎn)數(shù)=樹(shù)中所有結(jié)點(diǎn)的度之和+1,得9×3+0×2+5×1+n×0+1=n+14,則n=19。本題選擇C選項(xiàng)。
31.Y
32.Y
33.Y
34.N
35.Y
36.Y
37.Y
38.Y
39.N
40.N
41.True
42.None
43.5
44.True
45.9
46.32
47.[111,11,1]
48.21
49.'Thefirst:97,thesecondis65'
50.['3','1']
51.fromturtleimport*foriinrange(5):fd(200)right(144)該題考查的是Python標(biāo)準(zhǔn)庫(kù)——turtle庫(kù),繪制五角星。因?yàn)槔L制5條邊,所以循環(huán)執(zhí)行5次,故第1空填range(5)。因?yàn)槲褰切沁呴L(zhǎng)為200像素,所以第2空填200。最后由于本題要求使用right()函數(shù),且五角星的內(nèi)角為36度,因此第3空填right(\r\n144)。
52.fi=open(“論語(yǔ).txt'”r”)fo=open(”論語(yǔ)-原文.txt”,”w”)Flag=falseforlineinfi:If”【“inline:Flag=falseIf”【原文】”inline:Flag=tureContinueIffiag=ture:fo.write(line.lstrip())Fi.close()Fo.close()fi=open("論語(yǔ)-原文.txt"’r’)fo=open("論語(yǔ)-提純?cè)?txt”,’w’)forlineinfi:Foriinrange(1,23):line=line,replace(“{}”.format(i),””)fowrite(line)Fi.close()Fo.close()(1)題目要求從“論語(yǔ).txt”文件中提取內(nèi)容,輸出保存到文件“論語(yǔ)-原文.txt”中,因此需要用”r”模式打開(kāi)“論語(yǔ)”txt”,用”\r\nw”模式創(chuàng)建文件“論語(yǔ)-原文.txt”。本題要求區(qū)域性提取,與單行提取不同,因此,可以借助寫(xiě)標(biāo)記flag來(lái)標(biāo)記操作的是哪里的文本。使用for循環(huán)遍歷“論語(yǔ).txt”中的每一行,當(dāng)該行存在時(shí),說(shuō)明已經(jīng)到了新的區(qū)域,寫(xiě)標(biāo)記設(shè)置為否,即flag\r\n=False;當(dāng)該行存在【原文】時(shí),寫(xiě)標(biāo)記設(shè)置為T(mén)rue;當(dāng)寫(xiě)標(biāo)記為T(mén)rue時(shí),就將當(dāng)前行內(nèi)容寫(xiě)入新的文件”論語(yǔ)-原文.txt"中。對(duì)文件操作完成后,使用close()方法關(guān)閉文件。(2)題目要求對(duì)“論語(yǔ)-原文.txt”進(jìn)一步提純,保存為“論語(yǔ)-提純?cè)?txt”文件,因此需要用”r”模式打開(kāi)“論語(yǔ)-原文.txt”,用”\r\nw”模式創(chuàng)建文件“論語(yǔ)-提純?cè)?txt”。題目要求去掉每行文字中所有圓括號(hào)及內(nèi)部數(shù)字,可在for循環(huán)遍歷“論語(yǔ)-原文.txt”文件中的每一行時(shí),用空格來(lái)代替出現(xiàn)的“(數(shù)字)”形式。分析“論語(yǔ)-原文.txt”文件可知,其中出現(xiàn)(1)~(22)共22種可能,因此內(nèi)部嵌套for循環(huán)需要從1遍歷到22,構(gòu)造(i)并替換。替換后將該行內(nèi)容寫(xiě)入文件“論語(yǔ)-提純?cè)?txt”中。對(duì)文件操作完成后,使用close()方法關(guān)閉文件。
53.s=input()\r\nprint(”{:=>25}”.format(eval(s)))該題目主要考查Python字符串的格式化方法。Python語(yǔ)言推薦使用.format()格式化方法,其使用方式如下:\r\n
<模板字符串>.format(<逗號(hào)分隔的參數(shù)>)\r\n
其中,模板字符串是一個(gè)由字符串和槽組成的字符串,用來(lái)控制字符串和變量的顯示效果。槽用大括號(hào)({})表示,對(duì)應(yīng)format()方法中逗號(hào)分隔的參數(shù)。如果模板字符串中有多個(gè)槽,可以通過(guò)format()參數(shù)的序號(hào)在模板字符串槽中指定參數(shù)的使用,參數(shù)從0開(kāi)始編號(hào)。例如:\r\n”{0}日:學(xué)而不思則罔,思而不學(xué){1}。”.format(”孔子”,”則殆”)\r\n
其結(jié)果為:’孔子日:學(xué)而不思則罔,思而不學(xué)則殆?!痋r\n
format()方法的槽除了包括參數(shù)序號(hào),還可以包括格式控制信息,語(yǔ)法格式如下:\r\n
{<參數(shù)序號(hào)>:<格式控制標(biāo)記>}\r\n其中,格式控制標(biāo)記包括:<填充><對(duì)齊><寬度><,><.精度><類(lèi)型>6個(gè)字段,由引導(dǎo)符號(hào)(:)作為引導(dǎo)標(biāo)記,這些字段都是可選的,可以組合使用。\r\n
<填充>:指用于填充的單個(gè)字符。\r\n
<對(duì)齊>:分別使用<、>和^三個(gè)符號(hào)表示左對(duì)齊、右對(duì)齊和居中對(duì)齊。\r\n<寬度>:當(dāng)前槽的設(shè)定輸出字符寬度。\r\n<,>:用于顯示數(shù)字類(lèi)型的千位分隔符。\r\n
<.精度>:由小數(shù)點(diǎn)(.)開(kāi)頭,對(duì)于浮點(diǎn)數(shù),精度表示小數(shù)部分輸出的有效位數(shù);對(duì)于字符串,精度表示輸出的最大長(zhǎng)度。\r\n
<類(lèi)型>:表示輸出整數(shù)和浮點(diǎn)數(shù)類(lèi)型的格式規(guī)則。\r\n
本題格式要求為:寬度為25個(gè)字符,等號(hào)字符(=)填充,右對(duì)齊,帶千位分隔符。則模板字符串為:{:=>25,}。\r\n
由于題目要求帶千位分隔符,所以模板字符串對(duì)應(yīng)的:format()方法中的參數(shù)必須是數(shù)字類(lèi)型,但無(wú)論用戶(hù)輸入的是字符還是數(shù)字,input()函數(shù)統(tǒng)一按照字符串類(lèi)型輸出,這時(shí)就需要先使用eval()函數(shù)去掉字符串最外側(cè)的引號(hào),然后再參與運(yùn)算。湖南省永州市全國(guó)計(jì)算機(jī)等級(jí)考試Python語(yǔ)言程序設(shè)計(jì)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(30題)1.S和T是兩個(gè)集合,對(duì)S&T的描述正確的是()。
A.S和T的交運(yùn)算,包括同時(shí)在集合S和T中的元素
B.S和T的并運(yùn)算,包括在集合S和T中的所有元素
C.S和T的差運(yùn)算,包括在集合S但不在T中的元素
D.S和T的補(bǔ)運(yùn)算,包括S和T中的幾個(gè)非相同元素
2.以下程序的輸出結(jié)果是()。ls=[’綠茶’,’烏龍茶’,’紅茶’,’白茶’,’黑茶’]x=’烏龍茶’print(ls.index(x,0))
A.一3B.0C.1D.一4
3.下列哪種情況不會(huì)導(dǎo)致Python對(duì)象的引用計(jì)數(shù)增加()
A.對(duì)象被創(chuàng)建B.被作為參數(shù)傳遞給函數(shù)C.成為容器對(duì)象的元素D.該對(duì)象無(wú)法訪問(wèn)時(shí)
4.以下程序的輸出結(jié)果是()。x=4ca=‘123456’ifstr(x)inca: print(ca.replace(ca[x],str(x-2)))
A.123456B.123426C.5D.2
5.擬在屏幕上輸出HelloWorld,使用的Python語(yǔ)句是()。
A.printf(‘HelloWorld’)
B.print(HelloWorld)
C.print(“HelloWorld")
D.printf("HelloWorld")
6.不屬于Python數(shù)據(jù)分析及可視化處理的第三方庫(kù)的是()。
A.seabornB.randomC.mayavi2D.NumPy
7.以下代碼的輸出結(jié)果是()。d={”大?!保骸彼{(lán)色”,”天空":”灰色","大地":”黑色”}print(d["大地”],d.get("天空”,"黃色”))
A.黑色黑色B.黑色灰色C.黑色黃色D.黑色藍(lán)色
8.一棵二叉樹(shù)共有25個(gè)節(jié)點(diǎn),其中5個(gè)是葉子節(jié)點(diǎn),則度為1的節(jié)點(diǎn)數(shù)為()。
A.16B.10C.6D.4
9.執(zhí)行以下代碼的結(jié)果是?A.0B.1C.2D.3
10.下列敘述中正確的是()。
A.順序存儲(chǔ)結(jié)構(gòu)的存儲(chǔ)一定是連續(xù)的,鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)的存儲(chǔ)空間不一定是連續(xù)的
B.順序存儲(chǔ)結(jié)構(gòu)只針對(duì)線性結(jié)構(gòu),鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)只針對(duì)非線性結(jié)構(gòu)
C.順序存儲(chǔ)結(jié)構(gòu)能存儲(chǔ)有序表,鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)不能存儲(chǔ)有序表
D.鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)比順序存儲(chǔ)結(jié)構(gòu)節(jié)省存儲(chǔ)空間
11.結(jié)構(gòu)化程序設(shè)計(jì)的基本原則不包括A.多態(tài)性B.自頂向下C.模塊化D.逐步求精
12.執(zhí)行以下代碼的結(jié)果是()A.2B.4C.5D.8
13.下面描述錯(cuò)誤的是()。
A.對(duì)象一定有標(biāo)識(shí)B.對(duì)象一定有屬性和方法(或操作)C.對(duì)象具有封裝性D.不同對(duì)象的同一屬性一定有相同的屬性值
14.以下哪個(gè)語(yǔ)句不適宜對(duì)異常捕獲()
A.try..catchB.assertC.withD.ifelif
15.程序流程圖是()。
A.總體設(shè)計(jì)階段使用的表達(dá)工具B.詳細(xì)設(shè)計(jì)階段使用的表達(dá)工具C.編碼階段使用的表達(dá)工具D.測(cè)試階段使用的表達(dá)工具
16.用Pyinstaller工具打包Python源文件時(shí)一F參數(shù)的含義是()。
A.指定所需要的第三方庫(kù)路徑
B.在dist文件夾中只生成獨(dú)立的打包文件
C.指定生成打包文件的目錄
D.刪除生成的臨時(shí)文件
17.執(zhí)行以下代碼的結(jié)果是()A.2B.5C.8D.Anexceptionisthrown
18.下列關(guān)于Python中復(fù)數(shù)類(lèi)型的描述錯(cuò)誤的是()。
A.復(fù)數(shù)由實(shí)數(shù)部分和虛數(shù)部分構(gòu)成
B.復(fù)數(shù)可以看作二元有序?qū)崝?shù)對(duì)(a,b)
C.虛數(shù)部分必須有后綴j,且為小寫(xiě)
D.復(fù)數(shù)中的虛數(shù)部分不能單獨(dú)存在,必須有實(shí)數(shù)部分
19.在Python中,使用for—n…方式形成的循環(huán)不能遍歷的類(lèi)型是()。
A.列表B.復(fù)數(shù)C.字符串D.字典
20.以下程序的輸出結(jié)果是()。s=”LOVES'’print(”{:*^13}".format(s))
A.LOVESB.********LOVESC.LOVES********D.****LOVES****
21.在Python中,將二維數(shù)據(jù)寫(xiě)入CSV文件,最可能使用的函數(shù)是()。
A.write()B.split()C.join()D.exists()
22.以下屬于Python中Web開(kāi)發(fā)的第三方庫(kù)的是()。
A.DjangoB.TinyDBC.audiolazyD.Pattern
23.現(xiàn)在假設(shè)有一個(gè)包含一個(gè)函數(shù)的程序放在一個(gè)文件中,在主程序文件中使用下面各種方法來(lái)導(dǎo)入它,哪一種方法是錯(cuò)誤的?()
A.importmodule
B.frommoduleasfimportfunction
C.importmoduleasm
D.frommoduleimport*
24.若I,j均為整形數(shù)值對(duì)象,以下哪個(gè)語(yǔ)句計(jì)算i被j除后的余數(shù)()
A.imodjB.i/jC.i%jD.i//j
25.下面代碼的輸出結(jié)果是()。forxinrange(2,8):y=0y+=Xprint(y)
A.27B.7C.8D.35
26.以下描述錯(cuò)誤的是()。
A.Python是一門(mén)動(dòng)態(tài)的解釋型語(yǔ)言
B.當(dāng)Python腳本程序發(fā)生異常時(shí),如果不處理,運(yùn)行結(jié)果不可預(yù)測(cè)
C.編程語(yǔ)言中的異常和錯(cuò)誤是完全相同的概念
D.Python通過(guò)try、except等保留字提供異常處理功能
27.以下代碼的輸出結(jié)果是()。forsin”P(pán)ythonNCRE”:ifs==”N”:breakprint(s,end=””)
A.PythonCREB.NC.PythonD.PythonNCRE
28.設(shè)str1=‘*@python@*’,語(yǔ)句print(str1[2:].strip(‘@’))的執(zhí)行結(jié)果是()。
A.python@*B.python*C.*@python@*D.*python*
29.下面關(guān)于遞歸函數(shù)的描述中,錯(cuò)誤的是()。
A.遞歸函數(shù)必須有一個(gè)明確的結(jié)束條件
B.遞歸函數(shù)就是一個(gè)函數(shù)在內(nèi)部調(diào)用自身
C.遞歸效率不高,遞歸層次過(guò)多會(huì)導(dǎo)致棧溢出
D.每進(jìn)入更深一層的遞歸時(shí),問(wèn)題規(guī)模相對(duì)前一次遞歸是不變的
30.樹(shù)的度為3,且有9個(gè)度為3的節(jié)點(diǎn),5個(gè)度為1的節(jié)點(diǎn),但沒(méi)有度為2的節(jié)點(diǎn)。則該樹(shù)中的葉子節(jié)點(diǎn)數(shù)為()。
A.18B.33C.19D.32
二、判斷題(10題)31.在Python中定義函數(shù)時(shí)不需要聲明函數(shù)參數(shù)的類(lèi)型。
A.是B.否
32.Python是一種跨平臺(tái)、開(kāi)源、免費(fèi)的高級(jí)動(dòng)態(tài)編程語(yǔ)言。
A.是B.否
33.形參可以看做是函數(shù)內(nèi)部的局部變量,函數(shù)運(yùn)行結(jié)束之后形參就不可訪問(wèn)了。
A.是B.否
34.在Python中可以使用if作為變量名。
A.是B.否
35.對(duì)文件進(jìn)行讀寫(xiě)操作之后必須顯式關(guān)閉文件以確保所有內(nèi)容都得到保存。
A.是B.否
36.對(duì)于Python類(lèi)中的私有成員,可以通過(guò)“對(duì)象名._類(lèi)名__私有成員名”的方式來(lái)訪問(wèn)。
A.是B.否
37.元組可以作為字典的“鍵”。
A.是B.否
38.調(diào)用函數(shù)時(shí),在實(shí)參前面加一個(gè)型號(hào)*表示序列解包。
A.是B.否
39.不同版本的Python不能安裝到同一臺(tái)計(jì)算機(jī)上。
A.是B.否
40.已知seq為長(zhǎng)度大于10的列表,并且已導(dǎo)入random模塊,那么[random.choice(seq)foriinrange(10)]和random.sample(seq,10)等價(jià)。A.是B.否
三、填空題(10題)41.已知x={'a':'b','c':'d'},那么表達(dá)式'a'inx的值為_(kāi)_____________。
42.已知x=[3,7,5],那么執(zhí)行語(yǔ)句x=x.sort(reverse=True)之后,x的值為_(kāi)________。
43.表達(dá)式int('101',2)的值為_(kāi)_________。
44.已知列表x=[1,2],執(zhí)行語(yǔ)句y=x后,表達(dá)式id(x)==id(y)的值為_(kāi)______。
45.表達(dá)式len(range(1,10))的值為_(kāi)__________。
46.已知x=[[1,2,3,],[4,5,6]],那么表達(dá)式sum([i*jfori,jinzip(*x)])的值為_(kāi)_____。
47.已知x=[1,11,111],那么執(zhí)行語(yǔ)句x.sort(key=lambdax:len(str(x)),reverse=True)之后,x的值為_(kāi)_________________。
48.表達(dá)式print(0b10101)的值為_(kāi)___________。
49.表達(dá)式'Thefirst:{1},thesecondis{0}'.format(65,97)的值為_(kāi)_____________________________。
50.假設(shè)re模塊已導(dǎo)入,那么表達(dá)式re.findall('(\d)\\1+','33abcd112')的值為_(kāi)__________________。
四、操作題(3題)51.考生文件夾下存在一個(gè)文件“PY201.py”,請(qǐng)寫(xiě)代碼替換橫線,不修改其他代碼,實(shí)現(xiàn)以下功能。使用turtle庫(kù)的turtle.right()函數(shù)和turtle.fd()函數(shù)繪制一個(gè)五角星,邊長(zhǎng)為200像素,5個(gè)內(nèi)角度數(shù)為36度,效果如下所示。試題程序:#請(qǐng)?jiān)诔绦虻腳____處使用一行代碼或表達(dá)式替換#注意:請(qǐng)不要修改其他已給出代碼fromturtleimport*foriin_____(1)_____:fd(_____(2)_____)_____(3)_____
52.考生文件夾下存在2個(gè)Python源文件和3個(gè)文本文件,分別對(duì)應(yīng)兩個(gè)問(wèn)題,請(qǐng)按照文件內(nèi)說(shuō)明修改代碼,實(shí)現(xiàn)以下功能?!墩撜Z(yǔ)》是儒家學(xué)派的經(jīng)典著作之一,主要記錄了孔子及其弟子言行。這里給出了一個(gè)網(wǎng)絡(luò)版本的《論語(yǔ)》,文件名稱(chēng)為“論語(yǔ).txt”,其內(nèi)容采用逐句“原文”與逐句“注釋”相結(jié)合的形式組織,通過(guò)【原文】標(biāo)記《論語(yǔ)》原文內(nèi)容,通過(guò)【注釋】標(biāo)記《論語(yǔ)》注釋內(nèi)容,具體格式請(qǐng)參考“論語(yǔ).txt”文件。問(wèn)題1:在“PY301-1.py”文件中修改代碼,提取“論語(yǔ).txt”文件中的原文內(nèi)容,輸出保存到考生文件夾下,文件名為“論語(yǔ)-原文.txt”。具體要求:僅保留“論語(yǔ).txt”文件中所有【原文】標(biāo)簽下面的內(nèi)容,不保留標(biāo)簽,并去掉每行行首空格及行尾空格,無(wú)空行。原文圓括號(hào)及內(nèi)部數(shù)字是源文件中注釋內(nèi)容的標(biāo)記,請(qǐng)保留。文件輸出格式請(qǐng)參考“論語(yǔ)-原文-輸出示例.txt”文件。注意:輸出示例僅幫助考生了解輸出格式,不作它用。試題程序:#以下代碼為提示框架#請(qǐng)?jiān)诔绦虻?..處使用一行或多行代碼替換#請(qǐng)?jiān)诔绦虻腳___處使用一行代碼替換#注意:提示框架的代碼可以任意修改,以完成程序功能為準(zhǔn)fi=open(“論語(yǔ).txt",)fo=open(“論語(yǔ)-原文.txt",)…Forlineinfi:…fo.write(line.lstrip())問(wèn)題2:在“PY301-2.py”文件中修改代碼,對(duì)“論語(yǔ)-原文.txt”或“論語(yǔ).txt”文件進(jìn)一步提純,去掉每行文字中所有圓括號(hào)及內(nèi)部數(shù)字,保存為“論語(yǔ)-提純?cè)?txt”文件。文件輸出格式請(qǐng)參考“論語(yǔ)-提純?cè)?輸出示例.txt”文件。注意:示例輸出文件僅幫助考生了解輸出格式,不做它用。試題程序:#以下代碼為提示框架#請(qǐng)?jiān)诔绦虻?..處使用一行或多行代碼替換#請(qǐng)?jiān)诔绦虻奶幨褂靡恍写a替換#注意:提示框架的代碼可以任意修改,以完成程序功能為準(zhǔn)fi=open("論語(yǔ)-原文.txt",_____)fo=open("論語(yǔ)-提純?cè)?txt",_____)Forlineinfi:line=line.replace()
53.考生文件夾下存在一個(gè)文件PY101.py,請(qǐng)寫(xiě)代碼替換橫線,不修改其他代碼,實(shí)現(xiàn)以下功能:
鍵盤(pán)輸入正整數(shù)n,按要求把n輸出到屏幕,格式要求:寬度為25個(gè)字符,等號(hào)字符(=)填充,右對(duì)齊,帶千位分隔符。如果輸入正整數(shù)超過(guò)25位,則按照真實(shí)長(zhǎng)度輸出。
例如:鍵盤(pán)輸入正整數(shù)n為1234,屏幕輸出===================1,234
試題程序:
#請(qǐng)完善如下代碼
s=input()
print(”{________(1)_________}”.format(________(2)_________))
參考答案
1.AS&T返回一個(gè)新集合,包括同時(shí)在集合S和T中的元素。本題選擇A選項(xiàng)。
2.C列表的index()方法用于從列表中找出某個(gè)對(duì)象第一個(gè)匹配項(xiàng)的索引位置,如果這個(gè)對(duì)象不在列表中會(huì)報(bào)一個(gè)異常。其語(yǔ)法為:list.index(obj[,start=0[,stop=len(L)]]),其中obj為必須參數(shù),指要查找的對(duì)象;start為可選參數(shù),指從哪個(gè)索引位置開(kāi)始查找,默認(rèn)為0;stop為可選參數(shù),指查找到哪個(gè)索引位置結(jié)束,默認(rèn)為列表的長(zhǎng)度。本題中,查找對(duì)象為’烏龍茶’,從索引位置為0處開(kāi)始查找,查找到第二個(gè)元素匹配,故返回其索引位置1。
3.D
4.Bstr(4)=‘4’,此字符在字符串ca中,滿足if條件,執(zhí)行輸出語(yǔ)句。ca.replace(ca[4],str(4-2))是指返回字符串ca副本,ca[4]是指字符串中序號(hào)為4的字符‘5’,str(4-2)返回字符‘2’,也就是用字符‘2’來(lái)替換字符‘5’。本題選擇B選項(xiàng)。
5.C在Python中,輸出用print()函數(shù),HelloWorld是字符串類(lèi)型,需要加單引號(hào)或雙引號(hào)。本題選擇C選項(xiàng)。
6.B屬于Python數(shù)據(jù)分析及可視化的第三方庫(kù)的有seabom、NumPy、scipy、pandas、matplotlib、TVTK、mayavi(也稱(chēng)mayavi2)等。random庫(kù)是Python用于產(chǎn)生各種分布的偽隨機(jī)數(shù)序列的庫(kù)。本題選擇B選項(xiàng)。
7.B在Python中,字典是存儲(chǔ)可變數(shù)量鍵值對(duì)的數(shù)據(jù)結(jié)構(gòu),通過(guò)字典類(lèi)型實(shí)現(xiàn)映射。字典使用花括號(hào)({})創(chuàng)建,每個(gè)元素是一個(gè)鍵值對(duì),語(yǔ)法格式為:{<鍵1>:<值1>,<鍵2>:\n<值2>,'…,<鍵n:<值n>}其中,鍵和值通過(guò)冒號(hào)連接,不同鍵值對(duì)通過(guò)逗號(hào)隔開(kāi)。字典具有和集合類(lèi)似的性質(zhì),即鍵值對(duì)之間沒(méi)有順序且不能重復(fù)。d[鍵]獲取鍵對(duì)應(yīng)值的值,d.get(key,defart)方法用來(lái)返回key對(duì)應(yīng)的值,如果字典中不存在該鍵,則返回默認(rèn)值。本題選擇B選項(xiàng)。
8.A根據(jù)二叉樹(shù)的性質(zhì)3:在任意一棵二叉樹(shù)中,度為0的葉子結(jié)點(diǎn)總是比度為2的結(jié)點(diǎn)多一個(gè),所以本題中度為2的結(jié)點(diǎn)是5-1\n=4個(gè),所以度為1的結(jié)點(diǎn)的個(gè)數(shù)是25-5-4=16個(gè)。本題選擇A選項(xiàng)。
9.C
10.A解析:順序存儲(chǔ)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2026學(xué)年譯林版英語(yǔ)八年級(jí)第二學(xué)期期中質(zhì)量測(cè)試卷(含答案含聽(tīng)力原文無(wú)音頻)
- 文科卷一文綜試卷及答案
- 初中學(xué)生安全教育課件
- 五年級(jí)第一單元測(cè)試題-冀教版五年級(jí)上冊(cè)語(yǔ)文第一單元提升測(cè)試題及答案
- 電氣接地系統(tǒng)技術(shù)要領(lǐng)
- 2022年湖北省安全員C證考試試題含答案參考34
- 雅安石棉撒拉池110kV輸變電重建工程建設(shè)項(xiàng)目環(huán)境影響報(bào)告表
- 數(shù)控操作考試題目及答案
- 腎病科護(hù)理考試題及答案
- 腎性貧血護(hù)理試題及答案
- 醫(yī)學(xué)影像學(xué)知到智慧樹(shù)期末考試答案題庫(kù)2025年南方醫(yī)科大學(xué)
- 《醫(yī)學(xué)美容技術(shù)》課件-5強(qiáng)脈沖光美容技術(shù)
- 預(yù)算績(jī)效自評(píng)報(bào)告培訓(xùn)
- DB14-T 1734-2025 鍋爐用甲醇燃料儲(chǔ)供設(shè)施技術(shù)條件
- 浙江省寧波市鄞州區(qū)2024-2025學(xué)年七年級(jí)上學(xué)期期末英語(yǔ)試題(含答案、聽(tīng)力原文無(wú)音頻)
- 提高連鑄機(jī)群錨地腳螺栓安裝一次合格率(修訂)4-11
- 礦山作業(yè)安全事故調(diào)查處理制度
- GB/T 45013-2024精細(xì)陶瓷基片的熱疲勞試驗(yàn)方法
- 《管理學(xué)基礎(chǔ)》教學(xué)大綱
- 充電樁場(chǎng)地租賃協(xié)議(范本)
- 云南省楚雄州2023-2024學(xué)年上學(xué)期期末教育學(xué)業(yè)質(zhì)量監(jiān)測(cè)九年級(jí)歷史試卷(含答案)
評(píng)論
0/150
提交評(píng)論