陜西省西安市全國計算機(jī)等級考試Python語言程序設(shè)計重點匯總(含答案)_第1頁
陜西省西安市全國計算機(jī)等級考試Python語言程序設(shè)計重點匯總(含答案)_第2頁
陜西省西安市全國計算機(jī)等級考試Python語言程序設(shè)計重點匯總(含答案)_第3頁
陜西省西安市全國計算機(jī)等級考試Python語言程序設(shè)計重點匯總(含答案)_第4頁
陜西省西安市全國計算機(jī)等級考試Python語言程序設(shè)計重點匯總(含答案)_第5頁
已閱讀5頁,還剩14頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

陜西省西安市全國計算機(jī)等級考試Python語言程序設(shè)計重點匯總(含答案)學(xué)校:________班級:________姓名:________考號:________

一、單選題(30題)1.以下程序執(zhí)行后,book.txt文件的內(nèi)容是()。fo=open(“book.txt”,“w”)ls=[‘book’,‘23’,‘201009’,‘20’]fo.write(str(ls))fo.close()

A.[‘book’,‘23’,‘201009’,‘20’]

B.book,23,201009,20

C.[book,23,201009,20]

D.book2320100920

2.以下關(guān)于Python中文件的打開模式的描述中,錯誤的是()。

A.“a”表示追加寫模式,若文件存在,覆蓋原來的內(nèi)容

B.“r”表示只讀模式

C.“w”表示覆蓋寫模式,若文件存在,覆蓋原來的內(nèi)容

D.“x”創(chuàng)建新的文件

3.下面關(guān)于遞歸函數(shù),描述錯誤的是()。

A.遞歸函數(shù)必須有一個明確的結(jié)束條件

B.遞歸函數(shù)就是一個函數(shù)在內(nèi)部調(diào)用自身本身

C.遞歸效率不高,遞歸層次過多會導(dǎo)致棧溢出

D.每進(jìn)入更深一層的遞歸時,問題規(guī)模相對于前一次遞歸是不變的

4.以下程序的輸出結(jié)果是()。x=4ca=‘123456’ifstr(x)inca: print(ca.replace(ca[x],str(x-2)))

A.123456B.123426C.5D.2

5.以下關(guān)于字符串的描述正確的是()。

A.字符應(yīng)視為長度為1或2的字符串

B.字符串中的字符可進(jìn)行數(shù)學(xué)運算,但進(jìn)行數(shù)學(xué)運算的字符必須為數(shù)字

C.在三引號字符串中可包含換行回車等特殊的字符

D.字符串可以進(jìn)行切片賦值

6.下列表達(dá)式會返回('julyedu',)[0]()

A.異常B.julyeduC.jD.('julyedu')

7.軟件生命周期是指()。

A.軟件產(chǎn)品從提出、實現(xiàn)、使用、維護(hù)到停止使用的過程

B.軟件從需求分析、設(shè)計、實現(xiàn)到測試完成的過程

C.軟件的開發(fā)過程

D.軟件的運行維護(hù)過程

8.以下程序的輸出結(jié)果是()。11=[’aa’,[2,3,3.0]]print(11.index(2))

A.2B.3.0C.3D.ValueError

9.表達(dá)式3**2*4//6%7的計算結(jié)果是()。

A.3B.5C.4D.6

10.文件exam.txt與以下程序在同一目錄下,其內(nèi)容是一段文本bigBen,以下程序的輸出結(jié)果是()。f=open(“exam.txt”)print(f)f.close()

A.bigBenB.exam.txtC.<_io.TextIOWrapper…>D.exam

11.在供應(yīng)關(guān)系中,實體供應(yīng)商和實體零件之間的聯(lián)系是()。

A.多對多B.—對一C.多對一D.—對多

12.下列代碼的輸出結(jié)果是()。Is=[[0,l],[5,6],[7,8]]lis=[]foriinrange(len(Is)):lis.append(ls[i][1])print(lis)

A.[l,6,8]B.[0,5,7]C.[0,6,8]D.[0,1]

13.以下程序的輸出結(jié)果是()。d={‘food’:{‘cake’:1,‘egg’:5}}print(d.get(‘egg’,‘nothisfood’))

A.eggB.1C.foodD.nothisfood

14.以下程序的輸出結(jié)果不可能是()。importrandomls=[2,3,4,6]s=10k=random.randint(0,2)s+=ls[k]print(s)

A.12B.14C.13D.16

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

A.文件是存儲在輔助存儲器上的一組數(shù)據(jù)序列,可以包含任何數(shù)據(jù)內(nèi)容

B.可以使用open()打開文件,用close()關(guān)閉文件

C.使用read()可以從文件中讀人全部文本

D.使用readlines()可以從文件中讀入一行文本

16.以下程序的輸出結(jié)果是()。deffunc(a,b): a**=b returnas=func(2,5)print(s)

A.10B.20C.32D.5

17.以下關(guān)于random庫的描述,錯誤的是()。

A.random庫是Python的第三方庫

B.通過fromrandomimport*可以引入random隨機(jī)庫

C.設(shè)定相同種子,每次調(diào)用隨機(jī)函數(shù)生成的隨機(jī)數(shù)相同

D.通過importrandom可以引入random隨機(jī)庫

18.以下不屬于Python保留字的是()。

A.passB.useC.withD.None

19.以下關(guān)于文件的描述中,正確的是()。

A.使用open()打開文件時,必須要用r或w指定打開方式,不能省略

B.采用readlines()可以讀入文件中的全部文本,返回一個列表

C.文件打開后,可以用write()控制對文件內(nèi)容的讀寫位置

D.如果沒有采用close()關(guān)閉文件,Python程序退出時文件將不會自動關(guān)閉

20.對于循環(huán)隊列,下列敘述中正確的是()。

A.隊頭指針是固定不變的

B.隊頭指針一定大于隊尾指針

C.隊頭指針一定小于隊尾指針

D.隊頭指針可以大于隊尾指針,也可以小于隊尾指針

21.以下選項中Python不支持的數(shù)據(jù)類型是()。A.intB.charC.floatD.list

22.當(dāng)在命令行中以pythonmy.pyv1v2形式運行python腳本時,通過fromsysimportargv如何獲得v2的參數(shù)值?

A.argv[0]B.argv[1]C.argv[2]D.argv[3]

23.下面代碼的輸出結(jié)果是()。list=[[0,1,2],"123.0","python"]a=all(list[0])b=list[1].split(".")c=ascii(list[2])print(a,b,c)

A.True['123']'python'

B.False['0']'l’

C.Tme[‘123’,’0’]丨1'

D.False[‘123’,’0’]'python’

24.在Python中,用來安裝第三方庫的工具是()。

A.installB.pipC.PyQt5D.pyinstaller

25.下面代碼輸出的結(jié)果是()。list=[[0,1,2],”123.0”,”python”]a=all(list[0])b=list[1].split(”.”)e=ascii(1ist[2])print(a,b,c)

A.True[’123’]’python’

B.False[‘0]’1’

C.True[’123’,0]~1

D.False[’123’,’0’]’python’

26.在Python中,不能作為變量名的是()。

A.studentB.2ageC._regD.use_time

27.Python中匿名函數(shù)的關(guān)鍵字是()。

A.lambdaB.globalC.withD.I)ass

28.以下關(guān)于二進(jìn)制整數(shù)的定義,正確的是()。

A.081014B.0b1010C.0B1019D.ObC3F

29.以下關(guān)于Python二維數(shù)據(jù)的描述中,錯誤的是()。

A.CSV文件的每一行是一維數(shù)據(jù),可以用列表、元組表示

B.從CSV文件獲得數(shù)據(jù)內(nèi)容后,可以用replace()來去掉每行最后的換行符

C.若一個列表變量里的元素都是字符串類型,則可以用join()合成字符串

D.列表中保存的二維數(shù)據(jù),可以通過循環(huán)結(jié)構(gòu)用writelines()寫入CSV文件

30.以下不是Python組合數(shù)據(jù)類型的是()。

A.元組類型B.字符串類型C.數(shù)組類型D.列表類型

二、判斷題(10題)31.Python列表、元組、字符串都屬于有序序列。

A.是B.否

32.為了讓代碼更加緊湊,編寫Python程序時應(yīng)盡量避免加入空格和空行。

A.是B.否

33.在Python中定義函數(shù)時不需要聲明函數(shù)參數(shù)的類型。

A.是B.否

34.全局變量會增加不同函數(shù)之間的隱式耦合度,從而降低代碼可讀性,因此應(yīng)盡量避免過多使用全局變量。

A.是B.否

35.Python字符串方法replace()對字符串進(jìn)行原地修改。

A.是B.否

36.在Python中,任意長的字符串都遵守駐留機(jī)制。

A.是B.否

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

A.是B.否

38.在Python中可以使用if作為變量名。

A.是B.否

39.程序中異常處理結(jié)構(gòu)在大多數(shù)情況下是沒必要的。

A.是B.否

40.3+4j不是合法的Python表達(dá)式。

A.是B.否

三、填空題(10題)41.Python擴(kuò)展庫_____________支持Excel2007或更高版本文件的讀寫操作。

42.使用pip工具查看當(dāng)前已安裝的Python擴(kuò)展庫的完整命令是_____________。

43.random模塊中_____________方法的作用是將列表中的元素隨機(jī)亂序。

44.表達(dá)式eval('''__import__('math').sqrt(9)''')的值為______________。

45.表達(dá)式(1,2,3)+(4,5)的值為__________________。

46.Python內(nèi)置函數(shù)()用來返回序列中的最小元素。

47.線程對象的___________方法用來阻塞當(dāng)前線程,指定線程運行結(jié)束或超時后繼續(xù)運行當(dāng)前線程。

48.表達(dá)式{1,2,3}<{1,2,4}的值為___________。

49.已知x=[3,5,7],那么執(zhí)行語句x[1:]=[2]之后,x的值為________________。

50.已知vec=[[1,2],[3,4]],則表達(dá)式[[row[i]forrowinvec]foriinrange(len(vec[0]))]的值為_________________________。

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

52.考生文件夾下存在一個文件“PY102.py”,請寫代碼替換橫線,不修改其他代碼,實現(xiàn)以下功能。文件給出字符串,刪除字符串開頭和末尾的空白,將結(jié)果輸出到屏幕。

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

#注意:請不要修改其他已給出代碼word="床前明月光,疑是地上霜。"print(_____)

53.考生文件夾下存在一個文件“PY301.py”,該文件是本題目的代碼提示框架,其中代碼可以任意修改。請按照源文件內(nèi)部說明修改代碼,實現(xiàn)以下功能。設(shè)計一個猜字母的程序,程序隨機(jī)給出26個小寫字母中的一個,答題者輸入猜測的字母,若輸入的不是26個小寫字母之一,讓用戶重新輸入;若字母在答案之前或之后,程序給出相應(yīng)正確提示;若答錯5次,則答題失敗并退出游戲;若回答正確,程序輸出回答次數(shù)并退出游戲。試題程序:#以下代碼為提示框架#請在...處使用一行或多行代碼替換#請在_____處使用一行代碼替換#注意:提示框架的代碼可以任意修改,以完成程序功能為準(zhǔn)

參考答案

1.A執(zhí)行fo=open(“book.txt”,“W”),打開book.txt文件,打開模式為“W”(覆蓋寫模式);創(chuàng)建列表ls=[“book”,“23”,“201009”,“20”];str()函數(shù)返回一個對象的字符串格式,str(ls)將列表類型的ls轉(zhuǎn)換為字符串類型,fo.write(str(ls))將字符串寫入book.txt文件中。本題選擇A選項。

2.A在Python文件的打開方式中,a為追加寫模式,若文件存在,內(nèi)容追加在原文件內(nèi)容后面。本題選擇A選項。

3.DA選項正確,遞歸函數(shù)必須要有一個明確的結(jié)束條件作為遞歸的出口;B選項正是遞歸函數(shù)的含義,正確;C選項正確,在計算機(jī)中,函數(shù)調(diào)用是通過棧這種數(shù)據(jù)結(jié)構(gòu)實現(xiàn)的,每當(dāng)進(jìn)入一個函數(shù)調(diào)用,棧就會加一層棧幀,每當(dāng)函數(shù)返回,棧就會減一層棧幀,由于棧的大小不是無限的,所以,遞歸調(diào)用的次數(shù)過多,會導(dǎo)致棧溢出;D選項,每當(dāng)進(jìn)入更深一層的遞歸時,問題規(guī)模顯然會相對前一次遞歸減小。

4.Bstr(4)=‘4’,此字符在字符串ca中,滿足if條件,執(zhí)行輸出語句。ca.replace(ca[4],str(4-2))是指返回字符串ca副本,ca[4]是指字符串中序號為4的字符‘5’,str(4-2)返回字符‘2’,也就是用字符‘2’來替換字符‘5’。本題選擇B選項。

5.C字符應(yīng)視為長度為1的字符串;字符串中的字符不可以進(jìn)行數(shù)學(xué)運算,如果是數(shù)字字符串需要將其轉(zhuǎn)換為數(shù)值類型方可計算;字符串可進(jìn)行切片,但不能賦值。

6.B

7.A通常,將軟件產(chǎn)品從提出、實現(xiàn)、使用、維護(hù)到停止使用的過程稱為軟件生命周期。也就是說,軟件產(chǎn)品從考慮其概念開始,到該軟件產(chǎn)品不能使用為止的整個時期都屬于軟件生命周期。本題選擇A選項。

8.D列表的index()方法用于從列表中找出某個對象第一個匹配項的索引位置,如果這個對象不在列表中會報一個異常。本題中11.index(2)是指在列表11中查找對象2,但列表中并不存在元素2,因此會異常。故答案為D項。

9.D先計算冪,3**2=9,9*4=36,36//6=6,6%7=6。//是整除運算,%是求余運算。本題選D選項。

10.Copen()函數(shù)打開一個文件,并返回可以操作這個文件的變量f,并且open()函數(shù)有兩個參數(shù):文件名和打開模式。本題只是打開了文件,并沒有對文件進(jìn)行操作,因此不會輸出文件的內(nèi)容。print(f)語句輸出的是變量f代表的文件的相關(guān)信息:<_io.TextIOWrappername=‘exam.txt’mode=‘r’encoding=‘cp936’>。若想要輸出文件的內(nèi)容,需要把文件的內(nèi)容讀入,如f1=f.read()。本題選擇C選項。

11.A一家供應(yīng)商可提供多種零件,一種零件也可被多家供應(yīng)商提供,所以實體供應(yīng)商和實體零件之間的聯(lián)系是多對多。本題選擇A選項。

12.Aleii()方法獲得列表Is的長度,mnge()方法起到循環(huán)次數(shù)的作用,append()方法在列表lis最后增加元素。列表Is存儲的元素是列表,訪問時需要使用索引嵌套。本題選擇A選項。

13.D根據(jù)字典的索引方式可知,d.get(‘egg’,‘nothisfood’)索引的是字典第一層,但是第一層只有鍵food,沒有鍵egg,故索引不出值,輸出的是nothisfood。本題選擇D選項。

14.Drandint(a,b)產(chǎn)生一個[a,b]的整數(shù),因此random.randint(0,2)的返回值可能為0、1或者2(即k的值),ls[0]=2,ls[1]=3,ls[2]=4,所以s也有3個可能的值s+=2,s+=3,s+=4,也就是12、13、14。本題選擇D選項。

15.D文件是存儲在輔助存儲器上的一組數(shù)據(jù)序列,可以包含任何數(shù)據(jù)內(nèi)容。A項正確。可以使用open()打開文件,用close()關(guān)閉文件,B項正確。在Python語言中,文件讀取方法有(設(shè)f代表文件變量):\nf.read():從文件中讀入整個文件內(nèi)容。\nf.readline():從文件中讀入一行內(nèi)容。\nf.readlines():從文件中讀入所有行,以每行為元素形成一個列表。\nf.seek():改變當(dāng)前文件操作指針的位置。C項正確。本題選擇D選項。

16.C該函數(shù)的功能是計算a的b次方,運算符“**”表示冪運算,s=2**5=32。本題選擇C選項。

17.Arandom庫用于產(chǎn)生各種分布的偽隨機(jī)序列,是Python的標(biāo)準(zhǔn)庫,而不是Python的第三方庫,本題選擇A選項。

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

19.B使用open()打開文件時,省略打開模式會默認(rèn)只讀方式打開;文件打開后,可以用seek()控制對文件內(nèi)容的讀寫位置,write()方法只是向文件寫入一個字符串或是字節(jié)流;如果沒有采用close()關(guān)閉文件,有可能會導(dǎo)致數(shù)據(jù)丟失。Python程序退出時一般會自動關(guān)閉。本題選擇B選項。

20.D循環(huán)隊列的隊頭指針與隊尾指針都不是固定的,隨著入隊與出隊操作進(jìn)行變化。因為是循環(huán)利用的隊列結(jié)構(gòu),所以隊頭指針有時可能大于隊尾指針有時也可能小于隊尾指針。本題選擇D選項。

21.BPython不支持char類型,只支持?jǐn)?shù)字類型和字符串類型。其中數(shù)字類型包括整數(shù)、浮點數(shù)和復(fù)數(shù)。

22.C

23.Dall(x)函數(shù)在組合類型變量x中所有元素為真時返回True,為假時返回False,若為空,則返回True,所以a的值為False;b中split()是字符串分隔函數(shù),返回分隔后的值應(yīng)為[‘123’,’0’]\n;c中ascii()的參數(shù)是字符串python,所以返回’python'。本題選擇D選項。

24.B在Python中,使用pip工具來安裝和管理Python第三方庫,pip屬于Python的一部分。本題選擇B選項。

25.Dall(x)函數(shù)當(dāng)組合類型變量x中所有元素為真時返回True,為假時返回False,若為空,則返回True,所以a的值為False.b中split()是字符串分隔函數(shù),返回分隔后的值應(yīng)為[’123’,’0’];c中ascii()的參數(shù)是字符串’python’,所以返回’python’。

26.BPython中合法的標(biāo)識符可以采用大寫字母、小寫字母、數(shù)字、下劃線及漢字等字符及其組合命名,但首字母不能為數(shù)字。本題選擇B選項。

27.AB項是定義全局變量的關(guān)鍵字,C項是with…as用來代替?zhèn)鹘y(tǒng)的try…finally語法,D項的意思是程序什么都不做。

28.B二進(jìn)制整數(shù)以0b開頭,后面跟二進(jìn)制數(shù)0和1。A、C、D三項中有4、9、C、3、F,這些都不是二進(jìn)制數(shù)。

29.D在Python中,writelines()方法是將一個所有元素為字符串的列表整體寫入文件;write()方法是向文件寫入一個字符串或字節(jié)流,每次寫入后,會記錄一個寫入指針。二維列表對象輸出為CSV文件采用遍歷循環(huán)和字符串的join()方法相結(jié)合,方法如下:#ls代表二維列表,此處省略f=open('cpi.csv','w”)forrowinIs:f.write(“,”join(row)+“\\n')f.close()本題選擇D選項。

30.C能表示多個數(shù)據(jù)的類型稱為組合數(shù)據(jù)類型。Python中最常用的組合數(shù)據(jù)類型有3大類,分別是集合類型、序列類型(典型代表是字符串類型和列表類型)和映射類型(典型代表是字典類型)。Python的數(shù)據(jù)類型不包括數(shù)組類型,在Python中數(shù)組類型需要通過引用第三方庫如Numpy實現(xiàn)。故答案為C項。

31.Y

32.N

33.Y

34.Y

35.N

36.N

37.Y

38.N

39.N

40.N

41.openpyxl

42.piplist

43.shuffle()

44.3.0

45.(1,2,3,4,5)

46.min()

47.join()

48.False

49.[3,2]

50.[[1,3],[2,4]]

51.num=eval(input("輸入數(shù)字:”))Print(”對應(yīng)的二進(jìn)制數(shù):{0:b}\\n八進(jìn)制數(shù):{0:o}\\n十六進(jìn)制數(shù):{0:x}”.format(num))考查format()方法的使用。格式控制標(biāo)記可以使用變量來表示,即用槽來指定對應(yīng)的控制標(biāo)記及數(shù)量,模板字符串在本題中總共有3個槽,即參數(shù)變量需要3個,但此時的參數(shù)只有一個,這里需要指定對應(yīng)的變量。<類型\r\n>\r\n表示輸出整數(shù)和浮點數(shù)類型的格式規(guī)則

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論