版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
遼寧省撫順市全國計算機(jī)等級考試Python語言程序設(shè)計學(xué)校:________班級:________姓名:________考號:________
一、單選題(30題)1.耦合性和內(nèi)聚性是對模塊獨(dú)立性度量的兩個標(biāo)準(zhǔn),下列敘述中正確的是()。
A.提高耦合性降低內(nèi)聚性有利于提高模塊的獨(dú)立性
B.降低耦合性提高內(nèi)聚性有利于提高模塊的獨(dú)立性
C.耦合性是指一個模塊內(nèi)部各個元素間彼此結(jié)合的緊密程度
D.內(nèi)聚性是指模塊間互相連接的緊密程度
2.一個模塊直接調(diào)用的下層模塊的數(shù)目稱為模塊的()。
A.扇入數(shù)B.扇出數(shù)C.寬度D.作用域
3.下面屬于“對象”成份之一的是()。
A.封裝B.規(guī)則C.屬性D.繼承
4.第三方庫Beauifulsoup4的功能是()。
A.解析和處理HTML和XMLB.支持web應(yīng)用程序框架C.支持webservices框架D.處理http請求
5.以下程序的輸出結(jié)果是()。ls=[]formin‘想念’:fornin‘家人’:ls.append(m+n)print(ls)A.想念家人B.想想念念家家人人C.想家想人念家念人D.[‘想家’,‘想人’,‘念家’,‘念人’]
6.關(guān)于Python元組類型,以下選項(xiàng)中描述錯誤的是()。
A.元組不可以被修改
B.Python中元組使用圓括號和逗號表示
C.元組中的元素要求是相同類型
D.一個元組可以作為另一個元祖的元素,可以采用多級索引獲取信息
7.以下描述中,不屬于Python控制結(jié)構(gòu)的是()。
A.分支結(jié)構(gòu)B.程序異常C.跳轉(zhuǎn)結(jié)構(gòu)D.順序結(jié)構(gòu)
8.當(dāng)試圖訪問的對象屬性不存在時,為了不讓程序拋出異常,需要用到的語句是()。
A.try-except語句B.for語句C.eval語句D.if語句
9.以下程序Dog類中的__init__()方法共包含幾個形參()。ClassDog(): def__init__(self,name,age) =name self.age=age
A.0個B.1個C.2個D.3個
10.以下程序中描述的是哪一種傳入?yún)?shù)的方法()。deff(a,b): ifa>b: print(“1”) elifa==b: pritn(“2”) else: print(“3”)f(2,3)
A.可變參數(shù)B.關(guān)鍵字參數(shù)C.默認(rèn)參數(shù)D.位置參數(shù)
11.以下代碼的輸出結(jié)果是()。deffibRate(n):ifn<=0:return—1elifn==1:retum—1elifn==2:return1else:L=[1,5]foriinrange(2,n):L.a(chǎn)ppend(L[一1]+L[一2])returnL[一2]%L[一1]print(fibRate(7))
A.0.6B.28C.一1D.1
12.下列關(guān)于Python的描述正確的是()。
A.列表的下標(biāo)是從1開始的
B.元組的元素值可以修改、刪除、連接
C.字典中的“鍵”只能是整數(shù)、字符串
D.集合分為可變集合和不可變集合,可變集合的元素可以添加、刪除
13.下列不屬于Python合法的標(biāo)識符的是()。
A.use_timeB.int32C._selfnameD.180x1
14.以下關(guān)于列表變量ls操作的描述中,錯誤的是()。
A.ls.copy():生成一個新列表,復(fù)制ls的所有元素
B.ls.removed):刪除ls中所有的x元素
C.ls.append(x):在ls最后增加一個元素
D.ls.reverse():反轉(zhuǎn)列表ls中所有元素
15.下面屬于Python的標(biāo)準(zhǔn)庫的是()。
A.turtleB.jiebaC.SciPyD.Flask
16.Python中匿名函數(shù)的關(guān)鍵字是()。
A.lambdaB.globalC.withD.pass
17.以下選項(xiàng)不能改變turtle繪制方向的是()。
A.turtle.open()B.turtle.left()C.turtle.fd()D.turtle.seth()
18.下列關(guān)于Python的描述,正確的是()。
A.列表的索引是從1開始的
B.元組的元素值可以修改、刪除、連接
C.字典中的“鍵”只能是整數(shù)、字符串
D.集合分為可變集合和不可變集合,可變集合的元素可以添加、刪除
19.random庫采用更多的偽隨機(jī)數(shù)序列生成算法是()。
A.梅森旋轉(zhuǎn)算法B.蒙特卡洛方法C.線性同余法D.平方取中法
20.以下代碼的輸出結(jié)果是()。s=[4,2,9,1]s.insert(3,3)print(s)
A.[4,2,9,l,2,3]B.[4,3,2,9,l]C.[4,2,9,2,l]D.[4,2,9,3,l]
21.下面敘述中錯誤的是()。
A.軟件測試的目的是發(fā)現(xiàn)錯誤并改正錯誤
B.對被調(diào)試的程序進(jìn)行“錯誤定位”是程序調(diào)試的必要步驟
C.程序調(diào)試通常也稱為Debug
D.軟件測試應(yīng)嚴(yán)格執(zhí)行測試計劃,排除測試的隨意性
22.設(shè)棧與隊(duì)列初始狀態(tài)為空。首先A,B,C,D,E依次入棧,再F,G,H,I,J依次入隊(duì);然后依次出隊(duì)至隊(duì)空,再依次出棧至???。則輸出序列為()。
A.E,D,C,B,A,F(xiàn),G,H,I,j
B.E,D,C,B,A,J,I,H,G,F(xiàn)
C.F,G,H,I,J,A,B,C,D,E,
D.F,G,H,I,J,E,D,C,B,A
23.表達(dá)式3**2*4//6%7的計算結(jié)果是()。
A.3B.5C.4D.6
24.以下不是Python所使用特殊含義符號的是()。
A.$B.**C.&D.+=
25.可以用于測試一個對象是否是一個可迭代對象()
A.inB.typeC.forD.while
26.—個工作人員可以使用多臺計算機(jī),而一臺計算機(jī)可被多個人使用,則實(shí)體工作人員與實(shí)體計算機(jī)之間的聯(lián)系是()。
A.—對一B.—對多C.多對多D.多對一
27.以下不屬于Python保留字的是()。
A.passB.useC.withD.None
28.下面關(guān)于CSV文件描述錯誤的是()。
A.CSV文件格式是一種通用的文件格式,應(yīng)用于程序之間轉(zhuǎn)移表格數(shù)據(jù)
B.CSV文件的每一行是一維數(shù)據(jù),可以使用Python中的列表類型表示
C.CSV文件通過多種編碼表示字符
D.整個CSV文件是一個二維數(shù)據(jù)
29.黑盒測試技術(shù)依據(jù)的是()。
A.軟件功能的描述B.程序的邏輯結(jié)構(gòu)C.程序的物理結(jié)構(gòu)D.軟件行為的描述
30.以下關(guān)于Python字典的描述中,錯誤的是()。
A.在Python中,用字典來實(shí)現(xiàn)映射,通過整數(shù)索引來查找其中的元素
B.在定義字典對象時,鍵和值用冒號連接
C.字典中的鍵值對之間沒有順序并且不能重復(fù)
D.字典中引用與特定鍵對應(yīng)的值,用字典名稱和方括號中包含鍵名的格式
二、判斷題(10題)31.在Python中0xad是合法的十六進(jìn)制數(shù)字表示形式。
A.是B.否
32.假設(shè)re模塊已成功導(dǎo)入,并且有pattern=pile('^'+'\.'.join([r'\d{1,3}'foriinrange(4)])+'$'),那么表達(dá)式pattern.match('03')的值為None。
A.是B.否
33.運(yùn)算符“-”可以用于集合的差集運(yùn)算。
A.是B.否
34.在類定義的外部沒有任何辦法可以訪問對象的私有成員。
A.是B.否
35.在Python中可以使用for作為變量名。
A.是B.否
36.已知x=3,那么賦值語句x='abcedfg'是無法正常執(zhí)行的。A.是B.否
37.在多線程編程時,當(dāng)某子線程的daemon屬性為False時,主線程結(jié)束時會檢測該子線程是否結(jié)束,如果該子線程尚未運(yùn)行結(jié)束,則主線程會等待它完成后再退出。
A.是B.否
38.在定義函數(shù)時,某個參數(shù)名字前面帶有一個*符號表示可變長度參數(shù),可以接收任意多個普通實(shí)參并存放于一個元組之中。
A.是B.否
39.無法刪除集合中指定位置的元素,只能刪除特定值的元素。
A.是B.否
40.在Python中可以使用id作為變量名,但是不建議這樣做。
A.是B.否
三、填空題(10題)41.執(zhí)行語句x,y,z=map(str,range(3))之后,變量y的值為___________。
42.Python內(nèi)置函數(shù)_________可以返回列表、元組、字典、集合、字符串以及range對象中元素個數(shù)。
43.表達(dá)式'Helloworld'.lower()的值為_____________。
44.表達(dá)式3*2的值為___________。
45.已知x={1:1,2:2},那么執(zhí)行語句x[2]=4之后,len(x)的值為____________。
46.表達(dá)式abs(3+4j)的值為____________。
47.表達(dá)式int('123',16)的值為_________。
48.當(dāng)在字符串前加上小寫字母_____或大寫字母_____表示原始字符串,不對其中的任何字符進(jìn)行轉(zhuǎn)義。
49.語句x=(3)執(zhí)行后x的值為________________。
50.表達(dá)式'Helloworld.IlikePython.'.rfind('python')的值為________。
四、操作題(3題)51.考生文件夾下存在一個文件“PY202.py”,該文件是本題目的代碼提示框架,其中代碼可以任意修改,請在該文件中編寫代碼,以實(shí)現(xiàn)如下功能。輸出九九乘法表。按照乘法表的格式輸出九九乘法表,并將輸出的結(jié)果保存在考生文件夾下,命名為“PY202.txt”。試題程序:#以下代碼為提示框架#請在...處使用一行或多行代碼替換#注意:提示框架的代碼可以任意修改,以完成程序功能為準(zhǔn)fo=open("PY202.txt","w")fo.close()
52.考生文件夾下存在一個文件“PY202.py”,該文件是本題目的代碼提示框架,其中代碼可以任意修改。請在該文件中編寫代碼,以實(shí)現(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(_____,_____):
53.考生文件夾下存在一個文件“PY201.py”,請寫代碼替換橫線,不修改其他代碼,實(shí)現(xiàn)以下功能。使用turtle庫的turtle.right()函數(shù)和turtle.fd()函數(shù)繪制一個五角星,邊長為200像素,5個內(nèi)角度數(shù)為36度,效果如下所示。試題程序:#請在程序的_____處使用一行代碼或表達(dá)式替換#注意:請不要修改其他已給出代碼fromturtleimport*foriin_____(1)_____:fd(_____(2)_____)_____(3)_____
參考答案
1.B模塊獨(dú)立性是指每個模塊只完成系統(tǒng)要求的獨(dú)立的子功能,并且與其他模塊的聯(lián)系最少且接口簡單。一般較優(yōu)秀的軟件設(shè)計,應(yīng)盡量做到高內(nèi)聚、低耦合,即降低模塊之間的耦合性和提高模塊內(nèi)的內(nèi)聚性,有利于提高模塊的獨(dú)立性,所以A選項(xiàng)錯誤,B選項(xiàng)正確。耦合性是模塊間互相連接的緊密程度的度量而內(nèi)聚性是指一個模塊內(nèi)部各個元素間彼此結(jié)合的緊密程度,選項(xiàng)C、D錯誤。本題選擇B選項(xiàng)。
2.B扇入數(shù)是指調(diào)用一個給定模塊的模塊個數(shù)。扇出數(shù)是指由一個模塊直接調(diào)用的其他模塊數(shù),即一個模塊直接調(diào)用的下層模塊的數(shù)目。本題答案為B選項(xiàng)。
3.C面向?qū)ο蠓椒ㄖ械膶ο笥蓛刹糠纸M成:①數(shù)據(jù),也稱為屬性,即對象所包含的信息,表示對象的狀態(tài);②方法,也稱為操作,即對象所能執(zhí)行的功能、所能具有的行為。本題選C選項(xiàng)。
4.ABeautifulsoup4-用于解析和處理HTML和XML。它的最大優(yōu)點(diǎn)是能根據(jù)HTML和XML語法建立解析樹,進(jìn)而高效解析其中的內(nèi)容。
5.D外層for第一次循環(huán)將字符‘想’賦給變量m,m=‘想’,內(nèi)層for第一次循環(huán)將‘家’賦給變量n,m+n連接字符,利用列表的append()方法將連接后的字符‘想家’加入列表ls中;內(nèi)層for第二次循環(huán)將‘人’賦給變量n,m+n連接字符,利用列表的append()方法將連接后的字符‘想人’加入列表ls中。外層for第二次循環(huán)將字符‘念’賦給變量m,m=‘念’,內(nèi)層for第一次循環(huán)將‘家’賦給變量n,m+n連接字符,利用列表的append()方法將連接后的字符‘念家’加入列表ls中;內(nèi)層for第二次循環(huán)將‘人’賦給變量n,m+n連接字符,利用列表的append()方法將連接后的字符‘念人’加入列表ls中。最后列表ls=[‘想家’,‘想人’,‘念家’,‘念人’],print(ls)輸出ls。本題選擇D選項(xiàng)。
6.C元組與列表類似,可存儲不同類型的數(shù)據(jù);元組是不可改變的,創(chuàng)建后不能再做任何修改操作。
7.CPython在3種基本控制結(jié)構(gòu)(順序結(jié)構(gòu)、選擇結(jié)構(gòu)(分支結(jié)構(gòu))、循環(huán)結(jié)構(gòu))上進(jìn)行了適當(dāng)?shù)財U(kuò)展。在分支結(jié)構(gòu)原理的基礎(chǔ)上,Python增加了異常處理,使用try-except保留字。本題選擇C選項(xiàng)。
8.Atry-except語句用于檢測和處理異常。本題選擇A選項(xiàng)。
9.D__init__()方法是一個特殊的方法,每當(dāng)根據(jù)類創(chuàng)建新實(shí)例時,Python就會自動運(yùn)行該方法。該方法的開頭和結(jié)尾各有兩個下劃線,這是一種約定,旨在避免Python的默認(rèn)方法和普通方法發(fā)生命名沖突。self、name、age都是__init__()方法的形參,所以共3個。本題選擇D選項(xiàng)。
10.Df()函數(shù)中參數(shù)數(shù)量是固定的,A選項(xiàng)錯誤;傳入?yún)?shù)時并沒有指定形參a或b,B選項(xiàng)錯誤;函數(shù)并沒有自帶默認(rèn)參數(shù),且使用函數(shù)時傳入了兩個實(shí)參,C選項(xiàng)錯誤;該函數(shù)采用默認(rèn)的傳參方式,即位置參數(shù)傳參,D選項(xiàng)正確。本題選擇D選項(xiàng)。
11.B將實(shí)參7傳遞給函數(shù)形參變量n,之后進(jìn)入多分支結(jié)構(gòu),依次判斷后,執(zhí)行else后面的語句。for語句為:foriinrange(2,7),i從2依次變化到6,循環(huán)5次,將L[一1]+L[一2]的值通過append()方法加入到列表L中。\n當(dāng)i=2時,L[一1]+L[一2]=5+1=6,將6添加到列表L中,此時L=[1,5,6];\n當(dāng)i=3時,L[一1]+L[一2]=6+5=11,將11添加到列表L中,此時L=[1,5,6,11];\n當(dāng)i=4時,L[一1]+L[一2]=11+6=17,將17添加到列表L中,此時L=[1,5,6,11,17];\n當(dāng)i=5時,L[一1]+L[一2]=17+ll=28,將28添加到列表L中,此時L=[1,5,6,11,17,28];\n當(dāng)i=6時,L[一1]+L[一2]=28+17=45,將45添加到列表L中,此時L=[1,5,6,11,17,28,45]。\n最后L[一2]%L[一1]=28%45=28,故程序輸出28。本題選擇B選項(xiàng)。
12.D列表的下標(biāo)是從0開始的;元組的元素值可以刪除、連接,但不能被修改;字典中的“鍵”可以是整數(shù)或者字符串,但也可以是函數(shù)、元組、類等任意不可變類型。
13.DPython中合法的標(biāo)識符可以采用大寫字母、小寫字母、數(shù)字、下劃線和漢字等字符及其組合進(jìn)行命名,但首字母不能為數(shù)字。
14.Bls.remove(x)是刪除列表ls中出現(xiàn)的第一個x元素,而不是刪除列表ls中所有的x元素。本題選擇B選項(xiàng)。
15.Aturtle庫是Python的標(biāo)準(zhǔn)庫,用于基本圖形的繪制;jieba庫是Python的第三方中文分詞庫;SciPy是數(shù)據(jù)分析方向的第三方庫;Flask是Web開發(fā)方向的第三方庫。本題選擇A選項(xiàng)。
16.AB選項(xiàng)是定義全局變量的關(guān)鍵字,C選項(xiàng)是with...as用來代替?zhèn)鹘y(tǒng)的try...\nfinally語法,D選項(xiàng)的意思是程序什么都不做。本題選擇A選項(xiàng)。
17.Aturtle.fd(distance):向當(dāng)前畫筆方向移動distance距離,當(dāng)值為負(fù)數(shù)時,表示向相反方向前進(jìn);turtle.left(angle):向左旋轉(zhuǎn)angle角度;turtle.seth(to_angle):設(shè)置當(dāng)前前進(jìn)方向?yàn)閠o_angle,該角度是絕對方向角度。turtle庫中不存在open()函數(shù)。本題選擇A選項(xiàng)。
18.D列表的索引是從0開始的;元組的元素值可以連接,但不能被修改、刪除;字典中的“鍵”可以是整數(shù)或者字符串,但也可以是函數(shù)、元組、類等任意不可變類型。本題選擇D選項(xiàng)。
19.Arandom庫是Python的標(biāo)準(zhǔn)庫,用于產(chǎn)生各種分布的偽隨機(jī)數(shù)序列。它采用梅森旋轉(zhuǎn)算法生成偽隨機(jī)數(shù)序列。本題選擇A選項(xiàng)。
20.D在Python中,想要在列表中的任意位置插入元素,一般使用insert()方法。insert()方法有兩個參數(shù):第一個參數(shù)代表在列表中的位置,第二個參數(shù)是在這個位置處插入的元素。注意:插人時,是插入該位置之前。列表下標(biāo)從0開始,S\n=[4,2,9,1],s[3]=1,則執(zhí)行s.insert(3,3)后,S=[4,2,9,3,1],最后print(s),本題選擇D選項(xiàng)。
21.A軟件測試的目的是為了發(fā)現(xiàn)錯誤而執(zhí)行程序的過程,并不涉及改正錯誤,所以選項(xiàng)A錯誤。程序調(diào)試的基本步驟有:錯誤定位、修改設(shè)計和代碼,以排除錯誤、進(jìn)行回歸測試,防止引進(jìn)新的錯誤。程序調(diào)試通常稱為Debug,即排錯。軟件測試的基本準(zhǔn)則有:所有測試都應(yīng)追溯到需求、嚴(yán)格執(zhí)行測試計劃,排除測試的隨意性、充分注意測試中的群集現(xiàn)象、程序員應(yīng)避免檢查自己的程序、窮舉測試不可能、妥善保存測試計劃等文件。故答案為A選項(xiàng)。
22.D棧稱為“后進(jìn)先出”表或“先進(jìn)后出”的線性表;隊(duì)列稱為“先進(jìn)先出”或“后進(jìn)后出”的線性表。F,G,H,I,J依次人隊(duì),則依次出隊(duì)順序?yàn)镕,G,H,I,J;A,B,c,D,E依次人棧,則依次出棧順序?yàn)镋,D,C,B,A。故輸出順序?yàn)镕,G,H,I,J,E,D,c,B,A。本題選D選項(xiàng)。
23.D先計算冪,3**2=9,9*4=36,36//6=6,6%7=6。//是整除運(yùn)算,%是求余運(yùn)算。本題選D選項(xiàng)。
24.A在Python中,有特殊含義的符號:+、-、*、/、%、**、//、==、!=、<>、>、<、>=、<=、=、+=、-=、*=、/=、%=、**=、//=、&、|、^、~、<<、>>、&=、|=、^=、~=。本題選擇A選項(xiàng)。
25.C
26.C因?yàn)橐粋€人可以操作多個計算機(jī),而一臺計算機(jī)又可以被多個人使用,所以兩個實(shí)體之間是多對多的關(guān)系。本題選擇C選項(xiàng)。
27.BPython總共有35個關(guān)鍵字,分別是\nand、as、assert、async、await、break、class、continue、def、del、elif、else\n、except、False、finally、for、from、global、if、import、in、is、lambda、None、nonlocal、not、or、pass、raise、re-turn、Tme、try、while、with、yield。本題選擇\nB選項(xiàng)。
28.CCSV文件采用純文本格式,通過單一編碼表示字符。以行為單位,開頭不留空行,行之間沒有空行。每行表示一個一維數(shù)據(jù),多行表示多維數(shù)據(jù)。以逗號分隔每列數(shù)據(jù),列數(shù)據(jù)為空也要保留逗號。本題選擇C選項(xiàng)。
29.A黑盒測試又稱功能測試或數(shù)據(jù)驅(qū)動測試,著重測試軟件功能,是把程序看成一只黑盒子,測試者完全不了解,或不考慮程序的結(jié)構(gòu)和處理過程。它根據(jù)規(guī)格說明書的功能來設(shè)計測試用例,檢查程序的功能是否符合規(guī)格說明的要求。\n白盒測試是把程序看成裝在一只透明的白盒子里,測試者完全了解程序的結(jié)構(gòu)和處理過程。它根據(jù)程序的內(nèi)部邏輯來設(shè)計測試用例,檢查程序中的邏輯通路是否都按預(yù)定的要求正確地工作。
30.A在Python中,字典是存儲可變數(shù)量鍵值對的數(shù)據(jù)結(jié)構(gòu),通過字典類型實(shí)現(xiàn)映射。字典使用花括號({})建立,每個元素是一個鍵值對,使用方式為{<鍵1>:<值1>,<鍵2>:<值2>,…,<鍵n>:<值n>},其中,鍵和值通過冒號連接,不同鍵值對通過逗號隔開。字典具有和集合類似的性質(zhì),即鍵值對之間沒有順序且不能重復(fù)。通過鍵可以索引值,并可以通過鍵修改值,因此可以直接利用鍵值對關(guān)系索引元素。索引模式:<值>=<字典變量>[<鍵>]。本題選擇A選項(xiàng)。
31.Y
32.N
33.Y
34.N
35.N
36.N
37.Y
38.Y
39.Y
40.Y
41.'1'
42.len()
43.'helloworld'
44.6
45.2
46.5.0
47.291
48.r、R
49.3
50.-1
51.fo=open("PY202.txt","w")Foriinrange(1,10):Forjinrange(1,i+1):Fowrite(“{}={}={}”.format(j,i,i*j))Fo.write(“\\n”)fo.close()輸出《九九乘法表》,首先要先查看乘法表的規(guī)律,乘法表豎向是1-9,橫向的每行是從1到每行的行號,所以可以使用兩個for循環(huán)遍歷輸出。格式可以使用format()方法控制,最后把輸出的《九九乘法表》存入文件\r\nPY202.txt中。
52.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\n+l,upper)返回的每個整數(shù)num,判斷該數(shù)是否為素數(shù)。如果num大于1(1既不是素數(shù)也不是合數(shù)),且該數(shù)能被取值范圍為[2,num-1\n]的任何一個整數(shù)整除,那么該數(shù)一定不是素數(shù),否則一定是素數(shù)。
53.fromturtleimport*foriinrange(5):fd(200)right(144)該題考查的是Python標(biāo)準(zhǔn)庫——turtle庫,繪制五角星。因?yàn)槔L制5條邊,所以循環(huán)執(zhí)行5次,故第1空填range(5)。因?yàn)槲褰切沁呴L為200像素,所以第2空填200。最后由于本題要求使用right()函數(shù),且五角星的內(nèi)角為36度,因此第3空填right(\r\n144)。遼寧省撫順市全國計算機(jī)等級考試Python語言程序設(shè)計學(xué)校:________班級:________姓名:________考號:________
一、單選題(30題)1.耦合性和內(nèi)聚性是對模塊獨(dú)立性度量的兩個標(biāo)準(zhǔn),下列敘述中正確的是()。
A.提高耦合性降低內(nèi)聚性有利于提高模塊的獨(dú)立性
B.降低耦合性提高內(nèi)聚性有利于提高模塊的獨(dú)立性
C.耦合性是指一個模塊內(nèi)部各個元素間彼此結(jié)合的緊密程度
D.內(nèi)聚性是指模塊間互相連接的緊密程度
2.一個模塊直接調(diào)用的下層模塊的數(shù)目稱為模塊的()。
A.扇入數(shù)B.扇出數(shù)C.寬度D.作用域
3.下面屬于“對象”成份之一的是()。
A.封裝B.規(guī)則C.屬性D.繼承
4.第三方庫Beauifulsoup4的功能是()。
A.解析和處理HTML和XMLB.支持web應(yīng)用程序框架C.支持webservices框架D.處理http請求
5.以下程序的輸出結(jié)果是()。ls=[]formin‘想念’:fornin‘家人’:ls.append(m+n)print(ls)A.想念家人B.想想念念家家人人C.想家想人念家念人D.[‘想家’,‘想人’,‘念家’,‘念人’]
6.關(guān)于Python元組類型,以下選項(xiàng)中描述錯誤的是()。
A.元組不可以被修改
B.Python中元組使用圓括號和逗號表示
C.元組中的元素要求是相同類型
D.一個元組可以作為另一個元祖的元素,可以采用多級索引獲取信息
7.以下描述中,不屬于Python控制結(jié)構(gòu)的是()。
A.分支結(jié)構(gòu)B.程序異常C.跳轉(zhuǎn)結(jié)構(gòu)D.順序結(jié)構(gòu)
8.當(dāng)試圖訪問的對象屬性不存在時,為了不讓程序拋出異常,需要用到的語句是()。
A.try-except語句B.for語句C.eval語句D.if語句
9.以下程序Dog類中的__init__()方法共包含幾個形參()。ClassDog(): def__init__(self,name,age) =name self.age=age
A.0個B.1個C.2個D.3個
10.以下程序中描述的是哪一種傳入?yún)?shù)的方法()。deff(a,b): ifa>b: print(“1”) elifa==b: pritn(“2”) else: print(“3”)f(2,3)
A.可變參數(shù)B.關(guān)鍵字參數(shù)C.默認(rèn)參數(shù)D.位置參數(shù)
11.以下代碼的輸出結(jié)果是()。deffibRate(n):ifn<=0:return—1elifn==1:retum—1elifn==2:return1else:L=[1,5]foriinrange(2,n):L.a(chǎn)ppend(L[一1]+L[一2])returnL[一2]%L[一1]print(fibRate(7))
A.0.6B.28C.一1D.1
12.下列關(guān)于Python的描述正確的是()。
A.列表的下標(biāo)是從1開始的
B.元組的元素值可以修改、刪除、連接
C.字典中的“鍵”只能是整數(shù)、字符串
D.集合分為可變集合和不可變集合,可變集合的元素可以添加、刪除
13.下列不屬于Python合法的標(biāo)識符的是()。
A.use_timeB.int32C._selfnameD.180x1
14.以下關(guān)于列表變量ls操作的描述中,錯誤的是()。
A.ls.copy():生成一個新列表,復(fù)制ls的所有元素
B.ls.removed):刪除ls中所有的x元素
C.ls.append(x):在ls最后增加一個元素
D.ls.reverse():反轉(zhuǎn)列表ls中所有元素
15.下面屬于Python的標(biāo)準(zhǔn)庫的是()。
A.turtleB.jiebaC.SciPyD.Flask
16.Python中匿名函數(shù)的關(guān)鍵字是()。
A.lambdaB.globalC.withD.pass
17.以下選項(xiàng)不能改變turtle繪制方向的是()。
A.turtle.open()B.turtle.left()C.turtle.fd()D.turtle.seth()
18.下列關(guān)于Python的描述,正確的是()。
A.列表的索引是從1開始的
B.元組的元素值可以修改、刪除、連接
C.字典中的“鍵”只能是整數(shù)、字符串
D.集合分為可變集合和不可變集合,可變集合的元素可以添加、刪除
19.random庫采用更多的偽隨機(jī)數(shù)序列生成算法是()。
A.梅森旋轉(zhuǎn)算法B.蒙特卡洛方法C.線性同余法D.平方取中法
20.以下代碼的輸出結(jié)果是()。s=[4,2,9,1]s.insert(3,3)print(s)
A.[4,2,9,l,2,3]B.[4,3,2,9,l]C.[4,2,9,2,l]D.[4,2,9,3,l]
21.下面敘述中錯誤的是()。
A.軟件測試的目的是發(fā)現(xiàn)錯誤并改正錯誤
B.對被調(diào)試的程序進(jìn)行“錯誤定位”是程序調(diào)試的必要步驟
C.程序調(diào)試通常也稱為Debug
D.軟件測試應(yīng)嚴(yán)格執(zhí)行測試計劃,排除測試的隨意性
22.設(shè)棧與隊(duì)列初始狀態(tài)為空。首先A,B,C,D,E依次入棧,再F,G,H,I,J依次入隊(duì);然后依次出隊(duì)至隊(duì)空,再依次出棧至??铡t輸出序列為()。
A.E,D,C,B,A,F(xiàn),G,H,I,j
B.E,D,C,B,A,J,I,H,G,F(xiàn)
C.F,G,H,I,J,A,B,C,D,E,
D.F,G,H,I,J,E,D,C,B,A
23.表達(dá)式3**2*4//6%7的計算結(jié)果是()。
A.3B.5C.4D.6
24.以下不是Python所使用特殊含義符號的是()。
A.$B.**C.&D.+=
25.可以用于測試一個對象是否是一個可迭代對象()
A.inB.typeC.forD.while
26.—個工作人員可以使用多臺計算機(jī),而一臺計算機(jī)可被多個人使用,則實(shí)體工作人員與實(shí)體計算機(jī)之間的聯(lián)系是()。
A.—對一B.—對多C.多對多D.多對一
27.以下不屬于Python保留字的是()。
A.passB.useC.withD.None
28.下面關(guān)于CSV文件描述錯誤的是()。
A.CSV文件格式是一種通用的文件格式,應(yīng)用于程序之間轉(zhuǎn)移表格數(shù)據(jù)
B.CSV文件的每一行是一維數(shù)據(jù),可以使用Python中的列表類型表示
C.CSV文件通過多種編碼表示字符
D.整個CSV文件是一個二維數(shù)據(jù)
29.黑盒測試技術(shù)依據(jù)的是()。
A.軟件功能的描述B.程序的邏輯結(jié)構(gòu)C.程序的物理結(jié)構(gòu)D.軟件行為的描述
30.以下關(guān)于Python字典的描述中,錯誤的是()。
A.在Python中,用字典來實(shí)現(xiàn)映射,通過整數(shù)索引來查找其中的元素
B.在定義字典對象時,鍵和值用冒號連接
C.字典中的鍵值對之間沒有順序并且不能重復(fù)
D.字典中引用與特定鍵對應(yīng)的值,用字典名稱和方括號中包含鍵名的格式
二、判斷題(10題)31.在Python中0xad是合法的十六進(jìn)制數(shù)字表示形式。
A.是B.否
32.假設(shè)re模塊已成功導(dǎo)入,并且有pattern=pile('^'+'\.'.join([r'\d{1,3}'foriinrange(4)])+'$'),那么表達(dá)式pattern.match('03')的值為None。
A.是B.否
33.運(yùn)算符“-”可以用于集合的差集運(yùn)算。
A.是B.否
34.在類定義的外部沒有任何辦法可以訪問對象的私有成員。
A.是B.否
35.在Python中可以使用for作為變量名。
A.是B.否
36.已知x=3,那么賦值語句x='abcedfg'是無法正常執(zhí)行的。A.是B.否
37.在多線程編程時,當(dāng)某子線程的daemon屬性為False時,主線程結(jié)束時會檢測該子線程是否結(jié)束,如果該子線程尚未運(yùn)行結(jié)束,則主線程會等待它完成后再退出。
A.是B.否
38.在定義函數(shù)時,某個參數(shù)名字前面帶有一個*符號表示可變長度參數(shù),可以接收任意多個普通實(shí)參并存放于一個元組之中。
A.是B.否
39.無法刪除集合中指定位置的元素,只能刪除特定值的元素。
A.是B.否
40.在Python中可以使用id作為變量名,但是不建議這樣做。
A.是B.否
三、填空題(10題)41.執(zhí)行語句x,y,z=map(str,range(3))之后,變量y的值為___________。
42.Python內(nèi)置函數(shù)_________可以返回列表、元組、字典、集合、字符串以及range對象中元素個數(shù)。
43.表達(dá)式'Helloworld'.lower()的值為_____________。
44.表達(dá)式3*2的值為___________。
45.已知x={1:1,2:2},那么執(zhí)行語句x[2]=4之后,len(x)的值為____________。
46.表達(dá)式abs(3+4j)的值為____________。
47.表達(dá)式int('123',16)的值為_________。
48.當(dāng)在字符串前加上小寫字母_____或大寫字母_____表示原始字符串,不對其中的任何字符進(jìn)行轉(zhuǎn)義。
49.語句x=(3)執(zhí)行后x的值為________________。
50.表達(dá)式'Helloworld.IlikePython.'.rfind('python')的值為________。
四、操作題(3題)51.考生文件夾下存在一個文件“PY202.py”,該文件是本題目的代碼提示框架,其中代碼可以任意修改,請在該文件中編寫代碼,以實(shí)現(xiàn)如下功能。輸出九九乘法表。按照乘法表的格式輸出九九乘法表,并將輸出的結(jié)果保存在考生文件夾下,命名為“PY202.txt”。試題程序:#以下代碼為提示框架#請在...處使用一行或多行代碼替換#注意:提示框架的代碼可以任意修改,以完成程序功能為準(zhǔn)fo=open("PY202.txt","w")fo.close()
52.考生文件夾下存在一個文件“PY202.py”,該文件是本題目的代碼提示框架,其中代碼可以任意修改。請在該文件中編寫代碼,以實(shí)現(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(_____,_____):
53.考生文件夾下存在一個文件“PY201.py”,請寫代碼替換橫線,不修改其他代碼,實(shí)現(xiàn)以下功能。使用turtle庫的turtle.right()函數(shù)和turtle.fd()函數(shù)繪制一個五角星,邊長為200像素,5個內(nèi)角度數(shù)為36度,效果如下所示。試題程序:#請在程序的_____處使用一行代碼或表達(dá)式替換#注意:請不要修改其他已給出代碼fromturtleimport*foriin_____(1)_____:fd(_____(2)_____)_____(3)_____
參考答案
1.B模塊獨(dú)立性是指每個模塊只完成系統(tǒng)要求的獨(dú)立的子功能,并且與其他模塊的聯(lián)系最少且接口簡單。一般較優(yōu)秀的軟件設(shè)計,應(yīng)盡量做到高內(nèi)聚、低耦合,即降低模塊之間的耦合性和提高模塊內(nèi)的內(nèi)聚性,有利于提高模塊的獨(dú)立性,所以A選項(xiàng)錯誤,B選項(xiàng)正確。耦合性是模塊間互相連接的緊密程度的度量而內(nèi)聚性是指一個模塊內(nèi)部各個元素間彼此結(jié)合的緊密程度,選項(xiàng)C、D錯誤。本題選擇B選項(xiàng)。
2.B扇入數(shù)是指調(diào)用一個給定模塊的模塊個數(shù)。扇出數(shù)是指由一個模塊直接調(diào)用的其他模塊數(shù),即一個模塊直接調(diào)用的下層模塊的數(shù)目。本題答案為B選項(xiàng)。
3.C面向?qū)ο蠓椒ㄖ械膶ο笥蓛刹糠纸M成:①數(shù)據(jù),也稱為屬性,即對象所包含的信息,表示對象的狀態(tài);②方法,也稱為操作,即對象所能執(zhí)行的功能、所能具有的行為。本題選C選項(xiàng)。
4.ABeautifulsoup4-用于解析和處理HTML和XML。它的最大優(yōu)點(diǎn)是能根據(jù)HTML和XML語法建立解析樹,進(jìn)而高效解析其中的內(nèi)容。
5.D外層for第一次循環(huán)將字符‘想’賦給變量m,m=‘想’,內(nèi)層for第一次循環(huán)將‘家’賦給變量n,m+n連接字符,利用列表的append()方法將連接后的字符‘想家’加入列表ls中;內(nèi)層for第二次循環(huán)將‘人’賦給變量n,m+n連接字符,利用列表的append()方法將連接后的字符‘想人’加入列表ls中。外層for第二次循環(huán)將字符‘念’賦給變量m,m=‘念’,內(nèi)層for第一次循環(huán)將‘家’賦給變量n,m+n連接字符,利用列表的append()方法將連接后的字符‘念家’加入列表ls中;內(nèi)層for第二次循環(huán)將‘人’賦給變量n,m+n連接字符,利用列表的append()方法將連接后的字符‘念人’加入列表ls中。最后列表ls=[‘想家’,‘想人’,‘念家’,‘念人’],print(ls)輸出ls。本題選擇D選項(xiàng)。
6.C元組與列表類似,可存儲不同類型的數(shù)據(jù);元組是不可改變的,創(chuàng)建后不能再做任何修改操作。
7.CPython在3種基本控制結(jié)構(gòu)(順序結(jié)構(gòu)、選擇結(jié)構(gòu)(分支結(jié)構(gòu))、循環(huán)結(jié)構(gòu))上進(jìn)行了適當(dāng)?shù)財U(kuò)展。在分支結(jié)構(gòu)原理的基礎(chǔ)上,Python增加了異常處理,使用try-except保留字。本題選擇C選項(xiàng)。
8.Atry-except語句用于檢測和處理異常。本題選擇A選項(xiàng)。
9.D__init__()方法是一個特殊的方法,每當(dāng)根據(jù)類創(chuàng)建新實(shí)例時,Python就會自動運(yùn)行該方法。該方法的開頭和結(jié)尾各有兩個下劃線,這是一種約定,旨在避免Python的默認(rèn)方法和普通方法發(fā)生命名沖突。self、name、age都是__init__()方法的形參,所以共3個。本題選擇D選項(xiàng)。
10.Df()函數(shù)中參數(shù)數(shù)量是固定的,A選項(xiàng)錯誤;傳入?yún)?shù)時并沒有指定形參a或b,B選項(xiàng)錯誤;函數(shù)并沒有自帶默認(rèn)參數(shù),且使用函數(shù)時傳入了兩個實(shí)參,C選項(xiàng)錯誤;該函數(shù)采用默認(rèn)的傳參方式,即位置參數(shù)傳參,D選項(xiàng)正確。本題選擇D選項(xiàng)。
11.B將實(shí)參7傳遞給函數(shù)形參變量n,之后進(jìn)入多分支結(jié)構(gòu),依次判斷后,執(zhí)行else后面的語句。for語句為:foriinrange(2,7),i從2依次變化到6,循環(huán)5次,將L[一1]+L[一2]的值通過append()方法加入到列表L中。\n當(dāng)i=2時,L[一1]+L[一2]=5+1=6,將6添加到列表L中,此時L=[1,5,6];\n當(dāng)i=3時,L[一1]+L[一2]=6+5=11,將11添加到列表L中,此時L=[1,5,6,11];\n當(dāng)i=4時,L[一1]+L[一2]=11+6=17,將17添加到列表L中,此時L=[1,5,6,11,17];\n當(dāng)i=5時,L[一1]+L[一2]=17+ll=28,將28添加到列表L中,此時L=[1,5,6,11,17,28];\n當(dāng)i=6時,L[一1]+L[一2]=28+17=45,將45添加到列表L中,此時L=[1,5,6,11,17,28,45]。\n最后L[一2]%L[一1]=28%45=28,故程序輸出28。本題選擇B選項(xiàng)。
12.D列表的下標(biāo)是從0開始的;元組的元素值可以刪除、連接,但不能被修改;字典中的“鍵”可以是整數(shù)或者字符串,但也可以是函數(shù)、元組、類等任意不可變類型。
13.DPython中合法的標(biāo)識符可以采用大寫字母、小寫字母、數(shù)字、下劃線和漢字等字符及其組合進(jìn)行命名,但首字母不能為數(shù)字。
14.Bls.remove(x)是刪除列表ls中出現(xiàn)的第一個x元素,而不是刪除列表ls中所有的x元素。本題選擇B選項(xiàng)。
15.Aturtle庫是Python的標(biāo)準(zhǔn)庫,用于基本圖形的繪制;jieba庫是Python的第三方中文分詞庫;SciPy是數(shù)據(jù)分析方向的第三方庫;Flask是Web開發(fā)方向的第三方庫。本題選擇A選項(xiàng)。
16.AB選項(xiàng)是定義全局變量的關(guān)鍵字,C選項(xiàng)是with...as用來代替?zhèn)鹘y(tǒng)的try...\nfinally語法,D選項(xiàng)的意思是程序什么都不做。本題選擇A選項(xiàng)。
17.Aturtle.fd(distance):向當(dāng)前畫筆方向移動distance距離,當(dāng)值為負(fù)數(shù)時,表示向相反方向前進(jìn);turtle.left(angle):向左旋轉(zhuǎn)angle角度;turtle.seth(to_angle):設(shè)置當(dāng)前前進(jìn)方向?yàn)閠o_angle,該角度是絕對方向角度。turtle庫中不存在open()函數(shù)。本題選擇A選項(xiàng)。
18.D列表的索引是從0開始的;元組的元素值可以連接,但不能被修改、刪除;字典中的“鍵”可以是整數(shù)或者字符串,但也可以是函數(shù)、元組、類等任意不可變類型。本題選擇D選項(xiàng)。
19.Arandom庫是Python的標(biāo)準(zhǔn)庫,用于產(chǎn)生各種分布的偽隨機(jī)數(shù)序列。它采用梅森旋轉(zhuǎn)算法生成偽隨機(jī)數(shù)序列。本題選擇A選項(xiàng)。
20.D在Python中,想要在列表中的任意位置插入元素,一般使用insert()方法。insert()方法有兩個參數(shù):第一個參數(shù)代表在列表中的位置,第二個參數(shù)是在這個位置處插入的元素。注意:插人時,是插入該位置之前。列表下標(biāo)從0開始,S\n=[4,2,9,1],s[3]=1,則執(zhí)行s.insert(3,3)后,S=[4,2,9,3,1],最后print(s),本題選擇D選項(xiàng)。
21.A軟件測試的目的是為了發(fā)現(xiàn)錯誤而執(zhí)行程序的過程,并不涉及改正錯誤,所以選項(xiàng)A錯誤。程序調(diào)試的基本步驟有:錯誤定位、修改設(shè)計和代碼,以排除錯誤、進(jìn)行回歸測試,防止引進(jìn)新的錯誤。程序調(diào)試通常稱為Debug,即排錯。軟件測試的基本準(zhǔn)則有:所有測試都應(yīng)追溯到需求、嚴(yán)格執(zhí)行測試計劃,排除測試的隨意性、充分注意測試中的群集現(xiàn)象、程序員應(yīng)避免檢查自己的程序、窮舉測試不可能、妥善保存測試計劃等文件。故答案為A選項(xiàng)。
22.D棧稱為“后進(jìn)先出”表或“先進(jìn)后出”的線性表;隊(duì)列稱為“先進(jìn)先出”或“后進(jìn)后出”的線性表。F,G,H,I,J依次人隊(duì),則依次出隊(duì)順序?yàn)镕,G,H,I,J;A,B,c,D,E依次人棧,則依次出棧順序?yàn)镋,D,C,B,A。故輸出順序?yàn)镕,G,H,I,J,E,D,c,B,A。本題選D選項(xiàng)。
23.D先計算冪,3**2=9,9*4=36,36//6=6,6%7=6。//是整除運(yùn)算,%是求余運(yùn)算。本題選D選項(xiàng)。
24.A在Python中,有特殊含義的符號:+、-、*、/、%、**、//、==、!=、<>、>、<、>=、<=、=、+=、-=、*=、/=、%=、**=、//=、&、|、^、~、<<、>>、&=、|=、^=、~=。本題選擇A選項(xiàng)。
25.C
26.C因?yàn)橐粋€人可以操作多個計算機(jī),而一臺計算機(jī)又可以被多個人使用,所以兩個實(shí)體之間是多對多的關(guān)系。本題選擇C選項(xiàng)。
27.BPython總共有35個關(guān)鍵字,分別是\nand、as、assert、async、await、break、class、continue、def、del、elif、else\n、except、False、finally、for、from、global、if、import、in、is、lambda、None、nonlocal、not、or、pass、raise、re-turn、Tme、try、while、with、yield。本題選擇\nB選項(xiàng)。
28.CCSV文件采用純文本格式,通過單一編碼表示字符。以行為單位,開頭不留空行,行之間沒有空行。每行表示一個一維數(shù)據(jù),多行表示多維數(shù)據(jù)。以逗號分隔每列數(shù)據(jù),列數(shù)據(jù)為空也要保留逗號。本題選擇C選項(xiàng)。
29.A黑盒測試又稱功能測試或數(shù)據(jù)驅(qū)動測試,著重測試軟件功能,是把程序看成一只黑盒子,測試者完全不了解,或不考慮程序的結(jié)構(gòu)和處理過程。它根據(jù)規(guī)格說明書的功能來設(shè)計測試用例,檢查程序的功能是否符合規(guī)格說明的要求。\n白盒測試是把程序看成裝在一只透明的白盒子里,測試者完全了解程序的結(jié)構(gòu)和處理過程。它根據(jù)程序的內(nèi)部邏輯來設(shè)計測試用例,檢查程序中的邏輯通路是否都按預(yù)定的要求正確地工作。
30.A在Python中,字典是存儲可變數(shù)量鍵值對的數(shù)據(jù)結(jié)構(gòu),通過字典類型實(shí)現(xiàn)映射。字典使用花括號({})建立,每個元素是一個鍵值對,使用方式為{<鍵1>:<值1>,<鍵2>:<值2>,…,<鍵n>:<值n>},其中,鍵和值通過冒號連接,不同鍵值對通過逗號隔開。字典具有和集合類似的性質(zhì),即鍵值對之間沒有順序且不能重復(fù)。通過鍵可以索引值,并可以通過鍵修改值,因此可以直接利用鍵值對關(guān)系索引元素。索引模式:<值>=<字典變量>[<鍵>]。本題選擇A選項(xiàng)。
31.Y
32.N
33.Y
34.N
35.N
36.N
37.Y
38.Y
39.Y
40.Y
41.'1'
42.len()
43.'helloworld'
44.6
45.2
46.5.0
47.291
48.r、R
49.3
50.-1
51.fo=open("PY202.txt","w")Foriinrange(1,10):Forjinrange(1,i+1):Fowrite(“{}={}={}”.format(j,i,i*j))Fo.write(“\\n”)fo.close()輸出《九九乘法表》,首先要先查看乘法表的規(guī)律,乘法表豎向是1-9,橫向的每行是從1到每行的行號,所以可以使用兩個for循環(huán)遍歷輸出。格式可以使用format()方法控制,最后把輸出的《九九乘法表》存入文件\r\nPY202.txt中。
52.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\n+l,upper)返回的每個整數(shù)num,判斷該數(shù)是否為素數(shù)。如果num大于1(1既不是素數(shù)也不是合數(shù)),且該數(shù)能被取值范圍為[2,num-1\n]的任何一個整數(shù)整除,那么該數(shù)一定不是素數(shù),否則一定是素數(shù)。
53.fromturtleimport*foriinrange(5):fd(200)right(144)該題考查的是Python標(biāo)準(zhǔn)庫——turtle庫,繪制五角星。因?yàn)槔L制5條邊,所以循環(huán)執(zhí)行5次,故第1空填range(5)。因?yàn)槲褰切沁呴L為200像素,所以第2空填200。最后由于本題要求使用right()函數(shù),且五角星的內(nèi)角為36度,因此第3空填right(\r\n144)。遼寧省撫順市全國計算機(jī)等級考試Python語言程序設(shè)計學(xué)校:________班級:________姓名:________考號:________
一、單選題(30題)1.耦合性和內(nèi)聚性是對模塊獨(dú)立性度量的兩個標(biāo)準(zhǔn),下列敘述中正確的是()。
A.提高耦合性降低內(nèi)聚性有利于提高模塊的獨(dú)立性
B.降低耦合性提高內(nèi)聚性有利于提高模塊的獨(dú)立性
C.耦合性是指一個模塊內(nèi)部各個元素間彼此結(jié)合的緊密程度
D.內(nèi)聚性是指模塊間互相連接的緊密程度
2.一個模塊直接調(diào)用的下層模塊的數(shù)目稱為模塊的()。
A.扇入數(shù)B.扇出數(shù)C.寬度D.作用域
3.下面屬于“對象”成份之一的是()。
A.封裝B.規(guī)則C.屬性D.繼承
4.第三方庫Beauifulsoup4的功能是()。
A.解析和處理HTML和XMLB.支持web應(yīng)用程序框架C.支持webservices框架D.處理http請求
5.以下程序的輸出結(jié)果是()。ls=[]formin‘想念’:fornin‘家人’:ls.append(m+n)print(ls)A.想念家人B.想想念念家家人人C.想家想人念家念人D.[‘想家’,‘想人’,‘念家’,‘念人’]
6.關(guān)于Python元組類型,以下選項(xiàng)中描述錯誤的是()。
A.元組不可以被修改
B.Python中元組使用圓括號和逗號表示
C.元組中的元素要求是相同類型
D.一個元組可以作為另一個元祖的元素,可以采用多級索引獲取信息
7.以下描述中,不屬于Python控制結(jié)構(gòu)的是()。
A.分支結(jié)構(gòu)B.程序異常C.跳轉(zhuǎn)結(jié)構(gòu)D.順序結(jié)構(gòu)
8.當(dāng)試圖訪問的對象屬性不存在時,為了不讓程序拋出異常,需要用到的語句是()。
A.try-except語句B.for語句C.eval語句D.if語句
9.以下程序Dog類中的__init__()方法共包含幾個形參()。ClassDog(): def__init__(self,name,age) =name self.age=age
A.0個B.1個C.2個D.3個
10.以下程序中描述的是哪一種傳入?yún)?shù)的方法()。deff(a,b): ifa>b: print(“1”) elifa==b: pritn(“2”) else: print(“3”)f(2,3)
A.可變參數(shù)B.關(guān)鍵字參數(shù)C.默認(rèn)參數(shù)D.位置參數(shù)
11.以下代碼的輸出結(jié)果是()。deffibRate(n):ifn<=0:return—1elifn==1:retum—1elifn==2:return1else:L=[1,5]foriinrange(2,n):L.a(chǎn)ppend(L[一1]+L[一2])returnL[一2]%L[一1]print(fibRate(7))
A.0.6B.28C.一1D.1
12.下列關(guān)于Python的描述正確的是()。
A.列表的下標(biāo)是從1開始的
B.元組的元素值可以修改、刪除、連接
C.字典中的“鍵”只能是整數(shù)、字符串
D.集合分為可變集合和不可變集合,可變集合的元素可以添加、刪除
13.下列不屬于Python合法的標(biāo)識符的是()。
A.use_timeB.int32C._selfnameD.180x1
14.以下關(guān)于列表變量ls操作的描述中,錯誤的是()。
A.ls.copy():生成一個新列表,復(fù)制ls的所有元素
B.ls.removed):刪除ls中所有的x元素
C.ls.append(x):在ls最后增加一個元素
D.ls.reverse():反轉(zhuǎn)列表ls中所有元素
15.下面屬于Python的標(biāo)準(zhǔn)庫的是()。
A.turtleB.jiebaC.SciPyD.Flask
16.Python中匿名函數(shù)的關(guān)鍵字是()。
A.lambdaB.globalC.withD.pass
17.以下選項(xiàng)不能改變turtle繪制方向的是()。
A.turtle.open()B.turtle.left()C.turtle.fd()D.turtle.seth()
18.下列關(guān)于Python的描述,正確的是()。
A.列表的索引是從1開始的
B.元組的元素值可以修改、刪除、連接
C.字典中的“鍵”只能是整數(shù)、字符串
D.集合分為可變集合和不可變集合,可變集合的元素可以添加、刪除
19.random庫采用更多的偽隨機(jī)數(shù)序列生成算法是()。
A.梅森旋轉(zhuǎn)算法B.蒙特卡洛方法C.線性同余法D.平方取中法
20.以下代碼的輸出結(jié)果是()。s=[4,2,9,1]s.insert(3,3)print(s)
A.[4,2,9,l,2,3]B.[4,3,2,9,l]C.[4,2,9,2,l]D.[4,2,9,3,l]
21.下面敘述中錯誤的是()。
A.軟件測試的目的是發(fā)現(xiàn)錯誤并改正錯誤
B.對被調(diào)試的程序進(jìn)行“錯誤定位”是程序調(diào)試的必要步驟
C.程序調(diào)試通常也稱為Debug
D.軟件測試應(yīng)嚴(yán)格執(zhí)行測試計劃,排除測試的隨意性
22.設(shè)棧與隊(duì)列初始狀態(tài)為空。首先A,B,C,D,E依次入棧,再F,G,H,I,J依次入隊(duì);然后依次出隊(duì)至隊(duì)空,再依次出棧至???。則輸出序列為()。
A.E,D,C,B,A,F(xiàn),G,H,I,j
B.E,D,C,B,A,J,I,H,G,F(xiàn)
C.F,G,H,I,J,A,B,C,D,E,
D.F,G,H,I,J,E,D,C,B,A
23.表達(dá)式3**2*4//6%7的計算結(jié)果是()。
A.3B.5C.4D.6
24.以下不是Python所使用特殊含義符號的是()。
A.$B.**C.&D.+=
25.可以用于測試一個對象是否是一個可迭代對象()
A.inB.typeC.forD.while
26.—個工作人員可以使用多臺計算機(jī),而一臺計算機(jī)可被多個人使用,則實(shí)體工作人員與實(shí)體計算機(jī)之間的聯(lián)系是()。
A.—對一B.—對多C.多對多D.多對一
27.以下不屬于Python保留字的是()。
A.passB.useC.withD.None
28.下面關(guān)于CSV文件描述錯誤的是()。
A.CSV文件格式是一種通用的文件格式,應(yīng)用于程序之間轉(zhuǎn)移表格數(shù)據(jù)
B.CSV文件的每一行是一維數(shù)據(jù),可以使用Python中的列表類型表示
C.CSV文件通過多種編碼表示字符
D.整個CSV文件是一個二維數(shù)據(jù)
29.黑盒測試技術(shù)依據(jù)的是()。
A.軟件功能的描述B.程序的邏輯結(jié)構(gòu)C.程序的物理結(jié)構(gòu)D.軟件行為的描述
30.以下關(guān)于Python字典的描述中,錯誤的是()。
A.在Python中,用字典來實(shí)現(xiàn)映射,通過整數(shù)索引來查找其中的元素
B.在定義字典對象時,鍵和值用冒號連接
C.字典中的鍵值對之間沒有順序并且不能重復(fù)
D.字典中引用與特定鍵對應(yīng)的值,用字典名稱和方括號中包含鍵名的格式
二、判斷題(10題)31.在Python中0xad是合法的十六進(jìn)制數(shù)字表示形式。
A.是B.否
32.假設(shè)re模塊已成功導(dǎo)入,并且有pattern=pile('^'+'\.'.join([r'\d{1,3}'foriinrange(4)])+'$'),那么表達(dá)式pattern.match('03')的值為None。
A.是B.否
33.運(yùn)算符“-”可以用于集合的差集運(yùn)算。
A.是B.否
34.在類定義的外部沒有任何辦法可以訪問對象的私有成員。
A.是B.否
35.在Python中可以使用for作為變量名。
A.是B.否
36.已知x=3,那么賦值語句x='abcedfg'是無法正常執(zhí)行的。A.是B.否
37.在多線程編程時,當(dāng)某子線程的daemon屬性為False時,主線程結(jié)束時會檢測該子線程是否結(jié)束,如果該子線程尚未運(yùn)行結(jié)束,則主線程會等待它完成后再退出。
A.是B.否
38.在定義函數(shù)時,某個參數(shù)名字前面帶有一個*符號表示可變長度參數(shù),可以接收任意多個普通實(shí)參并存放于一個元組之中。
A.是B.否
39.無法刪除集合中指定位置的元素,只能刪除特定值的元素。
A.是B.否
40.在Python中可以使用id作為變量名,但是不建議這樣做。
A.是B.否
三、填空題(10題)41.執(zhí)行語句x,y,z=map(str,range(3))之后,變量y的值為___________。
42.Python內(nèi)置函數(shù)_________可以返回列表、元組、字典、集合、字符串以及range對象中元素個數(shù)。
43.表達(dá)式'Helloworld'.lower()的值為_____________。
44.表達(dá)式3*2的值為___________。
45.已知x={1:1,2:2},那么執(zhí)行語句x[2]=4之后,len(x)的值為____________。
46.表達(dá)式abs(3+4j)的值為____________。
47.表達(dá)式int('123',16)的值為_________。
48.當(dāng)在字符串前加上小寫字母_____或大寫字母_____表示原始字符串,不對其中的任何字符進(jìn)行轉(zhuǎn)義。
49.語句x=(3)執(zhí)行后x的值為________________。
50.表達(dá)式'Helloworld.IlikePython.'.rfind('python')的值為________。
四、操作題(3題)51.考生文件夾下存在一個文件“PY202.py”,該文件是本題目的代碼提示框架,其中代碼可以任意修改,請在該文件中編寫代碼,以實(shí)現(xiàn)如下功能。輸出九九乘法表。按照乘法表的格式輸出九九乘法表,并將輸出的結(jié)果保存在考生文件夾下,命名為“PY202.txt”。試題程序:#以下代碼為提示框架#請在...處使用一行或多行代碼替換#注意:提示框架的代碼可以任意修改,以完成程序功能為準(zhǔn)fo=open("PY202.txt","w")fo.close()
52.考生文件夾下存在一個文件“PY202.py”,該文件是本題目的代碼提示框架,其中代碼可以任意修改。請在該文件中編寫代碼,以實(shí)現(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(_____,_____):
53.考生文件夾下存在一個文件“PY201.py”,請寫代碼替換橫線,不修改其他代碼,實(shí)現(xiàn)以下功能。使用turtle庫的turtle.right()函數(shù)和turtle.fd()函數(shù)繪制一個五角星,邊長為200像素,5個內(nèi)角度數(shù)為36度,效果如下所示。試題程序:#請在程序的_____處使用一行代碼或表達(dá)式替換#注意:請不要修改其他已給出代碼fromturtleimport*foriin_____(1)_____:fd(_____(2)_____)_____(3)_____
參考答案
1.B模塊獨(dú)立性是指每個模塊只完成系統(tǒng)要求的獨(dú)立的子功能,并且與其他模塊的聯(lián)系最少且接口簡單。一般較優(yōu)秀的軟件設(shè)計,應(yīng)盡量做到高內(nèi)聚、低耦合,即降低模塊之間的耦合性和提高模塊內(nèi)的內(nèi)聚性,有利于提高模塊的獨(dú)立性,所以A選項(xiàng)錯誤,B選項(xiàng)正確。耦合性是模塊間互相連接的緊密程度的度量而內(nèi)聚性是指一個模塊內(nèi)部各個元素間彼此結(jié)合的緊密程度,選項(xiàng)C、D錯誤。本題選擇B選項(xiàng)。
2.B扇入數(shù)是指調(diào)用一個給定模塊的模塊個數(shù)。扇出數(shù)是指由一個模塊直接調(diào)用的其他模塊數(shù),即一個模塊直接調(diào)用的下層模塊的數(shù)目。本題答案為B選項(xiàng)。
3.C面向?qū)ο蠓椒ㄖ械膶ο笥蓛刹糠纸M成:①數(shù)據(jù),也稱為屬性,即對象所包含的信息,表示對象的狀態(tài);②方法,也稱為操作,即對象所能執(zhí)行的功能、所能具有的行為。本題選C選項(xiàng)。
4.ABeautifulsoup4-用于解析和處理HTML和XML。它的最大優(yōu)點(diǎn)是能根據(jù)HTML和XML語法建立解析樹,進(jìn)而高效解析其中的內(nèi)容。
5.D外層for第一次循環(huán)將字符‘想’賦給變量m,m=‘想’,內(nèi)層for第一次循環(huán)將‘家’賦給變量n,m+n連接字符,利用列表的append()方法將連接后的字符‘想家’加入列表ls中;內(nèi)層for第二次循環(huán)將‘人’賦給變量n,m+n連接字符,利用列表的append()方法將連接后的字符‘想人’加入列表ls中。外層for第二次循環(huán)將字符‘念’賦給變量m,m=‘念’,內(nèi)層for第一次循環(huán)將‘家’賦給變量n,m+n連接字符,利用列表的append()方法將連接后的字符‘念家’加入列表ls中;內(nèi)層for第二次循環(huán)將‘人’賦給變量n,m+n連接字符,利用列表的append()方法將連接后的字符‘念人’加入列表ls中。最后列表ls=[‘想家’,‘想人’,‘念家’,‘念人’],print(ls)輸出ls。本題選擇D選項(xiàng)。
6.C元組與列表類似,可存儲不同類型的數(shù)據(jù);元組是不可改變的,創(chuàng)建后不能再做任何修改操作。
7.CPython在3種基本控制結(jié)構(gòu)(順序結(jié)構(gòu)、選擇結(jié)構(gòu)(分支結(jié)構(gòu))、循環(huán)結(jié)構(gòu))上進(jìn)行了適當(dāng)?shù)財U(kuò)展。在分支結(jié)構(gòu)原理的基礎(chǔ)上,Python增加了異常處理,使用try-except保留字。本題選擇C選項(xiàng)。
8.Atry-except語句用于檢測和處理異常。本題選擇A選項(xiàng)。
9.D__init__()方法是一個特殊的方法,每當(dāng)根據(jù)類創(chuàng)建新實(shí)例時,Python就會自動運(yùn)行該方法。該方法的開頭和結(jié)尾各有兩個下劃線,這是一種約定,旨在避免Python的默認(rèn)方法和普通方法發(fā)生命名沖突。self、name、age都是__init__()方法的形參,所以共3個。本題選擇D選項(xiàng)。
10.Df()函數(shù)中參數(shù)數(shù)量是固定的,A選項(xiàng)錯誤;傳入?yún)?shù)時并沒有指定形參a或b,B選項(xiàng)錯誤;函數(shù)并沒有自帶默認(rèn)參數(shù),且使用函數(shù)時傳入了兩個實(shí)參,C選項(xiàng)錯誤;該函數(shù)采用默認(rèn)的傳參方式,即位置參數(shù)傳參,D選項(xiàng)正確。本題選擇D選項(xiàng)。
11.B將實(shí)參7傳遞給函數(shù)形參變量n,之后進(jìn)入多分支結(jié)構(gòu),依次判斷后,執(zhí)行else后面的語句。for語句為:foriinrange(2,7),i從2依次變化到6,循環(huán)5次,將L[一1]+L[一2]的值通過append()方法加入到列表L中。\n當(dāng)i=2時,L[一1]+L[一2]=5+1=6,將6添加到列表L中,此時L=[1,5,6];\n當(dāng)i=3時,L[一1]+L[一2]=6+5=11,將11添加到列表L中,此時L=[1,5,6,11];\n當(dāng)i=4時,L[一1]+L[一2]=11+6=17,將17添加到列表L中,此時L=[1,5,6,11,17];\n當(dāng)i=5時,L[一1]+L[一2]=17+ll=28,將28添加到列表L中,此時L=[1,5,6,11,17,28];\n當(dāng)i=6時,L[一1]+L[一2]=28+17=45,將45添加到列表L中,此時L=[1,5,6,11,17,28,45]。\n最后L[一2]%L[一1]=28%45=28,故程序輸出28。本題選擇B選項(xiàng)。
12.D列表的下標(biāo)是從0開始的;元組的元素值可以刪除、連接,但不能被修改;字典中的“鍵”可以是整數(shù)或者字符串,但也可以是函數(shù)、元組、類等任意不可變類型。
13.DPython中合法的標(biāo)識符可以采用大寫字母、小寫字母、數(shù)字、下劃線和漢字等字符及其組合進(jìn)行命名,但首字母不能為數(shù)字。
14.Bls.remove(x)是刪除列表ls中出現(xiàn)的第一個x元素,而不是刪除列表ls中所有的x元素。本題選擇B選項(xiàng)。
15.Aturtle庫是Python的標(biāo)準(zhǔn)庫,用于基本圖形的繪制;jieba庫是Python的第三方中文分詞庫;SciPy是數(shù)據(jù)分析方向的第三方庫;Flask
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年版實(shí)習(xí)生派遣服務(wù)合同版B版
- 2024年度租賃中介公司房屋租賃廣告推廣服務(wù)協(xié)議3篇
- 散打課程設(shè)計模式
- 2024年深圳市租房合同糾紛處理
- 玉石高端鑒賞課程設(shè)計
- 版權(quán)法律法規(guī)解析考核試卷
- 機(jī)械識圖課程設(shè)計
- 展廳空氣調(diào)節(jié)課程設(shè)計
- 《業(yè)績補(bǔ)償承諾對并購溢價的影響研究》
- 物流短信平臺課程設(shè)計
- 2023年10月自考00055企業(yè)會計學(xué)真題及答案含評分標(biāo)準(zhǔn)
- 幼兒園人事工作總結(jié)
- 可修改版五年級數(shù)學(xué)期中考試答題卡模板
- 精裝修工程工作界面劃分
- 山東省青島市市北區(qū)2023-2024學(xué)年九年級上學(xué)期11月期中數(shù)學(xué)試題
- 【語文】上海市三年級上冊期末復(fù)習(xí)試題(含答案)
- 遙感技術(shù)基礎(chǔ)第二版課后答案
- 項(xiàng)目式高中化學(xué)教學(xué)《保護(hù)珊瑚礁的措施-沉淀溶解平衡》
- 犯罪現(xiàn)場勘察題庫(348道)
- 八段錦操作評分標(biāo)準(zhǔn)
- 校園修繕施工方案投標(biāo)文件
評論
0/150
提交評論