四川省瀘州市全國計算機(jī)等級考試Python語言程序設(shè)計真題(含答案)_第1頁
四川省瀘州市全國計算機(jī)等級考試Python語言程序設(shè)計真題(含答案)_第2頁
四川省瀘州市全國計算機(jī)等級考試Python語言程序設(shè)計真題(含答案)_第3頁
四川省瀘州市全國計算機(jī)等級考試Python語言程序設(shè)計真題(含答案)_第4頁
四川省瀘州市全國計算機(jī)等級考試Python語言程序設(shè)計真題(含答案)_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

四川省瀘州市全國計算機(jī)等級考試Python語言程序設(shè)計真題(含答案)學(xué)校:________班級:________姓名:________考號:________

一、單選題(30題)1.字符串tstr=’television’,顯示結(jié)果為vi的選項是()。

A.pxint(tstr[4:7])

B.ptint(tstr[5:7])

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

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

2.下列關(guān)于Python中復(fù)數(shù)類型的描述錯誤的是()。

A.復(fù)數(shù)由實數(shù)部分和虛數(shù)部分構(gòu)成

B.復(fù)數(shù)可以看作是二元有序?qū)崝?shù)對(a,b)

C.虛數(shù)部分必須后綴j,且為小寫

D.復(fù)數(shù)中的虛數(shù)部分不能單獨存在,必須有實數(shù)部分

3.以下代碼的輸出結(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’]

4.—個類繼承另一個類,那么被繼承的這個類被稱為()。

A.超類B.子類C.類D.繼承類

5.Python中文件的打開模式不包含()。

A.'a'B.'b'C.'c'D.'+'

6.以下python數(shù)據(jù)類型中不支持索引訪問的是()

A.字符串B.列表C.元組D.集合

7.在Python中,能夠處理圖像的第三方庫是()。

A.PylnstallerB.PyserialC.PygameD.PIL

8.下面代碼的輸出結(jié)果是()。defadd(x):ifx>0:returnx+add(x一1)else:return0result=add(10)print(result)

A.0B.10C.55D.45

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

A.二進(jìn)制文件不能使用記事本程序打開

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

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

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

10.以下程序的輸出結(jié)果是()。ls=list(range(5))pdnt(ls)

A.{0,1,2,3,4}B.[0,1,2,3,4]C.{1,2,3,4}D.[1,2,3,4]

11.下面關(guān)于Python中的變量描述錯誤的是()。

A.全局變量和局部變量兩者的本質(zhì)區(qū)別就是在于作用域

B.全局變量在函數(shù)內(nèi)部和函數(shù)外部都可以訪問使用

C.局部變量也可以在函數(shù)外部使用

D.在函數(shù)內(nèi)部要對全局變量進(jìn)行修改,需要加上global聲明

12.以下關(guān)于Python字符編碼的描述中,正確的是()。

A.Python字符編碼使用ASCII值存儲

B.chr(x)和ord(x)函數(shù)用于在單字符和Unicode值之間進(jìn)行轉(zhuǎn)換

C.print(chr('a’))輸出97

D.print(ord(65))輸出A

13.算法的有窮性是指A.算法程序的運(yùn)行時間是有限的

B.算法程序所處理的數(shù)據(jù)量是有限的

C.算法程序的長度是有限的

D.算法只能被有限的用戶使用

14.下面的說法錯誤的是()。

A.調(diào)用函數(shù)時,在實參前面加一個星號表示序列解包

B.在Python3.x中語句print(*[1,2,3])不能正確執(zhí)行

C.函數(shù)是代碼復(fù)用的一種方式

D.編寫函數(shù)時,一般建議先對參數(shù)進(jìn)行合法性檢查,然后再編寫正常的功能代碼

15.定義學(xué)生選修課程的關(guān)系模式如下:SC(S#,Sn,C#,Cn,G,Cr)(其屬性分別為學(xué)號、姓名、課程號、課程名、成績、學(xué)分)該關(guān)系可進(jìn)一步規(guī)范化為()。

A.S(S#,Sn,C#,Cn,Cr),SC(S#,C#,G)

B.S(S#,Sn),C(C#,Cn,Cr),SC(S#,C#,G)

C.C(C#,Cn,Cr),SC(S#,Sn,C#,G)

D.S(S#,Sn),C(C#,Cn),SC(S#,C#,Cr,G)

16.用Pylnstaller工具把Python源文件打包成一個獨立的可執(zhí)行文件,使用的參數(shù)是()。

A.-LB.-C.-FD.-i

17.下面關(guān)于Python標(biāo)準(zhǔn)庫和第三方庫的說法正確的是()。

A.Python的第三方庫是隨著Python安裝時默認(rèn)自帶的庫

B.Python的標(biāo)準(zhǔn)庫和第三方庫的調(diào)用方式都一樣,都需要用import語句調(diào)用

C.Python的第三方庫需要用import語句調(diào)用,而標(biāo)準(zhǔn)庫不需要

D.Python的標(biāo)準(zhǔn)庫需要用import語句調(diào)用,而第三方庫不需要

18.設(shè)棧與隊列初始狀態(tài)為空。首先A,B,C,D,E依次人棧,再F,G,H,I,J依次入隊;然后依次出棧至???,再依次出隊至隊空。則輸出序列為()。

A.F,G,H,I,J,A,B,C,D,E

B.F,G,H,I,J,E,D,C,B,A

C.E,D,C,B,A,J,I,H,G,F(xiàn)

D.E,D,C,B,A,F(xiàn),G,H,I,J

19.以下關(guān)于Python分支結(jié)構(gòu)的描述中,錯誤的是()。

A.Python分支結(jié)構(gòu)使用保留字if、elif和else來實現(xiàn),每個if后面必須有elif或else

B.if-else結(jié)構(gòu)是可以嵌套的

C.if語句會判斷if后面的邏輯表達(dá)式,當(dāng)表達(dá)式為真時,執(zhí)行if后續(xù)的語句塊

D.縮進(jìn)是Python分支語句的語法部分,縮進(jìn)不正確會影響分支功能

20.下列說法正確的是()。

A.set()可以將任何類型轉(zhuǎn)換為集合類型

B.remove()方法刪除集合中的元素,不管元素存不存在都不報錯

C.集合中的元素不可重復(fù),元素類型只能是不可變數(shù)據(jù)類型

D.集合元素是有序的

21.以下程序的輸出結(jié)果是()。a=10.99print(complex(a))

A.0.99B.10.99i+jC.10.99D.(10.99+0j)

22.下面哪個語句能夠讓列表中的名字按行輸出?names=[‘Dick’,‘Nancy’,‘Roger’]A.print("\n".join(names))

B.print(names.join("\n"))

C.print(names.append("\n"))

D.print(names.join("%s\n",names))

23.用鍵盤輸入數(shù)字5,以下代碼的輸出結(jié)果是()。n=eval(input("請輸入一個整數(shù):"))s=0ifn>=5:n-=1s=4ifn<5:n-=1s=3print(s)

A.4B.3C.0D.2

24.結(jié)構(gòu)化程序的三種基本控制結(jié)構(gòu)是()。

A.遞歸、堆棧和隊列B.過程、子程序和函數(shù)C.順序、選擇和重復(fù)D.調(diào)用、返回和轉(zhuǎn)移

25.以下代碼的輸出結(jié)果是()。t=10.5defabove_zero(t):returnt>0

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

26.下列關(guān)于Python程序格式的描述中正確的是()。

A.注釋可以在一行中的任意位置開始,這一行都會作為注釋不被執(zhí)行

B.縮進(jìn)是指每行代碼前的留白部分,用來表示層次關(guān)系,使代碼更加整潔利于閱讀,所有代碼都需要在行前至少加一個空格

C.Python語言不允許在一行的末尾加分號,這會導(dǎo)致語法錯誤

D.一行代碼的長度如果過長,可以使用“\”反斜杠續(xù)行

27.以下程序的輸出結(jié)果是()。foriin“miss”: forjinrange(3): print(i,end=‘’) ifi==“i”: break

A.missmissmissB.mmmissssssC.mmmiiissssssD.mmmssssss

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

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

B.“r”表示只讀模式

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

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

29.以下描述錯誤的是()。

A.Python是一門動態(tài)的解釋型語言

B.當(dāng)Python腳本程序發(fā)生了異常,如果不處理,運(yùn)行結(jié)果不可預(yù)測

C.編程語言中的異常和錯誤是完全相同的概念

D.Python通過try、except等保留字提供異常處理功能

30.以下關(guān)于函數(shù)的定義與編寫的描述,錯誤的是()。

A.函數(shù)是代碼復(fù)用的一種方式

B.在Python中,使用關(guān)鍵字define定義函數(shù)

C.定義函數(shù)時,即使函數(shù)不需要接收任何參數(shù),也必須保留一對空括號來表示這是一個函數(shù)

D.編寫函數(shù)時,一般建議先對參數(shù)進(jìn)行合法性檢查,然后再進(jìn)行編寫

二、判斷題(10題)31.Python擴(kuò)展庫xlwt支持對Excel2003或更低版本的Excel文件進(jìn)行寫操作。

A.是B.否

32.在Windows平臺上編寫的Python程序無法在Unix平臺運(yùn)行。A.是B.否

33.一個數(shù)字5也是合法的Python表達(dá)式。

A.是B.否

34.文件對象是可以迭代的。

A.是B.否

35.刪除列表中重復(fù)元素最簡單的方法是將其轉(zhuǎn)換為集合后再重新轉(zhuǎn)換為列表。

A.是B.否

36.Python不允許使用關(guān)鍵字作為變量名,允許使用內(nèi)置函數(shù)名作為變量名,但這會改變函數(shù)名的含義。

A.是B.否

37.定義類時實現(xiàn)了__eq__()方法,該類對象即可支持運(yùn)算符==。

A.是B.否

38.在Python中可以為自定義類的對象動態(tài)增加新成員。

A.是B.否

39.Python3.x支持使用中文作為變量名。

A.是B.否

40.在函數(shù)內(nèi)部直接修改形參的值并不影響外部實參的值。

A.是B.否

三、填空題(10題)41.使用列表推導(dǎo)式得到100以內(nèi)所有能被13整除的數(shù)的代碼可以寫作___________________________________。

42.假設(shè)re模塊已導(dǎo)入,那么表達(dá)式re.findall('(\d)\\1+','33abcd112')的值為___________________。

43.已知x={'a':'b','c':'d'},那么表達(dá)式'a'inx的值為______________。

44.表達(dá)式[1]*2的值為_________________。

45.表達(dá)式isinstance(4j,(int,float,complex))的值為_____________。

46.表達(dá)式'abc.txt'.endswith(('.txt','.doc','.jpg'))的值為___________。

47.假設(shè)已從標(biāo)準(zhǔn)庫functools導(dǎo)入reduce()函數(shù),那么表達(dá)式reduce(lambdax,y:x+y,[1,2,3])的值為____。

48.假設(shè)有Python程序文件abc.py,其中只有一條語句print(__name__),那么直接運(yùn)行該程序時得到的結(jié)果為_____________。

49.表達(dá)式'abcab'.replace('a','yy')的值為___________。

50.Python運(yùn)算符中用來計算集合差集的是__________。

四、操作題(3題)51.考生文件夾下存在一個文件PY101.py,請寫代碼替換橫線,不修改其他代碼,實現(xiàn)以下功能:循環(huán)獲得用戶輸入,直至用戶輸入Y或者y字符退出程序。

試題程序:

#請在_______處使用一行代碼或表達(dá)式替換

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

s=input(”請輸入信息:”)

if______:

break

52.考生文件夾下存在一個文件“PY101.py”,請寫代碼替換橫線,不修改其他代碼,實現(xiàn)以下功能。用鍵盤輸入正整數(shù)n,按要求把n輸出到屏幕。

格式要求:寬度為30個字符,以@填充,右對齊,帶千位分隔符。如果輸入的正整數(shù)超過30位,則按照真實長度輸出。例如:用鍵盤輸入的正整數(shù)n為5201314,屏幕輸出@@@@@@@@@@@@@@@5,201,314

試題程序:

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

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

n=eval(input("請輸入正整數(shù)”))print("{_____}".format(n))

53.考生文件夾下存在一個文件“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))

參考答案

1.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’

2.CPython中復(fù)數(shù)類型的虛數(shù)部分的后綴可以為j或者J;復(fù)數(shù)的實部可以單獨存在,但是虛部不可以單獨存在;復(fù)數(shù)有實部和虛部構(gòu)成,可以使用z.real和z.imag分別獲得它的實部和虛部。

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

4.A一個類繼承另一個類,那么被繼承的這個類被稱為超類或者父類。本題選擇A選項。

5.CPython中open()函數(shù)提供了\n7種基本的文件打開模式:r、w、x、a、b、t、+。其中,r、w、x、a可以和b、t、+組合使用。本題選擇C選項。

6.D

7.DPIL庫是Python在圖像處理方向的重要的第三方庫,支持圖像存儲、處理和顯示,它能夠處理幾乎所有的圖片格式,可以完成對圖像的縮放、剪裁、疊加,以及為圖像添加線條和文字等。使用Python處理圖像相關(guān)的程序,首選PIL庫。本題選擇D選項。

8.C該函數(shù)是一個遞歸函數(shù),用來計算1到10之間的所有數(shù)的和,使用函數(shù)時必須調(diào)用函數(shù),即函數(shù)名(<參數(shù)>),也可以將函數(shù)對象實例化。結(jié)果為55,選C項。

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

10.Brange()函數(shù)的語法:range(start,stop,step),作用是生成一個從start參數(shù)的值開始,到stop參數(shù)的值結(jié)束的數(shù)字序列(注意不包含數(shù)stop),step是步進(jìn)參數(shù)。一般默認(rèn)start為0,步進(jìn)step=1,如range(5),生成0,1,2,3,4。list()生成列表,所以最后列表ls=[0,1,2,3,4]。本題選擇B選項。

11.C局部變量是指在函數(shù)內(nèi)部使用的變量,僅在函數(shù)內(nèi)部有效,當(dāng)函數(shù)使用過后,變量從內(nèi)存中釋放,所以C選項錯誤。

12.B在Python中,字符編碼以Unicode值存儲。chr(x)和ord(x)函數(shù)用于在單字符和Unicode值之間進(jìn)行轉(zhuǎn)換。chr(x)函數(shù)返回Unicode值對應(yīng)的字符,ord(x)函數(shù)返回單字符x對應(yīng)的Unicode值,如chr(1010)返回’c’,ord(”和”)返回21644。因此,選項C、D錯誤。本題選擇B選項。

13.A算法的有窮性,是指算法必須能在有限的時間內(nèi)做完,即算法必須能在執(zhí)行有限個步驟之后終止。

14.B在Python3.x中語句print(*[1,2,3])可以正確執(zhí)行,且結(jié)果為123。本題選擇B選項。

15.B關(guān)系SC的主鍵為復(fù)合鍵(學(xué)號,課程號),但明顯存在課程號→課程名,課程號→學(xué)分等,存在非主屬性對主屬性的部分依賴。對關(guān)系SC進(jìn)行如下的分解,就可以消除對非主屬性的部分依賴,滿足第二范式:S(S#,Sn),C(C#,Cn,Cr),SC(S#,C#,G)。本題選擇B選項。

16.CPylnstaller工具沒有-L參數(shù);-D是默認(rèn)值,生成dlst目錄;-F是指在dlst文件夾中只生成獨立的打包文件;-i是指定打包程序使用的圖標(biāo)文件。本題選擇C選項。

17.BA選項錯誤,Python的標(biāo)準(zhǔn)庫是Python安裝時默認(rèn)自帶的庫,而第三方庫需要下載后安裝到Python的安裝目錄下,不同的第三方庫安裝及使用方法不同;C、D兩項錯誤,無論是標(biāo)準(zhǔn)庫還是第三方庫都需要用import語句調(diào)用,所以B正確。

18.D棧稱為“后進(jìn)先出”表或“先進(jìn)后出”的線性表;隊列稱為“先進(jìn)先出”或“后進(jìn)后出”的線性表。A,B,C,D,E依次入棧,則依次出棧順序為E,D,C,B,A;F,G,H,I,J依次入隊,則依次出隊順序為F,G,H,I,J。故輸出順序為E,D,C,B,A,F(xiàn),G,H,I,J。

19.APython分支結(jié)構(gòu)使用保留字if、elif和else來實現(xiàn),每個if后面不一定要有elif或else,A選項錯誤;if-else結(jié)構(gòu)是可以嵌套的,B選項正確;if語句會判斷if后面的邏輯表達(dá)式,當(dāng)表達(dá)式為真時,執(zhí)行if后續(xù)的語句塊,C選項正確;縮進(jìn)是Python分支語句的語法部分,縮進(jìn)不正確會影響分支功能,D選項正確。本題選擇A選項。

20.Cset()函數(shù)將其他組合數(shù)據(jù)類型變成集合類型;remove()刪除集合中指定的元素,不存在則產(chǎn)生KeyError異常;集合元素是無序的,集合的輸出順序與定義順序可以不一致。

21.Da=10.99,說明實部為10.99,虛部為0,故complex(a)返回復(fù)數(shù)(10.99+0j)。本題選擇D選項。

22.A

23.B輸入5,因為n=5滿足第一個if條件,所以11=11-1,11=4,8=4;由于現(xiàn)在11=4,滿足第二個if條件,所以執(zhí)行11=\n11-1,11=3,8=3。Print(s),輸出3。本題選擇B選項。

24.C1966年Boehm和Jacopini證明了程序設(shè)計語言僅僅使用順序、選擇和重復(fù)三種基本控制結(jié)構(gòu)就足以表達(dá)出各種其他形式結(jié)構(gòu)的程序設(shè)計方法。

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

26.D注釋可以在一行的任意位置開始,但只有在“#”后的部分才會被作為注釋不被執(zhí)行;Python語言有嚴(yán)格的格式要求,不能隨意縮進(jìn),只有在需要的時候才在代碼前加空格;Python語言允許在一行的末尾加分號,但一般不建議這么做,會影響代碼的美觀度。

27.B外層for循環(huán)依次將字符串“mlss”中的字符賦給變量i,內(nèi)層for控制循環(huán)3次,注意是先執(zhí)行print再判斷if條件,輸出第一個i后,碰到if判斷條件,當(dāng)i==“i”時退出內(nèi)層循環(huán),所以結(jié)果為mmmlssssss。本題選擇B選項。

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

29.C異常指的是在程序運(yùn)行過程中發(fā)生的異常事件,通常是由外部問

溫馨提示

  • 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

提交評論