湖北省孝感市全國計算機等級考試Python語言程序設(shè)計_第1頁
湖北省孝感市全國計算機等級考試Python語言程序設(shè)計_第2頁
湖北省孝感市全國計算機等級考試Python語言程序設(shè)計_第3頁
湖北省孝感市全國計算機等級考試Python語言程序設(shè)計_第4頁
湖北省孝感市全國計算機等級考試Python語言程序設(shè)計_第5頁
已閱讀5頁,還剩49頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

湖北省孝感市全國計算機等級考試Python語言程序設(shè)計學(xué)校:________班級:________姓名:________考號:________

一、單選題(30題)1.設(shè)二叉樹中有20個葉子節(jié)點,5個度為1的節(jié)點,則該二叉樹中總的節(jié)點數(shù)為()。

A.46B.45C.44D.不可能有這樣的二叉樹

2.樹的度為3,共有29個結(jié)點,但沒有度為1和2的結(jié)點。則該樹中葉子結(jié)點數(shù)為()。

A.OB.9C.18D.不可能有這樣的樹

3.下面關(guān)于Python中模塊導(dǎo)入的說法錯誤的是()。

A.Python中,可以使用import語句將一個源代碼文件作為模塊導(dǎo)入

B.在系統(tǒng)導(dǎo)入模塊時,會創(chuàng)建一個名為源代碼的文件的對象,該對象引用模塊的名字空間,即可通過這個對象訪問模塊中的函數(shù)和變量

C.import語句可在程序的任何位置使用,可以在程序中多次導(dǎo)入統(tǒng)一模塊,每次導(dǎo)入該模塊時都會將該模塊中的代碼執(zhí)行一次

D.模塊導(dǎo)入時可以使用as關(guān)鍵字來改變模塊的引用對象名字

4.為以下程序填空,使得輸出結(jié)果是{40:’yuwen’,20:’yingyu’,30:’shuxu’}的選項是()。tb={’yingyu’:20,’shuxue’:30,’yuwen’:40}

stb={}foritintb.items():

print(it)print(stb)A.stb[it[1]]=it[0]

B.stb[it[1]]=stb[it[0]]

C.stb[it[1]]=tb[it[1]]

D.D.stb[il[1]]=tb[it[0]]

5.下列關(guān)于棧的敘述正確的是()。

A.棧按“先進先出”組織數(shù)據(jù)B.棧按“先進后出”組織數(shù)據(jù)C.只能在棧底插入數(shù)據(jù)D.不能刪除數(shù)據(jù)

6.以下關(guān)于隨機運算函數(shù)庫的描述,錯誤的是()。

A.random(a,b)產(chǎn)生一個[a,b]的隨機小數(shù)

B.random.seed()函數(shù)初始化隨機數(shù)種子,默認值是當前系統(tǒng)時間

C.random庫的隨機數(shù)是計算機按一定算法產(chǎn)生的,并非完全隨機

D.Python內(nèi)置的random庫主要用于產(chǎn)生各種偽隨機數(shù)序列

7.下面程序的輸出結(jié)果是()。L1=[4,5,6,8].print(L1.reverse())A.[8,6,5,4]B.[4,5,6,8]C.NoneD.[4,5,6,8]

8.將數(shù)據(jù)和操作置于對象統(tǒng)一體中的實現(xiàn)方式是()。

A.隱藏B.抽象C.封裝D.結(jié)合

9.以下程序的輸出結(jié)果是()。ls=[]formin‘想念’:fornin‘家人’:ls.append(m+n)print(ls)A.想念家人B.想想念念家家人人C.想家想人念家念人D.[‘想家’,‘想人’,‘念家’,‘念人’]

10.執(zhí)行以下代碼的結(jié)果是()A.yesB.noC.unabletorunD.Anexceptionisthrown

11.在軟件開發(fā)中,需求分析階段可以使用的工具是()。

A.N-S圖B.數(shù)據(jù)流圖C.PAD圖D.程序流程圖

12.以下關(guān)于文件讀寫的描述中,錯誤的是()。

A.對文件進行讀寫操作之后必須關(guān)閉文件以防文件丟失

B.以追加模式打開的文件,文件存在則在原文件最后追加內(nèi)容,不存在則創(chuàng)建

C.文件對象的seek()方法用來返回文件指針的當前位置

D.文件對象的readlines()方法用來讀取文件中的所有行,以每行為元素形成一個列表

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

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

14.在Python語言中,可以作為源文件后綴名的是()。

A.pngB.pdfC.pyD.ppt

15.假設(shè)現(xiàn)在是2018年10月1日的下午兩點20分7秒,則下面代碼的輸出結(jié)果為()。importtimeprint(time.strftime(”%y一%m一%d@%H一%M一%S”,time.gmtime()))

A.2018—10一1@14—20一7

B.2018—10—l@14—20一07

C.2018—10—01@14—20一07

D.True@True

16.Python中,查看一個對象是哪種類型,使用______命令

A.isinstanceB.idC.typeD.issubclass

17.在Python語言中,不屬于組合數(shù)據(jù)類型的是()。

A.浮點數(shù)類型B.列表類型C.字典類型D.字符串類型

18.Python中文件的打開模式為‘t’,對應(yīng)的文件打開模式為()。

A.只讀模式B.只寫模式C.文本文件模式D.二進制文件模式

19.S和T是兩個集合,對S&T的描述正確的是()。

A.S和T的交運算,包括同時在集合S和T中的元素

B.S和T的并運算,包括在集合S和T中的所有元素

C.S和T的差運算,包括在集合S但不在T中的元素

D.S和T的補運算,包括S和T中的幾個非相同元素

20.下面關(guān)于Python中繼承的說法錯誤的是()。

A.創(chuàng)建子類實例時,Python首先需要完成的任務(wù)是給父類的所有屬性賦值

B.Python中,super()是一個特殊函數(shù),幫助Python將父類和子類關(guān)聯(lián)起來

C.函數(shù)super()只需要一個實參,即子類名

D.對于父類的方法,可對其進行重寫,即在子類中定義一個這樣的方法,它要與重寫的父類名方法同名

21.以下關(guān)于文件的打開和關(guān)閉的描述中,正確的是()。

A.二進制文件不能使用記事本程序打開

B.二進制文件也可以使用記事本或其他文本編輯器打開,但是一般來說無法正常查看其中的內(nèi)容

C.使用內(nèi)置函數(shù)open()且以“w”模式打開文件,若文件存在,則會引發(fā)異常

D.使用內(nèi)置函數(shù)open()打開文件時,只要文件路徑正確就總可以正確打開

22.以下的程序的輸出結(jié)果是()。Is=["Python”,"family”,"miss”]deffunc(a):Is.append(a)func(”pink")print(Is)

A.['pink']

B.['Python','family','miss','pink1]

C.["Python”,”family"miss"]

D.程序報錯

23.下面屬于Python文本處理方向的第三方庫的是()。

A.PILB.mayaviC.TVTKD.pdfminer

24.Python中用來表示代碼塊所屬關(guān)系的語法是()。

A.縮進B.圓括號C.方括號D.冒號

25.對于以下代碼的描述正確的是()。s=”Pythonisgood"1="isn’tit?"length=len(s)s_title=s.title()s_l=s+1s_number=s[1:6]print(length)

A.length為12

B.s_title為”PYTHONISGOOD”

C.s_l為”Pythonisgoodisn’tit?”

D.s_number為”Python”

26.下列哪個語句在Python中是非法的()。

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

27.下面代碼的意義是()。>>>car=’BWM’>>>Id(car)

A.查看變量所占的位數(shù)B.轉(zhuǎn)換成布爾值C.查看變量在內(nèi)存中的地址D.把變量中的元素隨機排列

28.以下關(guān)于Python字典的描述中,錯誤的是()。

A.在Python中,用字典來實現(xiàn)映射,通過整數(shù)索引來查找其中的元素

B.在定義字典對象時,鍵和值用冒號連接

C.字典中的鍵值對之間沒有順序并且不能重復(fù)

D.字典中引用與特定鍵對應(yīng)的值,用字典名稱和方括號中包含鍵名的格式

29.關(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

30.以下程序的輸出結(jié)果是()。>>>s=(3,)>>>type(s)A.<class‘diet’>

B.<class‘tuple’>

C.<class‘list’>

D.<class‘set’>

二、判斷題(10題)31.標準庫os的listdir()方法默認只能列出指定文件夾中當前層級的文件和文件夾列表,而不能列出其子文件夾中的文件。

A.是B.否

32.在Python中定義類時,如果某個成員名稱前有2個下劃線則表示是私有成員。

A.是B.否

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

A.是B.否

34.安裝Python擴展庫時只能使用pip工具在線安裝,如果安裝不成功就沒有別的辦法了。

A.是B.否

35.在定義函數(shù)時,某個參數(shù)名字前面帶有兩個*符號表示可變長度參數(shù),可以接收任意多個關(guān)鍵參數(shù)并將其存放于一個字典之中。

A.是B.否

36.使用正則表達式對字符串進行分割時,可以指定多個分隔符,而字符串對象的split()方法無法做到這一點。

A.是B.否

37.在Python中0xad是合法的十六進制數(shù)字表示形式。

A.是B.否

38.只能通過切片訪問列表中的元素,不能使用切片修改列表中的元素。

A.是B.否

39.Python標準庫os中的方法startfile()可以用來打開外部程序或文件,系統(tǒng)會自動關(guān)聯(lián)相應(yīng)的程序來打開或執(zhí)行指定的文件。

A.是B.否

40.集合可以作為字典的鍵。

A.是B.否

三、填空題(10題)41.已知x=[1,2,3],那么執(zhí)行語句x[len(x)-1:]=[4,5,6]之后,變量x的值為_________________________________。

42.表達式3<<2的值為_______________。

43.已知g=lambdax,y=3,z=5:x+y+z,那么表達式g(2)的值為________。

44.表達式''.join(re.split('[sd]','asdssfff'))的值為_______________。

45.已知x=[[1]]*3,那么執(zhí)行語句x[0][0]=5之后,變量x的值為________________。

46.表達式'ab'in'acbed'的值為________。

47.表達式16**0.5的值為__________。

48.已知x,y=3,5,那么執(zhí)行x,y=y,x之后,x的值為__________。

49.已知x=3,那么執(zhí)行語句x+=6之后,x的值為_______________。

50.已知x={1:2,2:3},那么表達式x.get(3,4)的值為____。

四、操作題(3題)51.考生文件夾下存在一個文件“PY102.py”,請寫代碼替換橫線,不修改其他代碼,實現(xiàn)以下功能。用鍵盤輸入直角三角形的兩條直角邊長度,計算三角形的面積。

例如:輸入三角形第一條直角邊長:3輸入三角形第二條直角邊長:4直角三角形的面積為:6.0

試題程序:#請在_____處使用一行代碼或表達式替換

#注意:請不要修改其他已給出代碼

a=float(input("輸入三角形第一條直角邊長:"))

b=float(input("輸入三角形第二條直角邊長:"))

_____(1)_____print("直角三角形的面積為:{_____(3)_____}".format(area))

52.考生文件夾下存在一個文件PY103.py,請寫代碼替換橫線,不修改其他代碼,實現(xiàn)以下功能:使用循環(huán)輸出從1到50之間的奇數(shù)。

試題程序:

#請在_____處使用一行代碼或表達式替換

#注意:請不要修改其他已給出代碼______whilecount<50:

ifcount%2==0:

print(count,end=”,”)

53.考生文件夾下存在一個文件“PY103.py”,請寫代碼替換橫線,不修改其他代碼,實現(xiàn)以下功能。用鍵盤輸入十進制整數(shù),按要求將這個整數(shù)轉(zhuǎn)換為二進制、八進制及十六進制(大寫)并輸出到屏幕。例如:輸入數(shù)字:425對應(yīng)的二進制數(shù):110101001對應(yīng)的八進制數(shù):651對應(yīng)的十六進制數(shù):1A9試題程序:#請在_____處使用一行代碼或表達式替換#注意:請不要修改其他已給出代碼num=eval(input("輸入數(shù)字:"))print("對應(yīng)的二進制數(shù):{_____(1)_____}\n八進制數(shù):{_____(2)_____}\n十六進制數(shù):{_____(3)_____}".format(num))試題答案:num=eval(input("輸入數(shù)字:”))Print(”對應(yīng)的二進制數(shù):{0:b}\n八進制數(shù):{0:o}\n十六進制數(shù):{0:x}”.format(num))

參考答案

1.C二叉樹中只存在度為0、1、2的結(jié)點,根據(jù)在二叉樹中度為0的結(jié)點(葉子結(jié)點)總比度為2的結(jié)點多一個,可知本題中度為2的結(jié)點有20-1\n=19個。故該二叉樹中總的結(jié)點數(shù)為20+5+19=44個。本題選擇C選項。

2.D樹的度為3,即樹中只存在度為0、1、2、3的結(jié)點,假設(shè)葉子結(jié)點數(shù)為n,由于沒有度為1和2的結(jié)點,則度為3的結(jié)點數(shù)為29一n,根據(jù)樹中的結(jié)點數(shù)=樹中所有結(jié)點的度之和+1,得3×(29一n)+0×1+0×2+n×0+1=29,得出的n不為整數(shù),因此不存在這樣的樹。本題選擇D選項。

3.Cimport語句確實可以在程序的任何位置使用,但是當在程序中多次導(dǎo)入同一個模塊時,該模塊中的代碼僅僅在該模塊被首次導(dǎo)人時執(zhí)行,所以C項錯誤。

4.A分析題目及程序代碼可知,題意是將字典中的鍵值互換。tb.items()以列表形式(并非直接的列表,若要返回列表值還需調(diào)用list函數(shù))返回可遍歷的(鍵,值)元組數(shù)組。因此,for循環(huán)中it每次遍歷得到的是一個元組,依次為(’yingyu’,20)、(’shuxue’,30)、(’yuwen’,40),然后將元組中序號為0的元素和序號為1的元素互換位置,實現(xiàn)字典中鍵值的互換,應(yīng)填入stb[it[1]]=it[0]。

5.B棧是按“先進后出”的原則組織數(shù)據(jù)的,數(shù)據(jù)的插入和刪除都在棧頂進行操作。

6.Arandom()產(chǎn)生一個[0.0,1.0)的隨機小數(shù),uniform(a,b)產(chǎn)生一個[a,b]的隨機小數(shù),randint(a,b)產(chǎn)生一個[a,b]的整數(shù)。本題選擇A選項。

7.A

8.C對象具有封裝性,從外面看只能看到對象的外部特性,對象的內(nèi)部對外是封閉的。即封裝實現(xiàn)了將數(shù)據(jù)和操作置于對象統(tǒng)一體中。本題答案為C選項。

9.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選項。

10.A

11.B在需求分析階段可以使用的工具有數(shù)據(jù)流圖,數(shù)據(jù)字典(DataDictionary,DD),判定樹與判定表,本題選擇B選項。

12.C文件對象的seek()方法用來定位文件的讀/寫位置,tell()方法用來返回文件指針的當前位置。

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

14.C在Python語言中,源文件的擴展名(后綴名)一般使用.py。

15.Ctime庫是Python的標準庫。使用gmtime()函數(shù)獲取當前時間戳對應(yīng)的對象;strftime()函數(shù)是時間格式化最有效的方法,幾乎可以以任何通用格式輸出時間,該方法利用一個格式字符串,對時間格式進行表示。

16.C

17.APython中組合數(shù)據(jù)類型包括元組、列表、字典和集合等。

18.C在Python中,文件的打開模式對應(yīng)為:“r”表示只讀模式;“w”表示只寫模式;“t”表示文本文件模式;“b”表示二進制文件模式。本題選擇C選項。

19.AS&T返回一個新集合,包括同時在集合S和T中的元素。本題選擇A選項。

20.C函數(shù)super()需要兩個實參,分別是子類名和對象self,為了幫助Python將父類和子類關(guān)聯(lián)起來,這些實參必不可少,所以C項錯誤。

21.B二進制文件也可以使用記事本或其他文本編輯器打開,但是一般來說無法正常查看其中的內(nèi)容;用內(nèi)置函數(shù)open()且以”w”模式打開文件,若文件存在,則會覆蓋原來的內(nèi)容而不會引發(fā)異常。本題選擇B選項。

22.B該程序?qū)⒆址畃ink傳遞給形參a,函數(shù)體中通過append()方法將a添加到列表Is中,最后輸出列表,IS=\n[‘Python’、’family’,’miss’、’pink]。本題選擇B選項。

23.Dmayavi和TVTK是數(shù)據(jù)可視化方向的第三方庫,PIL是圖像處理方面的第三方庫。本題選擇D選項。

24.A“縮進”在Python中用于表示代碼塊所屬關(guān)系。本題選擇A選項。

25.Clen()方法用來獲取字符串的長度,所以length應(yīng)為14;title()方法把字符串每個單詞的首字母變?yōu)榇髮懀詰?yīng)為Python\nIsGood;索引從0開始,所以s[1:6]應(yīng)為ython。本題選擇C選項。

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

27.Cid(x)是Python中的內(nèi)置函數(shù),用來查看變量在內(nèi)存中的地址。

28.A在Python中,字典是存儲可變數(shù)量鍵值對的數(shù)據(jù)結(jié)構(gòu),通過字典類型實現(xiàn)映射。字典使用花括號({})建立,每個元素是一個鍵值對,使用方式為{<鍵1>:<值1>,<鍵2>:<值2>,…,<鍵n>:<值n>},其中,鍵和值通過冒號連接,不同鍵值對通過逗號隔開。字典具有和集合類似的性質(zhì),即鍵值對之間沒有順序且不能重復(fù)。通過鍵可以索引值,并可以通過鍵修改值,因此可以直接利用鍵值對關(guān)系索引元素。索引模式:<值>=<字典變量>[<鍵>]。本題選擇A選項。

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

30.B變量s是元組類型,type()返回的是表達式的值的類型。本題選擇B選項。

31.Y

32.Y

33.Y

34.N

35.Y

36.Y

37.Y

38.N

39.Y

40.N

41.[1,2,4,5,6]

42.12

43.1010

44.'afff'

45.[[5],[5],[5]]

46.False

47.4

48.5

49.9

50.4

51.a=float(input(”輸入三角形第一條直角邊長:"))b=float(input(“輸入三角形第二條直角邊長:"))Area=0.5*(a*b)print(”直角三角形的面積為:{:.1f}”.

format(area))本題考查format()方法的使用和計算直角三角形面積的公式。直角三角形的面積等于兩條直角邊的乘積再乘以1/2,所以第1空應(yīng)填area=0.5*(\r\na*b)。題干中最后輸出保留了一位小數(shù),所以format()中的字符串槽內(nèi)需要設(shè)置精度字段,因此第2空應(yīng)填入:.If。

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;當變量超過50時,停止循環(huán)。

53.num=eval(input("輸入數(shù)字:”))Print(”對應(yīng)的二進制數(shù):{0:b}\\n八進制數(shù):{0:o}\\n十六進制數(shù):{0:x}”.format(num))考查format()方法的使用。格式控制標記可以使用變量來表示,即用槽來指定對應(yīng)的控制標記及數(shù)量,模板字符串在本題中總共有3個槽,即參數(shù)變量需要3個,但此時的參數(shù)只有一個,這里需要指定對應(yīng)的變量。<類型\r\n>\r\n表示輸出整數(shù)和浮點數(shù)類型的格式規(guī)則。b表示二進制;o表示八進制;大寫的X表示大寫的十六進制。因此第1空填入o:b,第2空填入0:o,第3空填入0:X。湖北省孝感市全國計算機等級考試Python語言程序設(shè)計學(xué)校:________班級:________姓名:________考號:________

一、單選題(30題)1.設(shè)二叉樹中有20個葉子節(jié)點,5個度為1的節(jié)點,則該二叉樹中總的節(jié)點數(shù)為()。

A.46B.45C.44D.不可能有這樣的二叉樹

2.樹的度為3,共有29個結(jié)點,但沒有度為1和2的結(jié)點。則該樹中葉子結(jié)點數(shù)為()。

A.OB.9C.18D.不可能有這樣的樹

3.下面關(guān)于Python中模塊導(dǎo)入的說法錯誤的是()。

A.Python中,可以使用import語句將一個源代碼文件作為模塊導(dǎo)入

B.在系統(tǒng)導(dǎo)入模塊時,會創(chuàng)建一個名為源代碼的文件的對象,該對象引用模塊的名字空間,即可通過這個對象訪問模塊中的函數(shù)和變量

C.import語句可在程序的任何位置使用,可以在程序中多次導(dǎo)入統(tǒng)一模塊,每次導(dǎo)入該模塊時都會將該模塊中的代碼執(zhí)行一次

D.模塊導(dǎo)入時可以使用as關(guān)鍵字來改變模塊的引用對象名字

4.為以下程序填空,使得輸出結(jié)果是{40:’yuwen’,20:’yingyu’,30:’shuxu’}的選項是()。tb={’yingyu’:20,’shuxue’:30,’yuwen’:40}

stb={}foritintb.items():

print(it)print(stb)A.stb[it[1]]=it[0]

B.stb[it[1]]=stb[it[0]]

C.stb[it[1]]=tb[it[1]]

D.D.stb[il[1]]=tb[it[0]]

5.下列關(guān)于棧的敘述正確的是()。

A.棧按“先進先出”組織數(shù)據(jù)B.棧按“先進后出”組織數(shù)據(jù)C.只能在棧底插入數(shù)據(jù)D.不能刪除數(shù)據(jù)

6.以下關(guān)于隨機運算函數(shù)庫的描述,錯誤的是()。

A.random(a,b)產(chǎn)生一個[a,b]的隨機小數(shù)

B.random.seed()函數(shù)初始化隨機數(shù)種子,默認值是當前系統(tǒng)時間

C.random庫的隨機數(shù)是計算機按一定算法產(chǎn)生的,并非完全隨機

D.Python內(nèi)置的random庫主要用于產(chǎn)生各種偽隨機數(shù)序列

7.下面程序的輸出結(jié)果是()。L1=[4,5,6,8].print(L1.reverse())A.[8,6,5,4]B.[4,5,6,8]C.NoneD.[4,5,6,8]

8.將數(shù)據(jù)和操作置于對象統(tǒng)一體中的實現(xiàn)方式是()。

A.隱藏B.抽象C.封裝D.結(jié)合

9.以下程序的輸出結(jié)果是()。ls=[]formin‘想念’:fornin‘家人’:ls.append(m+n)print(ls)A.想念家人B.想想念念家家人人C.想家想人念家念人D.[‘想家’,‘想人’,‘念家’,‘念人’]

10.執(zhí)行以下代碼的結(jié)果是()A.yesB.noC.unabletorunD.Anexceptionisthrown

11.在軟件開發(fā)中,需求分析階段可以使用的工具是()。

A.N-S圖B.數(shù)據(jù)流圖C.PAD圖D.程序流程圖

12.以下關(guān)于文件讀寫的描述中,錯誤的是()。

A.對文件進行讀寫操作之后必須關(guān)閉文件以防文件丟失

B.以追加模式打開的文件,文件存在則在原文件最后追加內(nèi)容,不存在則創(chuàng)建

C.文件對象的seek()方法用來返回文件指針的當前位置

D.文件對象的readlines()方法用來讀取文件中的所有行,以每行為元素形成一個列表

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

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

14.在Python語言中,可以作為源文件后綴名的是()。

A.pngB.pdfC.pyD.ppt

15.假設(shè)現(xiàn)在是2018年10月1日的下午兩點20分7秒,則下面代碼的輸出結(jié)果為()。importtimeprint(time.strftime(”%y一%m一%d@%H一%M一%S”,time.gmtime()))

A.2018—10一1@14—20一7

B.2018—10—l@14—20一07

C.2018—10—01@14—20一07

D.True@True

16.Python中,查看一個對象是哪種類型,使用______命令

A.isinstanceB.idC.typeD.issubclass

17.在Python語言中,不屬于組合數(shù)據(jù)類型的是()。

A.浮點數(shù)類型B.列表類型C.字典類型D.字符串類型

18.Python中文件的打開模式為‘t’,對應(yīng)的文件打開模式為()。

A.只讀模式B.只寫模式C.文本文件模式D.二進制文件模式

19.S和T是兩個集合,對S&T的描述正確的是()。

A.S和T的交運算,包括同時在集合S和T中的元素

B.S和T的并運算,包括在集合S和T中的所有元素

C.S和T的差運算,包括在集合S但不在T中的元素

D.S和T的補運算,包括S和T中的幾個非相同元素

20.下面關(guān)于Python中繼承的說法錯誤的是()。

A.創(chuàng)建子類實例時,Python首先需要完成的任務(wù)是給父類的所有屬性賦值

B.Python中,super()是一個特殊函數(shù),幫助Python將父類和子類關(guān)聯(lián)起來

C.函數(shù)super()只需要一個實參,即子類名

D.對于父類的方法,可對其進行重寫,即在子類中定義一個這樣的方法,它要與重寫的父類名方法同名

21.以下關(guān)于文件的打開和關(guān)閉的描述中,正確的是()。

A.二進制文件不能使用記事本程序打開

B.二進制文件也可以使用記事本或其他文本編輯器打開,但是一般來說無法正常查看其中的內(nèi)容

C.使用內(nèi)置函數(shù)open()且以“w”模式打開文件,若文件存在,則會引發(fā)異常

D.使用內(nèi)置函數(shù)open()打開文件時,只要文件路徑正確就總可以正確打開

22.以下的程序的輸出結(jié)果是()。Is=["Python”,"family”,"miss”]deffunc(a):Is.append(a)func(”pink")print(Is)

A.['pink']

B.['Python','family','miss','pink1]

C.["Python”,”family"miss"]

D.程序報錯

23.下面屬于Python文本處理方向的第三方庫的是()。

A.PILB.mayaviC.TVTKD.pdfminer

24.Python中用來表示代碼塊所屬關(guān)系的語法是()。

A.縮進B.圓括號C.方括號D.冒號

25.對于以下代碼的描述正確的是()。s=”Pythonisgood"1="isn’tit?"length=len(s)s_title=s.title()s_l=s+1s_number=s[1:6]print(length)

A.length為12

B.s_title為”PYTHONISGOOD”

C.s_l為”Pythonisgoodisn’tit?”

D.s_number為”Python”

26.下列哪個語句在Python中是非法的()。

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

27.下面代碼的意義是()。>>>car=’BWM’>>>Id(car)

A.查看變量所占的位數(shù)B.轉(zhuǎn)換成布爾值C.查看變量在內(nèi)存中的地址D.把變量中的元素隨機排列

28.以下關(guān)于Python字典的描述中,錯誤的是()。

A.在Python中,用字典來實現(xiàn)映射,通過整數(shù)索引來查找其中的元素

B.在定義字典對象時,鍵和值用冒號連接

C.字典中的鍵值對之間沒有順序并且不能重復(fù)

D.字典中引用與特定鍵對應(yīng)的值,用字典名稱和方括號中包含鍵名的格式

29.關(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

30.以下程序的輸出結(jié)果是()。>>>s=(3,)>>>type(s)A.<class‘diet’>

B.<class‘tuple’>

C.<class‘list’>

D.<class‘set’>

二、判斷題(10題)31.標準庫os的listdir()方法默認只能列出指定文件夾中當前層級的文件和文件夾列表,而不能列出其子文件夾中的文件。

A.是B.否

32.在Python中定義類時,如果某個成員名稱前有2個下劃線則表示是私有成員。

A.是B.否

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

A.是B.否

34.安裝Python擴展庫時只能使用pip工具在線安裝,如果安裝不成功就沒有別的辦法了。

A.是B.否

35.在定義函數(shù)時,某個參數(shù)名字前面帶有兩個*符號表示可變長度參數(shù),可以接收任意多個關(guān)鍵參數(shù)并將其存放于一個字典之中。

A.是B.否

36.使用正則表達式對字符串進行分割時,可以指定多個分隔符,而字符串對象的split()方法無法做到這一點。

A.是B.否

37.在Python中0xad是合法的十六進制數(shù)字表示形式。

A.是B.否

38.只能通過切片訪問列表中的元素,不能使用切片修改列表中的元素。

A.是B.否

39.Python標準庫os中的方法startfile()可以用來打開外部程序或文件,系統(tǒng)會自動關(guān)聯(lián)相應(yīng)的程序來打開或執(zhí)行指定的文件。

A.是B.否

40.集合可以作為字典的鍵。

A.是B.否

三、填空題(10題)41.已知x=[1,2,3],那么執(zhí)行語句x[len(x)-1:]=[4,5,6]之后,變量x的值為_________________________________。

42.表達式3<<2的值為_______________。

43.已知g=lambdax,y=3,z=5:x+y+z,那么表達式g(2)的值為________。

44.表達式''.join(re.split('[sd]','asdssfff'))的值為_______________。

45.已知x=[[1]]*3,那么執(zhí)行語句x[0][0]=5之后,變量x的值為________________。

46.表達式'ab'in'acbed'的值為________。

47.表達式16**0.5的值為__________。

48.已知x,y=3,5,那么執(zhí)行x,y=y,x之后,x的值為__________。

49.已知x=3,那么執(zhí)行語句x+=6之后,x的值為_______________。

50.已知x={1:2,2:3},那么表達式x.get(3,4)的值為____。

四、操作題(3題)51.考生文件夾下存在一個文件“PY102.py”,請寫代碼替換橫線,不修改其他代碼,實現(xiàn)以下功能。用鍵盤輸入直角三角形的兩條直角邊長度,計算三角形的面積。

例如:輸入三角形第一條直角邊長:3輸入三角形第二條直角邊長:4直角三角形的面積為:6.0

試題程序:#請在_____處使用一行代碼或表達式替換

#注意:請不要修改其他已給出代碼

a=float(input("輸入三角形第一條直角邊長:"))

b=float(input("輸入三角形第二條直角邊長:"))

_____(1)_____print("直角三角形的面積為:{_____(3)_____}".format(area))

52.考生文件夾下存在一個文件PY103.py,請寫代碼替換橫線,不修改其他代碼,實現(xiàn)以下功能:使用循環(huán)輸出從1到50之間的奇數(shù)。

試題程序:

#請在_____處使用一行代碼或表達式替換

#注意:請不要修改其他已給出代碼______whilecount<50:

ifcount%2==0:

print(count,end=”,”)

53.考生文件夾下存在一個文件“PY103.py”,請寫代碼替換橫線,不修改其他代碼,實現(xiàn)以下功能。用鍵盤輸入十進制整數(shù),按要求將這個整數(shù)轉(zhuǎn)換為二進制、八進制及十六進制(大寫)并輸出到屏幕。例如:輸入數(shù)字:425對應(yīng)的二進制數(shù):110101001對應(yīng)的八進制數(shù):651對應(yīng)的十六進制數(shù):1A9試題程序:#請在_____處使用一行代碼或表達式替換#注意:請不要修改其他已給出代碼num=eval(input("輸入數(shù)字:"))print("對應(yīng)的二進制數(shù):{_____(1)_____}\n八進制數(shù):{_____(2)_____}\n十六進制數(shù):{_____(3)_____}".format(num))試題答案:num=eval(input("輸入數(shù)字:”))Print(”對應(yīng)的二進制數(shù):{0:b}\n八進制數(shù):{0:o}\n十六進制數(shù):{0:x}”.format(num))

參考答案

1.C二叉樹中只存在度為0、1、2的結(jié)點,根據(jù)在二叉樹中度為0的結(jié)點(葉子結(jié)點)總比度為2的結(jié)點多一個,可知本題中度為2的結(jié)點有20-1\n=19個。故該二叉樹中總的結(jié)點數(shù)為20+5+19=44個。本題選擇C選項。

2.D樹的度為3,即樹中只存在度為0、1、2、3的結(jié)點,假設(shè)葉子結(jié)點數(shù)為n,由于沒有度為1和2的結(jié)點,則度為3的結(jié)點數(shù)為29一n,根據(jù)樹中的結(jié)點數(shù)=樹中所有結(jié)點的度之和+1,得3×(29一n)+0×1+0×2+n×0+1=29,得出的n不為整數(shù),因此不存在這樣的樹。本題選擇D選項。

3.Cimport語句確實可以在程序的任何位置使用,但是當在程序中多次導(dǎo)入同一個模塊時,該模塊中的代碼僅僅在該模塊被首次導(dǎo)人時執(zhí)行,所以C項錯誤。

4.A分析題目及程序代碼可知,題意是將字典中的鍵值互換。tb.items()以列表形式(并非直接的列表,若要返回列表值還需調(diào)用list函數(shù))返回可遍歷的(鍵,值)元組數(shù)組。因此,for循環(huán)中it每次遍歷得到的是一個元組,依次為(’yingyu’,20)、(’shuxue’,30)、(’yuwen’,40),然后將元組中序號為0的元素和序號為1的元素互換位置,實現(xiàn)字典中鍵值的互換,應(yīng)填入stb[it[1]]=it[0]。

5.B棧是按“先進后出”的原則組織數(shù)據(jù)的,數(shù)據(jù)的插入和刪除都在棧頂進行操作。

6.Arandom()產(chǎn)生一個[0.0,1.0)的隨機小數(shù),uniform(a,b)產(chǎn)生一個[a,b]的隨機小數(shù),randint(a,b)產(chǎn)生一個[a,b]的整數(shù)。本題選擇A選項。

7.A

8.C對象具有封裝性,從外面看只能看到對象的外部特性,對象的內(nèi)部對外是封閉的。即封裝實現(xiàn)了將數(shù)據(jù)和操作置于對象統(tǒng)一體中。本題答案為C選項。

9.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選項。

10.A

11.B在需求分析階段可以使用的工具有數(shù)據(jù)流圖,數(shù)據(jù)字典(DataDictionary,DD),判定樹與判定表,本題選擇B選項。

12.C文件對象的seek()方法用來定位文件的讀/寫位置,tell()方法用來返回文件指針的當前位置。

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

14.C在Python語言中,源文件的擴展名(后綴名)一般使用.py。

15.Ctime庫是Python的標準庫。使用gmtime()函數(shù)獲取當前時間戳對應(yīng)的對象;strftime()函數(shù)是時間格式化最有效的方法,幾乎可以以任何通用格式輸出時間,該方法利用一個格式字符串,對時間格式進行表示。

16.C

17.APython中組合數(shù)據(jù)類型包括元組、列表、字典和集合等。

18.C在Python中,文件的打開模式對應(yīng)為:“r”表示只讀模式;“w”表示只寫模式;“t”表示文本文件模式;“b”表示二進制文件模式。本題選擇C選項。

19.AS&T返回一個新集合,包括同時在集合S和T中的元素。本題選擇A選項。

20.C函數(shù)super()需要兩個實參,分別是子類名和對象self,為了幫助Python將父類和子類關(guān)聯(lián)起來,這些實參必不可少,所以C項錯誤。

21.B二進制文件也可以使用記事本或其他文本編輯器打開,但是一般來說無法正常查看其中的內(nèi)容;用內(nèi)置函數(shù)open()且以”w”模式打開文件,若文件存在,則會覆蓋原來的內(nèi)容而不會引發(fā)異常。本題選擇B選項。

22.B該程序?qū)⒆址畃ink傳遞給形參a,函數(shù)體中通過append()方法將a添加到列表Is中,最后輸出列表,IS=\n[‘Python’、’family’,’miss’、’pink]。本題選擇B選項。

23.Dmayavi和TVTK是數(shù)據(jù)可視化方向的第三方庫,PIL是圖像處理方面的第三方庫。本題選擇D選項。

24.A“縮進”在Python中用于表示代碼塊所屬關(guān)系。本題選擇A選項。

25.Clen()方法用來獲取字符串的長度,所以length應(yīng)為14;title()方法把字符串每個單詞的首字母變?yōu)榇髮?,所以?yīng)為Python\nIsGood;索引從0開始,所以s[1:6]應(yīng)為ython。本題選擇C選項。

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

27.Cid(x)是Python中的內(nèi)置函數(shù),用來查看變量在內(nèi)存中的地址。

28.A在Python中,字典是存儲可變數(shù)量鍵值對的數(shù)據(jù)結(jié)構(gòu),通過字典類型實現(xiàn)映射。字典使用花括號({})建立,每個元素是一個鍵值對,使用方式為{<鍵1>:<值1>,<鍵2>:<值2>,…,<鍵n>:<值n>},其中,鍵和值通過冒號連接,不同鍵值對通過逗號隔開。字典具有和集合類似的性質(zhì),即鍵值對之間沒有順序且不能重復(fù)。通過鍵可以索引值,并可以通過鍵修改值,因此可以直接利用鍵值對關(guān)系索引元素。索引模式:<值>=<字典變量>[<鍵>]。本題選擇A選項。

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

30.B變量s是元組類型,type()返回的是表達式的值的類型。本題選擇B選項。

31.Y

32.Y

33.Y

34.N

35.Y

36.Y

37.Y

38.N

39.Y

40.N

41.[1,2,4,5,6]

42.12

43.1010

44.'afff'

45.[[5],[5],[5]]

46.False

47.4

48.5

49.9

50.4

51.a=float(input(”輸入三角形第一條直角邊長:"))b=float(input(“輸入三角形第二條直角邊長:"))Area=0.5*(a*b)print(”直角三角形的面積為:{:.1f}”.

format(area))本題考查format()方法的使用和計算直角三角形面積的公式。直角三角形的面積等于兩條直角邊的乘積再乘以1/2,所以第1空應(yīng)填area=0.5*(\r\na*b)。題干中最后輸出保留了一位小數(shù),所以format()中的字符串槽內(nèi)需要設(shè)置精度字段,因此第2空應(yīng)填入:.If。

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;當變量超過50時,停止循環(huán)。

53.num=eval(input("輸入數(shù)字:”))Print(”對應(yīng)的二進制數(shù):{0:b}\\n八進制數(shù):{0:o}\\n十六進制數(shù):{0:x}”.format(num))考查format()方法的使用。格式控制標記可以使用變量來表示,即用槽來指定對應(yīng)的控制標記及數(shù)量,模板字符串在本題中總共有3個槽,即參數(shù)變量需要3個,但此時的參數(shù)只有一個,這里需要指定對應(yīng)的變量。<類型\r\n>\r\n表示輸出整數(shù)和浮點數(shù)類型的格式規(guī)則。b表示二進制;o表示八進制;大寫的X表示大寫的十六進制。因此第1空填入o:b,第2空填入0:o,第3空填入0:X。湖北省孝感市全國計算機等級考試Python語言程序設(shè)計學(xué)校:________班級:________姓名:________考號:________

一、單選題(30題)1.設(shè)二叉樹中有20個葉子節(jié)點,5個度為1的節(jié)點,則該二叉樹中總的節(jié)點數(shù)為()。

A.46B.45C.44D.不可能有這樣的二叉樹

2.樹的度為3,共有29個結(jié)點,但沒有度為1和2的結(jié)點。則該樹中葉子結(jié)點數(shù)為()。

A.OB.9C.18D.不可能有這樣的樹

3.下面關(guān)于Python中模塊導(dǎo)入的說法錯誤的是()。

A.Python中,可以使用import語句將一個源代碼文件作為模塊導(dǎo)入

B.在系統(tǒng)導(dǎo)入模塊時,會創(chuàng)建一個名為源代碼的文件的對象,該對象引用模塊的名字空間,即可通過這個對象訪問模塊中的函數(shù)和變量

C.import語句可在程序的任何位置使用,可以在程序中多次導(dǎo)入統(tǒng)一模塊,每次導(dǎo)入該模塊時都會將該模塊中的代碼執(zhí)行一次

D.模塊導(dǎo)入時可以使用as關(guān)鍵字來改變模塊的引用對象名字

4.為以下程序填空,使得輸出結(jié)果是{40:’yuwen’,20:’yingyu’,30:’shuxu’}的選項是()。tb={’yingyu’:20,’shuxue’:30,’yuwen’:40}

stb={}foritintb.items():

print(it)print(stb)A.stb[it[1]]=it[0]

B.stb[it[1]]=stb[it[0]]

C.stb[it[1]]=tb[it[1]]

D.D.stb[il[1]]=tb[it[0]]

5.下列關(guān)于棧的敘述正確的是()。

A.棧按“先進先出”組織數(shù)據(jù)B.棧按“先進后出”組織數(shù)據(jù)C.只能在棧底插入數(shù)據(jù)D.不能刪除數(shù)據(jù)

6.以下關(guān)于隨機運算函數(shù)庫的描述,錯誤的是()。

A.random(a,b)產(chǎn)生一個[a,b]的隨機小數(shù)

B.random.seed()函數(shù)初始化隨機數(shù)種子,默認值是當前系統(tǒng)時間

C.random庫的隨機數(shù)是計算機按一定算法產(chǎn)生的,并非完全隨機

D.Python內(nèi)置的random庫主要用于產(chǎn)生各種偽隨機數(shù)序列

7.下面程序的輸出結(jié)果是()。L1=[4,5,6,8].print(L1.reverse())A.[8,6,5,4]B.[4,5,6,8]C.NoneD.[4,5,6,8]

8.將數(shù)據(jù)和操作置于對象統(tǒng)一體中的實現(xiàn)方式是()。

A.隱藏B.抽象C.封裝D.結(jié)合

9.以下程序的輸出結(jié)果是()。ls=[]formin‘想念’:fornin‘家人’:ls.append(m+n)print(ls)A.想念家人B.想想念念家家人人C.想家想人念家念人D.[‘想家’,‘想人’,‘念家’,‘念人’]

10.執(zhí)行以下代碼的結(jié)果是()A.yesB.noC.unabletorunD.Anexceptionisthrown

11.在軟件開發(fā)中,需求分析階段可以使用的工具是()。

A.N-S圖B.數(shù)據(jù)流圖C.PAD圖D.程序流程圖

12.以下關(guān)于文件讀寫的描述中,錯誤的是()。

A.對文件進行讀寫操作之后必須關(guān)閉文件以防文件丟失

B.以追加模式打開的文件,文件存在則在原文件最后追加內(nèi)容,不存在則創(chuàng)建

C.文件對象的seek()方法用來返回文件指針的當前位置

D.文件對象的readlines()方法用來讀取文件中的所有行,以每行為元素形成一個列表

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

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

14.在Python語言中,可以作為源文件后綴名的是()。

A.pngB.pdfC.pyD.ppt

15.假設(shè)現(xiàn)在是2018年10月1日的下午兩點20分7秒,則下面代碼的輸出結(jié)果為()。importtimeprint(time.strftime(”%y一%m一%d@%H一%M一%S”,time.gmtime()))

A.2018—10一1@14—20一7

B.2018—10—l@14—20一07

C.2018—10—01@14—20一07

D.True@True

16.Python中,查看一個對象是哪種類型,使用______命令

A.isinstanceB.idC.typeD.issubclass

17.在Python語言中,不屬于組合數(shù)據(jù)類型的是()。

A.浮點數(shù)類型B.列表類型C.字典類型D.字符串類型

18.Python中文件的打開模式為‘t’,對應(yīng)的文件打開模式為()。

A.只讀模式B.只寫模式C.文本文件模式D.二進制文件模式

19.S和T是兩個集合,對S&T的描述正確的是()。

A.S和T的交運算,包括同時在集合S和T中的元素

B.S和T的并運算,包括在集合S和T中的所有元素

C.S和T的差運算,包括在集合S但不在T中的元素

D.S和T的補運算,包括S和T中的幾個非相同元素

20.下面關(guān)于Python中繼承的說法錯誤的是()。

A.創(chuàng)建子類實例時,Python首先需要完成的任務(wù)是給父類的所有屬性賦值

B.Python中,super()是一個特殊函數(shù),幫助Python將父類和子類關(guān)聯(lián)起來

C.函數(shù)super()只需要一個實參,即子類名

D.對于父類的方法,可對其進行重寫,即在子類中定義一個這樣的方法,它要與重寫的父類名方法同名

21.以下關(guān)于文件的打開和關(guān)閉的描述中,正確的是()。

A.二進制文件不能使用記事本程序打開

B.二進制文件也可以使用記事本或其他文本編輯器打開,但是一般來說無法正常查看其中的內(nèi)容

C.使用內(nèi)置函數(shù)open()且以“w”模式打開文件,若文件存在,則會引發(fā)異常

D.使用內(nèi)置函數(shù)open()打開文件時,只要文件路徑正確就總可以正確打開

22.以下的程序的輸出結(jié)果是()。Is=["Python”,"family”,"miss”]deffunc(a):Is.append(a)func(”pink")print(Is)

A.['pink']

B.['Python','family','miss','pink1]

C.["Python”,”family"miss"]

D.程序報錯

23.下面屬于Python文本處理方向的第三方庫的是()。

A.PILB.mayaviC.TVTKD.pdfminer

24.Python中用來表示代碼塊所屬關(guān)系的語法是()。

A.縮進B.圓括號C.方括號D.冒號

25.對于以下代碼的描述正確的是()。s=”Pythonisgood"1="isn’tit?"length=len(s)s_title=s.title()s_l=s+1s_number=s[1:6]print(length)

A.length為12

B.s_title為”PYTHONISGOOD”

C.s_l為”Pythonisgoodisn’tit?”

D.s_number為”Python”

26.下列哪個語句在Python中是非法的()。

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

27.下面代碼的意義是()。>>>car=’BWM’>>>Id(car)

A.查看變量所占的位數(shù)B.轉(zhuǎn)換成布爾值C.查看變量在內(nèi)存中的地址D.把變量中的元素隨機排列

28.以下關(guān)于Python字典的描述中,錯誤的是()。

A.在Python中,用字典來實現(xiàn)映射,通過整數(shù)索引來查找其中的元素

B.在定義字典對象時,鍵和值用冒號連接

C.字典中的鍵值對之間沒有順序并且不能重復(fù)

D.字典中引用與特定鍵對應(yīng)的值,用字典名稱和方括號中包含鍵名的格式

29.關(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

30.以下程序的輸出結(jié)果是()。>>>s=(3,)>>>type(s)A.<class‘diet’>

B.<class‘tuple’>

C.<class‘list’>

D.<class‘set’>

二、判斷題(10題)31.標準庫os的listdir()方法默認只能列出指定文件夾中當前層級的文件和文件夾列表,而不能列出其子文件夾中的文件。

A.是B.否

32.在Python中定義類時,如果某個成員名稱前有2個下劃線則表示是私有成員。

A.是B.否

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

A.是B.否

34.安裝Python擴展庫時只能使用pip工具在線安裝,如果安裝不成功就沒有別的辦法了。

A.是B.否

35.在定義函數(shù)時,某個參數(shù)名字前面帶有兩個*符號表示可變長度參數(shù),可以接收任意多個關(guān)鍵參數(shù)并將其存放于一個字典之中。

A.是B.否

36.使用正則表達式對字符串進行分割時,可以指定多個分隔符,而字符串對象的split()方法無法做到這一點。

A.是B.否

37.在Python中0xad是合法的十六進制數(shù)字表示形式。

A.是B.否

38.只能通過切片訪問列表中的元素,不能使用切片修改列表中的元素。

A.是B.否

39.Python標準庫os中的方法startfile()可以用來打開外部程序或文件,系統(tǒng)會自動關(guān)聯(lián)相應(yīng)的程序來打開或執(zhí)行指定的文件。

A.是B.否

40.集合可以作為字典的鍵。

A.是B.否

三、填空題(10題)41.已知x=[1,2,3],那么執(zhí)行語句x[len(x)-1:]=[4,5,6]之后,變量x的值為_________________________________。

42.表達式3<<2的值為_______________。

43.已知g=lambdax,y=3,z=5:x+y+z,那么表達式g(2)的值為________。

44.表達式''.join(re.split('[sd]','asdssfff'))的值為_______________。

45.已知x=[[1]]*3,那么執(zhí)行語句x[0][0]=5之后,變量x的值為________________。

46.表達式'ab'in'acbed'的值為________。

47.表達式16**0.5的值為__________。

48.已知x,y=3,5,那么執(zhí)行x,y=y,x之后,x的值為__________。

49.已知x=3,那么執(zhí)行語句x+=6之后,x的值為_______________。

50.已知x={1:2,2:3},那么表達式x.get(3,4)的值為____。

四、操作題(3題)51.考生文件夾下存在一個文件“PY102.py”,請寫代碼替換橫線,不修改其他代碼,實現(xiàn)以下功能。用鍵盤輸入直角三角形的兩條直角邊長度,計算三角形的面積。

例如:輸入三角形第一條直角邊長:3輸入三角形第二條直角邊長:4直角三角形的面積為:6.0

試題程序:#請在_____處使用一行代碼或表達式替換

#注意:請不要修改其他已給出代碼

a=float(input("輸入三角形第一條直角邊長:"))

b=float(input("輸入三角形第二條直角邊長:"))

_____(1)_____print("直角三角形的面積為:{_____(3)_____}".format(area))

52.考生文件夾下存在一個文件PY103.py,請寫代碼替換橫線,不修改其他代碼,實現(xiàn)以下功能:使用循環(huán)輸出從1到50之間的奇數(shù)。

試題程序:

#請在_____處使用一行代碼或表達式替換

#注意:請不要修改其他已給出代碼______whilecount<50:

ifcount%2==0:

print(count,end=”,”)

53.考生文件夾下存在一個文件“PY103.py”,請寫代碼替換橫線,不修改其他代碼,實現(xiàn)以下功能。用鍵盤輸入十進制整數(shù),按要求將這個整數(shù)轉(zhuǎn)換為二進制、八進制及十六進制(大寫)并輸出到屏幕。例如:輸入數(shù)字:425對應(yīng)的二進制數(shù):110101001對應(yīng)的八進制數(shù):651對應(yīng)的十六進制數(shù):1A9試題程序:#請在_____處使用一行代碼或表達式替換#注意:請不要修改其他已給出代碼num=eval(input("輸入數(shù)字:"))print("對應(yīng)的二進制數(shù):{_____(1)_____}\n八進制數(shù):{_____(2)_____}\n十六進制數(shù):{_____(3)_____}".format(num))試題答案:num=eval(input("輸入數(shù)字:”))Print(”對應(yīng)的二進制數(shù):{0:b}\n八進制數(shù):{0:o}\n十六進制數(shù):{0:x}”.format(num))

參考答案

1.C二叉樹中只存在度為0、1、2的結(jié)點,根據(jù)在二叉樹中度為0的結(jié)點(葉子結(jié)點)總比度為2的結(jié)點多一個,可知本題中度為2的結(jié)點有20-1\n=19個。故該二叉樹中總的結(jié)點數(shù)為20+5+19=44個。本題選擇C選項。

2.D樹的度為3,即樹中只存在度為0、1、2、3的結(jié)點,假設(shè)葉子結(jié)點數(shù)為n,由于沒有度為1和2的結(jié)點,則度為3的結(jié)點數(shù)為29一n,根據(jù)樹中的結(jié)點數(shù)=樹中所有結(jié)點的度之和+1,得3×(29一n)+0×1+0×2+n×0+1=29,得出的n不為整數(shù),因此不存在這樣的樹。本題選擇D選項。

3.Cimport語句確實可以在程序的任何位置使用,但是當在程序中多次導(dǎo)入同一個模塊時,該模塊中的代碼僅僅在該模塊被首次導(dǎo)人時執(zhí)行,所以C項錯誤。

4.A分析題目及程序代碼可知,題意是將字典中的鍵值互換。tb.items()以列表形式(并非直接的列表,若要返回列表值還需調(diào)用list函數(shù))返回可遍歷的(鍵,值)元組數(shù)組。因此,for循環(huán)中it每次遍歷得到的是一個元組,依次為(’yingyu’,20)、(’shuxue’,30)、(’yuwen’,40),然后將元組中序號為0的元素和序號為1的元素互換位置,實現(xiàn)字典中鍵值的互換,應(yīng)填入stb[it[1]]=it[0]。

5.B棧是按“先進后出”的原則組織數(shù)據(jù)的,數(shù)據(jù)的插入和刪除都在棧頂進行操作。

6.Arandom()產(chǎn)生一個[0.0,1.0)的隨機小數(shù),uniform(a,b)產(chǎn)生一個[a,b]的隨機小數(shù),randint(a,b)產(chǎn)生一個[a,b]的整數(shù)。本題選擇A選項。

7.A

8.C對象具有封裝性,從外面看只能看到對象的外部特性,對象的內(nèi)部對外是封閉的。即封裝實現(xiàn)了將數(shù)據(jù)和操作置于對象統(tǒng)一體中。本題答案為C選項。

9.D外層for第一次循環(huán)將字符‘想’賦給變量m,m=‘想’,內(nèi)層for第一次循環(huán)將‘家’賦給變量n,m+n連接字符,利用列表的append()方法將連接后的字符‘想家’加入列表ls中;內(nèi)層fo

溫馨提示

  • 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)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論