甘肅省白銀市全國計算機等級考試Python語言程序設(shè)計真題(含答案)_第1頁
甘肅省白銀市全國計算機等級考試Python語言程序設(shè)計真題(含答案)_第2頁
甘肅省白銀市全國計算機等級考試Python語言程序設(shè)計真題(含答案)_第3頁
甘肅省白銀市全國計算機等級考試Python語言程序設(shè)計真題(含答案)_第4頁
甘肅省白銀市全國計算機等級考試Python語言程序設(shè)計真題(含答案)_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

甘肅省白銀市全國計算機等級考試Python語言程序設(shè)計真題(含答案)學(xué)校:________班級:________姓名:________考號:________

一、單選題(30題)1.100-25*3%4應(yīng)該輸出什么?

A.1B.0C.25D.97

2.以下代碼的輸出結(jié)果是()。CLis=list(range(5))print(5inCLis)

A.TrueB.FalseC.0D.一1

3.以下程序的輸出結(jié)果是()。t=10.5defabove_zero(t): returnt>0

A.TrueB.FalseC.10.5D.沒有輸出

4.下列不屬于處理Python中字典的方法的是()。

A.pop()B.replace()C.get()D.popitem()

5.以下程序的輸出結(jié)果是()。foriinrange(1,6): ifi%4==0: continue else: print(i,end=“,”)

A.1,2,3,B.1,2,3,4,C.1,2,3,5,D.1,2,3,5,6

6.以下程序中,while循環(huán)的循環(huán)次數(shù)是()。i=0whilei<10:ifi<1:print(”Python”)continueifi==5:print(”World!”)breaki+=1

A.10B.5C.4D.死循環(huán),不能確定

7.當(dāng)試圖訪問的對象屬性不存在時,為了不讓程序拋出異常,需要用到的語句是()。

A.try-except語句B.for語句C.eval語句D.if語句

8.以下不是Python語言保留字的是()。

A.awaitB.passC.doD.lambda

9.假設(shè)city,csv文件內(nèi)容如下:巴哈馬,巴林,孟加拉國,巴巴多斯白俄羅斯,比利時,伯利茲以下代碼的輸出結(jié)果是()。f=open("city,csv”,“r”)Is=f.read().split(",")f.close()print(Is)

A.[’巴哈馬’,’巴林’,’孟加拉國’,’巴巴多斯\n白俄羅斯’,’比利時’,’伯利茲]

B.[’巴哈馬’,’巴林’,’孟加拉國’,’巴巴多斯’,’白俄羅斯’,’比利時’,’伯利茲]

C.[’巴哈馬’,’巴林’,’孟加拉國,巴巴多斯,白俄羅斯,比利時,伯利茲’]

D.[’巴哈馬’,’巴林’,’孟加拉國’,’巴巴多斯’,’\n’,’白俄羅斯’,’比利時’,’伯利茲’,’]

10.在Python中,包含矩陣運算的第三方庫是()。

A.NumPyB.PyQt5C.wordcloudD.wxPython

11.在讀寫文件之前,需要打開文件使用的函數(shù)是()。

A.readB.fopenC.openD.CFile

12.下面代碼的輸出結(jié)果是()。x=10whilex:x一=1ifx%2:print(x,end=”)else:pass

A.86420B.975311C.97531D.864200

13.下面關(guān)于Python中函數(shù)參數(shù)的說法錯誤的是()。

A.在函數(shù)定義時必須固定參數(shù)的數(shù)量

B.使用位置參數(shù)傳參時實參的數(shù)量和順序必須和函數(shù)聲明時的參數(shù)一樣

C.若是參數(shù)有默認(rèn)值,在調(diào)用函數(shù)時沒有給參數(shù)賦值,調(diào)用的函數(shù)就會使用這個默認(rèn)值

D.關(guān)鍵字參數(shù)傳參是指在調(diào)用函數(shù)時通過參數(shù)名傳遞值

14.以下代碼的輸出結(jié)果是()。fo=open(”book.txt”,”w”)ls=[’C語言’,’Java’,’C#’,’Python’]fo.writelines(ls)fo.close()

A.’C語言“Java”C#”Python’

B.C語言JavaC#Python

C.[C語言,Java,C#,Python]

D.[’C語言’,’Java’,’C#’,’Python’]

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

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

B.采用readlineS()可以讀入文件的全部內(nèi)容,返回一個列表

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

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

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

B.<class‘tuple’>

C.<class‘list’>

D.<class‘set’>

17.在Python中關(guān)于單引號與雙引號的說法中正確的是()

A.Python中字符串初始化只能使用單引號

B.單引號用于短字符串,雙引號用于長字符串

C.單雙引在使用上沒有區(qū)別

D.單引號針對變量,雙引號針對常量

18.以下程序的輸出結(jié)果是()。test={“age”:“18”,“score”:“[89,95]”,“name”:“Hawking”}print(test[“score”],test.get(“name”,“Rose”))

A.89,95Hawking

B.[89,95]Hawking

C.[89,95]Rose

D.[89,95]name

19.以下代碼的輸出結(jié)果是()。Is=[[1,2,3],’python’,[[4,5,’ABC’],6],[7,8]]print(ls[2][l])

A.'ABC'B.pC.4D.6

20.假設(shè)現(xiàn)在是2018年10月1日的下午2點20分7秒,則下面程序的輸出結(jié)果為()。importtimeprint(time.strftime(“%y-%m-%d@%Y-%M-%D”,time.gmtime()))

A.2018-10-1@14-20-7

B.2018-10-1@14-20-07

C.2018-10-01@-14-20-07

D.True@True

21.下列敘述中正確的是()。

A.棧是一種先進先出的線性表B.隊列是一種后進先出的線性表C.棧與隊列都是非線性結(jié)構(gòu)D.以上三種說法都不對

22.字符串tstr=’television’,顯示結(jié)果為vi的選項是()。

A.pxint(tstr[4:7])

B.ptint(tstr[5:7])

C.print(tstr[一6:6])

D.print(tstr[4:一2])

23.關(guān)于以下代碼的描述中,正確的是()。deffact(n):s=1Foriinrange(1,n+1):s*=ireturns

A.代碼中n是可選參數(shù)

B.faCt(n)函數(shù)功能為求n的階乘

C.s是全局變量

D.mnge()函數(shù)的范圍是[1,n+1]

24.以下不屬于Python控制結(jié)構(gòu)的是()。

A.順序結(jié)構(gòu)B.循環(huán)結(jié)構(gòu)C.分支結(jié)構(gòu)D.數(shù)據(jù)結(jié)構(gòu)

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

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

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

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

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

26.單元測試不應(yīng)涉及的內(nèi)容是()。

A.模塊的接口B.模塊的執(zhí)行路徑C.模塊的局部數(shù)據(jù)結(jié)構(gòu)D.模塊的出錯處理功能

27.假設(shè)有一個包含一個函數(shù)的程序放在一個文件中,在主程序文件中使用下面各種方法來導(dǎo)入它,方法錯誤的是()。

A.importmodule

B.frommoduleasfimportfunction

C.importmoduleasm

D.frommoduleimport*

28.執(zhí)行以下程序,輸出結(jié)果是()。y=‘中文’X=‘中文字’print(x>y)

A.NoneB.FalseC.FalseorFalseD.True

29.下面代碼的輸出結(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’

30.以下程序的輸出結(jié)果是()。ls=[[1,2,3],‘python’[[4,5,‘ABC’],6],[7,8]]print(ls[2][1])

A.‘ABC’B.pC.4D.6

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

A.是B.否

32.已知seq為長度大于10的列表,并且已導(dǎo)入random模塊,那么[random.choice(seq)foriinrange(10)]和random.sample(seq,10)等價。

A.是B.否

33.在Python中可以使用id作為變量名,但是不建議這樣做。

A.是B.否

34.同一個列表對象中的元素類型可以各不相同。

A.是B.否

35.無法刪除集合中指定位置的元素,只能刪除特定值的元素。

A.是B.否

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

A.是B.否

37.Python標(biāo)準(zhǔn)庫os中的方法listdir()返回包含指定路徑中所有文件和文件夾名稱的列表。

A.是B.否

38.已知A和B是兩個集合,并且表達(dá)式AB的值一定為True。

A.是B.否

39.pip命令支持使用擴展名為whl的文件離線安裝Python擴展庫。

A.是B.否

40.對于列表而言,在尾部追加元素比在中間位置插入元素速度更快一些,尤其是對于包含大量元素的列表。

A.是B.否

三、填空題(10題)41.已知path=r'c:\test.html',那么表達(dá)式path[:-4]+'htm'的值為__________。

42.表達(dá)式'abc10'.isdigit()的值為__________________。

43.已知x是一個列表對象,那么執(zhí)行語句y=x[:]之后表達(dá)式id(x)==id(y)的值為___________。

44.已知a=[1,2,3]和b=[1,2,4],那么id(a[1])==id(b[1])的執(zhí)行結(jié)果為___________。

45.Python源代碼程序偽編譯后的文件擴展名為__________。

46.表達(dá)式min(['11','2','3'])的值為_________________。

47.已知有列表x=[[1,2,3],[4,5,6]],那么表達(dá)式[[row[i]forrowinx]foriinrange(len(x[0]))]的值為___________________________。

48.已知字典x={i:str(i+3)foriinrange(3)},那么表達(dá)式''.join(x.values())的值為____________。

49.已知x=[1,2,1],那么表達(dá)式id(x[0])==id(x[2])的值為_______________。

50.表達(dá)式round(3.7)的值為_________。

四、操作題(3題)51.考生文件夾下存在一個文件PY101.py,請寫代碼替換橫線,不修改其他代碼,實現(xiàn)以下功能:

鍵盤輸入正整數(shù)n,按要求把n輸出到屏幕,格式要求:寬度為25個字符,等號字符(=)填充,右對齊,帶千位分隔符。如果輸入正整數(shù)超過25位,則按照真實長度輸出。

例如:鍵盤輸入正整數(shù)n為1234,屏幕輸出===================1,234

試題程序:

#請完善如下代碼

s=input()

print(”{________(1)_________}”.format(________(2)_________))

52.在考生文件夾下有一個文件“PY102.py”,請按照文件內(nèi)的說明,完善代碼,實現(xiàn)下面功能:用鍵盤輸入一個十進制數(shù)保存在變量s中,轉(zhuǎn)換為二進制數(shù)輸出顯示在屏幕上,示例如下。請輸入一個十進制數(shù):25轉(zhuǎn)換成二進制數(shù)是:11001試題程序:#請在程序的_____處使用一行代碼或表達(dá)式替換#注意:請不要修改其他已給出代碼s=input("請輸入一個十進制數(shù):")num=_____(1)_____print("轉(zhuǎn)換成二進制數(shù)是:{_____(2)_____}".format(_____(3)_____))

53.考生文件夾下存在一個文件“PY201.py”,該文件是本題目的代碼提示框架,其中代碼可以任意修改。請在該文件中編寫代碼,以實現(xiàn)如下功能。使用循環(huán)輸出由星號組成的實心菱形圖案,如下所示。試題程序:#請在...處使用一行或多行代碼替換#注意:請不要修改其他已給出代碼foriinrange(0,4):…foriinrange(0,4):…

參考答案

1.D

2.Brange()函數(shù)的語法:range(start,stop,step),作用是生成一個從start參數(shù)的值開始,到stop參數(shù)的值結(jié)束的數(shù)字序列(注意不包含數(shù)stop),step是步進參數(shù)。cLis=list(range(5)),生成一個列表,包含0,1,2,3,4。因為5不在CLis列表中,故返回False。

3.D在Python中,return語句用來結(jié)束函數(shù)并將程序返回到函數(shù)被調(diào)用的位置繼續(xù)執(zhí)行。return語句可以出現(xiàn)在函數(shù)的任何部分,可以同時將0個、1個或多個函數(shù)運算結(jié)果返回給函數(shù)被調(diào)用處的變量。函數(shù)可以沒有return,此時函數(shù)并不返回值。return返回的是值而不是表達(dá)式,且此段語句并未調(diào)用函數(shù),故程序無輸出。本題選擇D選項。

4.Bpop()方法:鍵存在則返回相應(yīng)值,同時刪除鍵值對,否則返回默認(rèn)值;get()方法:若訪問的項不存在于字典中,返回默認(rèn)值,若存在,則返回鍵對應(yīng)的值;popitem()方法:隨機從字典中取出一個鍵值對,以元組(key,value)形式返回,同時將該鍵值對從字典中刪除。replace()方法:是字符串的操作方法,在字符串中用新的子串替換舊的子串,返回字符串的副本。

5.Cfor循環(huán)依次將1~5賦給i,i從1、2、3、4、5依次變化,當(dāng)i%4==0時,結(jié)束本次循環(huán)進入下一循環(huán),反之輸出i的值。故輸出結(jié)果為:1,2,3,5,。本題選擇C選項。

6.Dwhile循環(huán)的判斷條件為真時,進入循環(huán)體,為假時,直接執(zhí)行while同級的代碼。初始值為i=0,進入循環(huán)體之后,因為i<1,執(zhí)行continue語句跳出本次循環(huán),進入下一循環(huán)。i的值始終為0,故程序為死循環(huán)。

7.Atry-except語句用于檢測和處理異常。本題選擇A選項。

8.C保留字也稱關(guān)鍵字,指被編程語言內(nèi)部定義并保留使用的標(biāo)識符。Python3.x版本的保留字有35個,分別是and,as,assert,async,await,break,class,continue,def,del,elif,else,except,F(xiàn)alse,finally,for,from,global,if,import,in,is,lambda,None,nonlocal,not,or,pass,raise,return,True,try,with,whiIe,yield。

9.A在Python中,split()方法通過指定分隔符對字符串進行切片,返回分隔后的字符串列表。用Split(',')方法從CSV文件中獲得內(nèi)容時,無法去除換行符?!桶投嗨筡\n白俄羅斯’作為一個列表元素出現(xiàn),所以Is\n=[‘巴哈馬’,’巴林’,孟加拉國巴巴多斯\\n白俄羅斯’,’比利時’,’伯利茲\'],最后輸出列表。本題選擇A選項。

10.ANumPy是Python的一種開源數(shù)值計算擴展第三方庫,用于處理數(shù)據(jù)類型相同的多維數(shù)組,簡稱“數(shù)組”。NrnnPy可以用來存儲和處理大型矩陣,其提供了許多髙級的數(shù)組編程工具,如矩陣運算、矢量處理、N維數(shù)據(jù)變換等。本題選擇A選項。

11.CPython通過open()函數(shù)打開一個文件,并返回一個操作這個文件的變量,語法:<變量名>=open(<文件路徑及文件名>,<打開模式>)。本題選C選項。

12.Cwhile條件為真時進入循環(huán)體,執(zhí)行循環(huán)體中的內(nèi)容。如果x的值為偶數(shù)則if條件為假,不執(zhí)行任何操作,為奇數(shù)則if條件為真,輸出該奇數(shù);進入下一次循環(huán),判斷while條件,判斷是否進入循環(huán)體,執(zhí)行循環(huán)體中的代碼。后面的操作類似,直到while條件不滿足。經(jīng)過一系列的運算,輸出結(jié)果為:97531。

13.A在Python中,在函數(shù)定義時是可以設(shè)計可變數(shù)量參數(shù)的,通過在參數(shù)前加星號(*)實現(xiàn)??勺儏?shù)在定義時只有兩種變現(xiàn)形式:*param和**param,前者表示可以接受多個位置參數(shù)收集的實參組成一個元組,后者表示可以接收多個關(guān)鍵字參數(shù)收集的實參名和值組成一個字典。

14.B文件打開模式中w表示覆蓋寫模式,文件不存在則創(chuàng)建,存在則完全覆蓋原文件。文件寫入方法中,writelines表示直接將列表類型的各元素連接起來寫入文件中。此代碼就是將列表ls中的內(nèi)容整體寫入文件中,本題選B選項。

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

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

17.C

18.B“score”鍵對應(yīng)的值是列表類型“[89,95]”,字典的get(key,default)方法:鍵存在則返回對應(yīng)值,否則返回默認(rèn)值default?!皀ame”鍵存在于字典中,所以返回的是對應(yīng)值而不是默認(rèn)值。本題選擇B選項。

19.D列表索引從0開始,所以ls[2]\n[1]指的是列表中索引為2的元素[[4,5,’ABC’],6]中索引為1的元素6,所以輸出結(jié)果是6。本題選擇D選項。

20.Ctime庫是Python的標(biāo)準(zhǔn)庫。使用gmtime()函數(shù)獲取當(dāng)前時間戳對應(yīng)的對象。strftime()函數(shù)是時間格式化最有效的方法,幾乎可以以任何通用格式輸出時間。strftime()利用一個格式字符串,對時間格式進行表示。本題選擇C選項。

21.D【答案】:D

【知識點】:棧和隊列

【解析】:棧和隊列都是線性結(jié)構(gòu),所以選項C錯誤;棧是一種先進后出的線性表,故選項A錯誤;隊列是一種先進先出的線性表,故選項B錯誤,所以選D。

22.C對字符串中某個子串或區(qū)間的檢索稱為切片。切片的使用方式如下:\n<字符串或字符串變量>[N:M]\n切片獲取字符串從N到M(不包含M)的子字符串,其中N和M為字符串的索引序號,可以混合使用正向遞增序號和反向遞減序號。切片要求N和M都在字符串的索引區(qū)間,如果N大于等于M,則返回空字符串。如果N缺失,則默認(rèn)將N設(shè)為0;如果M缺失,則默認(rèn)表示到字符串結(jié)尾。\n題干中tstr[4:7]=’vis’,tstr[5:7]=’is’,tstr[4:一2]=’visi’,tstr[一6:6]=’vi’

23.B函數(shù)定義時的語法格式如下:def<函數(shù)名>(<非可選參數(shù)列表>,<可選參數(shù)>=<默認(rèn)值>):〈函數(shù)體〉return<返回值列表〉可選參數(shù)一般都放置在非可選參數(shù)的后面。本題代碼中,n為非可選參數(shù),fact(n)函數(shù)的功能為求n的階乘。s在函數(shù)內(nèi)部定義,為局部變量。根據(jù)range()函數(shù)的定義,range(l,n\n+l)的范圍是[l,n],不包含n+1。本題選擇B選項。

24.DPython控制結(jié)構(gòu)包括順序結(jié)構(gòu)、循環(huán)結(jié)構(gòu)及分支結(jié)構(gòu)。本題選擇D選項。

25.C文件對象的seek()方法用來定位文件的讀/寫位置,tell()方法用來返回文件指針的當(dāng)前位置。本題選擇C選項。

26.B單元測試主要針對模塊的5個基本特征進行:模塊接口測試,局部數(shù)據(jù)結(jié)構(gòu)測試,重要的執(zhí)行路徑的檢查,檢查模塊的錯誤處理能力,影響以上各點及其他相關(guān)點的邊界條件測試。本題選擇B選項。

27.BD選項用于導(dǎo)入模塊中所有的函數(shù)從而直接調(diào)用該模塊中的函數(shù);A選項直接導(dǎo)入整個模塊,再利用“模塊名.函數(shù)名”這樣的方式來運行該模塊中的函數(shù);C選項只是在導(dǎo)入該模塊時給該模塊起了一個別名,本質(zhì)和A選項一樣。B選項正確的寫法應(yīng)該是from\nmoduleimportfunctionasf,本題選擇B選項。

28.D在Python中比較兩個字符串的大小,要從第一個字符開始比較,只要比較出了大小就結(jié)束。本題中,x和y的前兩個字符相同,但y沒有第三個字符,所以x大,則x>y的結(jié)果為True。本題選擇D選項。

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

30.D列表索引從0開始,所以k[2][1]指的是列表中索引為2的元素下索引為1的元素,輸出結(jié)果是6。本題選擇D選項。

31.N

32.N

33.Y

34.Y

35.Y

36.N

37.Y

38.N

39.Y

40.Y

41.'c:\\test.htm'

42.False

43.False

44.True

45.pyc

46.'11'

47.[[1,4],[2,5],[3,6]]

48.'345'

49.True

50.4

51.s=input()\r\nprint(”{:=>25}”.format(eval(s)))該題目主要考查Python字符串的格式化方法。Python語言推薦使用.format()格式化方法,其使用方式如下:\r\n

<模板字符串>.format(<逗號分隔的參數(shù)>)\r\n

其中,模板字符串是一個由字符串和槽組成的字符串,用來控制字符串和變量的顯示效果。槽用大括號({})表示,對應(yīng)format()方法中逗號分隔的參數(shù)。如果模板字符串中有多個槽,可以通過format()參數(shù)的序號在模板字符串槽中指定參數(shù)的使用,參數(shù)從0開始編號。例如:\r\n”{0}日:學(xué)而不思則罔,思而不學(xué){1}。”.format(”孔子”,”則殆”)\r\n

其結(jié)果為:’孔子日:學(xué)而不思則罔,思而不學(xué)則殆。’\r\n

format()方法的槽除了包括參數(shù)序號,還可以包括格式控制信息,語法格式如下:\r\n

{<參數(shù)序號>:<格式

溫馨提示

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

最新文檔

評論

0/150

提交評論