湖南省湘潭市全國計算機(jī)等級考試Python語言程序設(shè)計_第1頁
湖南省湘潭市全國計算機(jī)等級考試Python語言程序設(shè)計_第2頁
湖南省湘潭市全國計算機(jī)等級考試Python語言程序設(shè)計_第3頁
湖南省湘潭市全國計算機(jī)等級考試Python語言程序設(shè)計_第4頁
湖南省湘潭市全國計算機(jī)等級考試Python語言程序設(shè)計_第5頁
已閱讀5頁,還剩68頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

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

一、單選題(30題)1.以下程序的輸出結(jié)果是()。try:print((3+4j)*(3-4j))except:print(”運(yùn)算錯誤!!”)

A.(25+0j)B.5C.運(yùn)算錯誤!!D.3

2.以下關(guān)于語言類型的描述中,正確的是()。

A.靜態(tài)語言采用解釋方式執(zhí)行,腳本語言采用編譯方式執(zhí)行

B.C語言是靜態(tài)編譯語言,Python語言是腳本語言

C.編譯是將目標(biāo)代碼轉(zhuǎn)換成源代碼的過程

D.解釋是將源代碼一次性轉(zhuǎn)換成目標(biāo)代碼同時逐條運(yùn)行目標(biāo)代碼的過程

3.下面代碼輸出的圖形是()。

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

A.創(chuàng)建子類時,父類必須包含在當(dāng)前文件夾且位于子類的前面

B.定義子類時,必須在圓括號內(nèi)指明子類所要繼承的父類的名稱

C.如果調(diào)用的是繼承的父類中的公有方法,可以在這個公有方法中訪問父類中的私有屬性和私有方法

D.如果在子類中實現(xiàn)了一個公有方法,該方法也能調(diào)用繼承的父類中的私有方法和私有屬性

5.以下選項,正確的是()。

A.序列類型是一維元素向量,元素之間存在先后關(guān)系,通過索引訪問

B.序列類型可以分為3類:字符串、字典及列表

C.表示單一數(shù)據(jù)的類型被稱為組合數(shù)據(jù)類型

D.Python的字符串、字典、元組及列表都屬于序列類型

6.執(zhí)行以下代碼的結(jié)果是?A.(1,2,3,4)B.(1,2,3,[1,2,4])C.異常報錯D.(1,2,3,[1,2,3],4)

7.在Python中,可以作為源文件擴(kuò)展名的是()。

A.pdfB.docxC.pngD.py

8.如果文件a.txt在目錄’C:\\A’下,執(zhí)行以下代碼會發(fā)生什么操作?()importosos.rmdir(r'C:\\A’)

A.刪除文件夾A,保留文件a.txt

B.刪除文件夾A和文件a.txt

C.刪除文件a.txt,保留文件夾A

D.OSError

9.在Python中,讀入CSV文件保存的二維數(shù)據(jù),按特定分隔符抽取信息,最可能用到的函數(shù)是()。

A.read()B.join()C.replace()D.split()

10.以下程序的輸出結(jié)果是()。Test_list=list(range(6))Print(6inTest_list)

A.6B.6inTest_listC.TrueD.False

11.在數(shù)據(jù)管理技術(shù)發(fā)展的三個階段中,數(shù)據(jù)共享最好的是()。

A.人工管理階段B.文件系統(tǒng)階段C.數(shù)據(jù)庫系統(tǒng)階段D.三個階段相同

12.以下代碼的輸出結(jié)果是()。Is=[]formin‘想念‘fornin‘家人’Is.append(m+n)print(Is)

A.想念家人B.想想念念家家人人C.想家想人念家念人D.[‘想家’,’想人’,’念家’,’念人’]

13.文件family,txt在當(dāng)前代碼所在目錄內(nèi),其內(nèi)容是一段文本:Wearefamily。以下代碼的輸出結(jié)果是()。txt=open(“family.txt”,“r”)print(txt)txt.close()

A.txtB.family,txtC.非其他答案D.Wearefamily

14.以下程序的輸出結(jié)果是()。CLis=list(range(5))print(5inCLis)

A.TrueB.FalseC.0D.-1

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

A.CSV文件只能采用Unicode編碼表示字符

B.CSV文件的每一行是一維數(shù)據(jù),可以使用Python的元組類型表示

C.CSV文件是一種通用的文件,主要用于不同程序之間的數(shù)據(jù)交換

D.CSV文件是一個一維數(shù)據(jù)

16.正則表達(dá)式中的特殊字符,匹配字母,數(shù)字,下劃線()

A.\dB.\DC.\wD.\s

17.在面向?qū)ο蠓椒ㄖ?,不屬于”對象”基本特點(diǎn)的是()。

A.一致性B.分類性C.多態(tài)性D.標(biāo)識唯一性

18.軟件測試的目的是()。

A.評估軟件可靠性B.發(fā)現(xiàn)并改正程序中的錯誤C.改正程序中的錯誤D.發(fā)現(xiàn)程序中的錯誤

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

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

20.以下關(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)不正確會影響分支功能

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

A.N-S圖B.DFD圖C.PAD圖D.程序流程圖

22.在Python中,關(guān)于數(shù)據(jù)類型的描述錯誤的是()。

A.整數(shù)的書寫格式支持十進(jìn)制、二進(jìn)制、八進(jìn)制和十六進(jìn)制

B.如果想知道參數(shù)的數(shù)據(jù)類型,那么可以使用type()函數(shù)獲得

C.整數(shù)、浮點(diǎn)數(shù)、復(fù)數(shù)和布爾值都是Python的基本數(shù)據(jù)類型

D.浮點(diǎn)數(shù)是帶有小數(shù)的數(shù)字,它存在范圍的限制,如果計算結(jié)果超出上限和下限,則不會報錯,但會有warning的警告

23.以下不是Python文件讀寫方法的是()。

A.writelineB.readlineC.readD.write

24.不屬于Python數(shù)據(jù)分析及可視化處理的第三方庫的是()。

A.seabornB.randomC.mayavi2D.NumPy

25.有三個關(guān)系R、S和T如下:[*9]由關(guān)系R和S通過運(yùn)算得到關(guān)系T,則所使用的運(yùn)算為()。

A.笛卡爾積B.交C.并D.自然連接

26.以下語句不會引發(fā)異常的是()。

A.a=b=3+1jB.1+“1”C.3/0D.print“noerror”

27.關(guān)于Python元組類型,以下選項中描述錯誤的是()。

A.元組不可以被修改

B.Python中元組使用圓括號和逗號表示

C.元組中的元素要求是相同類型

D.—個元組可以作為另一個元組的元素,可以采用多級索引獲取信息

28.下面代碼輸出的結(jié)果是()。a=divmod(5,2)b=divmod(2,6)c=set(a+b)print(sum(c))

A.3B.5C.2D.O

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

A.只讀模式“r”B.覆蓋寫模式“w”C.追加寫模式“a”D.創(chuàng)建寫模式“n”

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

A.lambdaB.globalC.withD.pass

二、判斷題(10題)31.只有Python擴(kuò)展庫才需要導(dǎo)入以后才能使用其中的對象,Python標(biāo)準(zhǔn)庫不需要導(dǎo)入即可使用其中的所有對象和方法。

A.是B.否

32.函數(shù)中的return語句一定能夠得到執(zhí)行。

A.是B.否

33.字典的“鍵”必須是不可變的。

A.是B.否

34.元組的訪問速度比列表要快一些,如果定義了一系列常量值,并且主要用途僅僅是對其進(jìn)行遍歷二不需要進(jìn)行任何修改,建議使用元組而不使用列表。

A.是B.否

35.當(dāng)作為條件表達(dá)式時,{}與None等價。

A.是B.否

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

A.是B.否

37.假設(shè)re模塊已成功導(dǎo)入,并且有pattern=pile('^'+'\.'.join([r'\d{1,3}'foriinrange(4)])+'$'),那么表達(dá)式pattern.match('03')的值為None。

A.是B.否

38.在派生類中可以通過“基類名.方法名()”的方式來調(diào)用基類中的方法。

A.是B.否

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

40.如果需要連接大量字符串成為一個字符串,那么使用字符串對象的join()方法比運(yùn)算符+具有更高的效率。

A.是B.否

三、填空題(10題)41.表達(dá)式'Helloworld'.swapcase().swapcase()的值為______________。

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

43.Python程序文件擴(kuò)展名主要有__________和________兩種,其中后者常用于GUI程序。

44.已知x為非空列表,那么表達(dá)式x.reverse()==list(reversed(x))的值為__________。

45.已知列表x=[1,2],那么表達(dá)式list(enumerate(x))的值為_______________。

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

47.假設(shè)列表對象x=[1,1,1],那么表達(dá)式id(x[0])==id(x[2])的值為_____________。

48.表達(dá)式3<5>2的值為_______________。

49.表達(dá)式type(3+4j)in(int,float,complex)的值為____________。

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

四、操作題(3題)51.考生文件夾下存在一個文件“PY201.py”,請寫代碼替換橫線,不修改其他代碼,實現(xiàn)以下功能。使用turtle庫的turtle.fd()函數(shù)和turtle.le£t()函數(shù)繪制一長為200像素黃底紅邊的太陽花,效果如下所示。

試題程序:#請在程序的_____處使用一行代碼或表達(dá)式替換#注意:請不要修改其他已給出代碼importturtleturtle.color(_____(1)_____,_____(2)_____)turtle._____(3)_____foriinrange(36):turtle.fd(_____(4)_____)turtle.left(_____(5)_____)turtle.end_fill()

52.考生文件夾下存在3個Python源文件,分別對應(yīng)3個問題,請按照文件內(nèi)說明修改代碼,實現(xiàn)以下功能。法定節(jié)假日是根據(jù)各國、各民族的風(fēng)俗習(xí)慣或紀(jì)念要求,由國家法律統(tǒng)一規(guī)定的用以慶祝及度假的休息時間。法定節(jié)假日制度是國家政治、經(jīng)濟(jì)、文化制度的重要反映,涉及經(jīng)濟(jì)社會的多個方面,涉及廣大人民群眾的切身利益。法定節(jié)假日的安排,為居民出行、購物和休閑提供了時間上的便利,為拉動內(nèi)需、促進(jìn)經(jīng)濟(jì)增長做出了積極貢獻(xiàn)。給出一個某年的節(jié)假日的放假日期CSV文件(PY301-vacations.CSV),內(nèi)容示例如下。序號節(jié)假日名稱開始月日結(jié)束月日1元旦123001012春節(jié)021502213清明節(jié)040504074勞動節(jié)050105035端午節(jié)06160618以第1行為例,1230表示12月30日,0101表示1月1日。問題1:在“PY301-1.py”文件中修改代碼,讀入CSV文件中的數(shù)據(jù),獲得用戶輸入。根據(jù)用戶輸入的節(jié)假日名稱,輸出此節(jié)假日的時間范圍。輸入和輸出本例格式如下。請輸入節(jié)假日名稱(例如,春節(jié)):春節(jié)春節(jié)的假期位于0215~0221之間試題程序:#以下代碼為提示框架#請在程序的...處使用一行或多行代碼替換#請在程序的處使用一行代碼替換#注意:提示框架的代碼可以任意修改,以完成程序功能為準(zhǔn)Is=[]print("{}的假期位于{}-{}之間”,.format())問題2:在“PY301-2.py”文件中修改代碼,讀入CSV文件的數(shù)據(jù),獲得用戶輸入。用戶輸入一組范圍是1?7的整數(shù)作為序號,序號間采用空格符分隔,以回車符結(jié)束。輸出這些序號對應(yīng)的節(jié)假日的名稱、時間范圍,每個節(jié)假日的信息一行。本次輸出完成后,重新回到輸入序號的狀態(tài)。輸入和輸出示例格式如下。請輸入節(jié)假日序號:15元旦(1)假期是12月30日至01月01日之間端午節(jié)假期(5)是06月16日至06月18日之間請輸入節(jié)假日序號:試題程序:#以下代碼為提示框架#請在程序的...處使用一行或多行代碼替換#注意:提示框架的代碼可以任意修改,以完成程序功能為準(zhǔn)...Is=[]print("{}({})假期是{}月{}日至{}月{}日之間".format())問題3:在問題2的基礎(chǔ)上,在“PY301-3.Py”文件中修改代碼,對輸入的每個序號做合法性處理。如果輸入的數(shù)字不不合法,請輸出“輸入節(jié)假日編號有誤!”,繼續(xù)輸出后續(xù)信息,然后重新回到輸入序號的狀態(tài)。輸入和輸出示例格式如下。請輸入節(jié)假日序號:51411端午節(jié)(5)假期是06月16日至06月18日之間輸入節(jié)假日編號有誤!輸入節(jié)假日編號有誤!請輸入節(jié)假日編號:試題程序:#以下代碼為提示框架#請在程序的...處使用一行或多行代碼替換#請在程序的處用一行代碼替換#注意:提示框架的代碼可以任意修改,以完成程序功能為準(zhǔn)Is=[]print("{}({})假期是{}月{}日至{}月{}日之間".format())ifflag==False:print("輸入節(jié)假日編號有誤!”)...

53.考生文件夾下存在一個文件“PY201.py”,請寫代碼替換橫線,不修改其他代碼,實現(xiàn)以下功能。使用turtle庫的turtle.fd()函數(shù)和turtle.seth()函數(shù)繪制一個邊長為200像素、畫筆為2號的正五邊形,三五邊形5個內(nèi)角均為108度。效果如下所示,箭頭也應(yīng)嚴(yán)格一致。

試題程序:#請在_____處使用一行代碼替換#注意:請不要修改其他已給出代碼Importturtleturtle.pensize(2)d=_____(1)_____Foriinrange(5):turtle.seth(d)d+=_____(2)_____turtle.fd(_____(3)_____)

參考答案

1.A(3+4j)*(3-4j)是復(fù)數(shù)的乘法運(yùn)算。設(shè)c1=a+bj,c2=c+dj(a、b、c、d均為實數(shù)),c1*c2=\n(ac-bd)+(bc+ad)j0結(jié)果是(25+0j)。本題選擇A選項。

2.B高級語言根據(jù)計算機(jī)執(zhí)行機(jī)制的不同可分為兩類:靜態(tài)語言和動態(tài)語言。靜態(tài)語言采用編譯方式執(zhí)行,腳本語言采用解釋方式執(zhí)行。例如,C語言是靜態(tài)語言,Python是腳本語言。編譯是將源代碼轉(zhuǎn)換成目標(biāo)代碼的過程。解釋是將源代碼逐條轉(zhuǎn)換成目標(biāo)代碼同時逐條運(yùn)行目標(biāo)代碼的過程。本題選B選項。

3.Ai的取值區(qū)間為[-3,3)且為整數(shù),當(dāng)i=0時,根據(jù)判斷條件應(yīng)在一行輸出7個*,且行前無空格。通過對4個選項進(jìn)行比較,采用排除法,本題選擇A選項。

4.D在Python類的繼承中,如果調(diào)用的是繼承父類的公有方法,可以在公有方法中訪問父類中的私有屬性和私有方法;但是如果子類中實現(xiàn)了一個公有方法,那么這個方法是不能夠調(diào)用繼承父類中的私有方法和私有屬性的,本題選擇D選項。

5.A序列類型是一維元素向量,元素之間存在先后關(guān)系,通過索引訪問。Python的很多數(shù)據(jù)類型是序列類型,其中比較重要的是字符串類型、列表類型及元組類型。字典是存儲可變數(shù)量鍵值對的數(shù)據(jù)結(jié)構(gòu),通過字典類型實現(xiàn)映射,所以字典是映射類型,不是序列類型。B、D兩項錯誤。表示多個數(shù)據(jù)的類型被稱為組合數(shù)據(jù)類型,C錯誤。本題選擇A選項。

6.B

7.DPython源文件的擴(kuò)展為py。本題選擇D選項。

8.D使用rmdir()刪除目錄之前要先清除其中所有的文件,否則會報OSError錯誤。

9.D在Python中,讀取CSV文件中的二維碼數(shù)據(jù)采用遍歷循環(huán)和字符串的split()方法相結(jié)合,方法如下:f=open('cpi.csv”,”r”)ls=[]forlineinf:Is.append(line,strip(“\\n').split(“,”))f.close()本題選擇D選項。

10.DTest_llst是列表類型,6inTest_llst表示如果6是列表Test_llst的元素,則返回True,否則返回False。本題選擇D選項。

11.C數(shù)據(jù)管理發(fā)展至今已經(jīng)歷了三個階段:人工管理階段、文件系統(tǒng)階段和數(shù)據(jù)庫系統(tǒng)階段。其中最后一個階段結(jié)構(gòu)簡單,使用方便邏輯性強(qiáng)物理性少,在各方面的表現(xiàn)都最好,一直占據(jù)數(shù)據(jù)庫領(lǐng)域的主導(dǎo)地位,所以選擇C)。

12.D外層fox第1次循環(huán)將字符’想’賦給變量m,m=‘想’,內(nèi)層for第1次循環(huán)將’家’賦給變量n,則m+\nn連接字符,利用列表的append()方法將連接后的字符’想家’加入列表Is;內(nèi)層for第2次循環(huán)將’人’賦給變量n,則m+\nn連接字符,利用列表的append()方法將連接后的字符’想人’加入列表Is。外層for第2次循環(huán)將字符’念’賦給變量m,m\n=’念’,內(nèi)層for第1次循環(huán)將家賦給變量n,則m+\nn連接字符,利用列表的append()方法將連接后的字符’念家'加入列表Is;內(nèi)層for第2次循環(huán)將’人’賦給變量n,則m+\nn連接字符,利用列表的append()方法將連接后的字符’念人’加入列表Is。最后列表Is=\n[‘想家’,’想人’,’念家’,’念人’],print(ls)輸出Is。本題選擇D選項。

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

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

15.CCSV文件是一種通用的、相對簡單的文件,最廣泛的應(yīng)用是在程序之間轉(zhuǎn)移表格數(shù)據(jù)。CSV文件沒有通用標(biāo)準(zhǔn)規(guī)范,使用的字符編碼同樣沒有被指定,但ASCII是最基本的通用編碼。CSV文件可以保存一維數(shù)據(jù)或二維數(shù)據(jù),每一行是一維數(shù)據(jù),可以使用Python的列表類型表示。本題選擇C選項。

16.C

17.A對象有如下一些基本特點(diǎn):標(biāo)識唯一性、分類性、多態(tài)性、封裝性、模塊獨(dú)立性好。所以選擇A。

18.D軟件測試是為了發(fā)現(xiàn)錯誤而執(zhí)行程序的過程,測試要以查找錯誤為中心,而不是為了演示軟件的正確功能。本題選擇D選項。

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

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

21.B解析:軟件開發(fā)階段包括需求分析、總體設(shè)計、詳細(xì)設(shè)計、編碼和測試5個階段。其中需求分析階段常用的工具是數(shù)據(jù)流圖(簡稱DFD)和數(shù)據(jù)字典(簡稱DD)。常見的詳細(xì)設(shè)計的圖形描述工具主要有程序流程圖、N-S結(jié)構(gòu)圖、問題分析圖(簡稱PAD圖)。

22.D浮點(diǎn)數(shù)的取值范圍為-10308~10308,浮點(diǎn)數(shù)之間的區(qū)分精度約為2.22×10-16。對除高精度科學(xué)計算外的絕大部分運(yùn)算來說,浮點(diǎn)數(shù)類型的數(shù)值范圍和小數(shù)精度足夠“可靠”,一般認(rèn)為浮點(diǎn)數(shù)類型沒有范圍限制。如果計算結(jié)果超出上限和下限會產(chǎn)生溢出錯誤。本題選擇D選項。

23.APython文件的讀寫方法有(file表示使用open函數(shù)創(chuàng)建的對象):\nfile.read([size]):參數(shù)可選,若未給定參數(shù)或參數(shù)為負(fù)則讀取整個文件內(nèi)容;若給出參數(shù),則讀取前size長度的字符串或字節(jié)流。\nfile.readline([size]):參數(shù)可選,若未給定參數(shù)或參數(shù)為負(fù)則讀取一行內(nèi)容;若給出參數(shù),則讀取該行前size長度的字符串或字節(jié)流。\nfile.readlines([hint]):參數(shù)可選,若未給定參數(shù)或參數(shù)為負(fù)則從文件中讀取所有行,以每行為元素形成一個列表;若給出參數(shù),則讀取hint行。\nfile.write(str):將字符串或字節(jié)流寫入文件。\nfile.writelines(1ines):向文件寫入一個序列字符串列表。

24.B屬于Python數(shù)據(jù)分析及可視化的第三方庫的有seabom、NumPy、scipy、pandas、matplotlib、TVTK、mayavi(也稱mayavi2)等。random庫是Python用于產(chǎn)生各種分布的偽隨機(jī)數(shù)序列的庫。本題選擇B選項。

25.D自然連接是一種特殊的等值連接,它要求兩個關(guān)系中進(jìn)行比較的分量必須是相同的屬性,并且在結(jié)果中把重復(fù)的屬性列去掉,所以根據(jù)T關(guān)系中的有序組可知R與S進(jìn)行的是自然連接操作。

26.A不同類型之間不能相互運(yùn)算;除數(shù)不能為0;print“noerror”語句是Python2.x系列的語法,不適用Python3.x系列。本題選擇A選項。

27.C元組與列表類似,可存儲不同類型的數(shù)據(jù);元組是不可改變的,創(chuàng)建后不能再做任何修改操作。本題選擇C選項。

28.Adivmod(a,b)函數(shù)返回的是兩個數(shù)值的商和余數(shù),那么a和b的值就分別是(2,1)和(0,2),而e是把a(bǔ)、b相加后轉(zhuǎn)為集合型,那么a+b為(2,1,0,2),轉(zhuǎn)成集合后即為{0,1,2},最后是取總和的sum函數(shù),所以相加起來是的總和為3。

29.D文件打開模式如下?!癡”:只讀模式,如果文件不存在,返回異常FileNotFmindError,默認(rèn)值?!癤”:創(chuàng)建寫模式,文件不存在則創(chuàng)建,存在則返回異常FileExlstsError?!皐”:覆蓋寫模式,文件不存在則創(chuàng)建,存在則完全覆蓋原文件?!癮”:追加寫模式,文件不存在則創(chuàng)建,存在則在原文件最后追加內(nèi)容。文件打開模式中沒有“n”。本題選擇D選項。

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

31.N

32.N

33.Y

34.Y

35.Y

36.N

37.N

38.Y

39.Npython代碼支持window和Linux下跨平臺

40.Y

41.'Helloworld'

42.True

43.py、pyw

44.False

45.[(0,1),(1,2)]

46.[1,4,5]

47.True

48.True

49.True

50.[4,5]

51.importturtleturtle.color(“red”.”yellow”)turtle.begin_fill()foriinrange(36):turtle.fd(200)turtle,left(110)turtle.end_fill()該題考查的是用Python標(biāo)準(zhǔn)庫turtle庫繪制太陽花。根據(jù)題干可知,太陽花的邊為紅色且用黃色填充,因此第1空填red,第2空填yellow。由于涉及填充圖形,所以要調(diào)用begin_fill()函數(shù),因此第3空應(yīng)填入be-gin_fill()。題目要求邊長為200像素,則第4空應(yīng)填200。太陽花一共36個角,每個角10度,因此繪制一條邊需要逆時針旋轉(zhuǎn)170度再繪制下一條邊,因此第5空應(yīng)填入170。

52.Fi=open(“PY301-vacations.csv”,”r”)Is=[]Foulineinfi:Is.append(line.strip(“\\n”).split(“,”))S=input(“請輸入節(jié)假日名稱”)Forlineinis:Ifs==line[1]Print(“{}的假期位于{}-{}之間”.format(line[1],line[2],line[3]))(2)Fi=open(“PY301-vacations.csv”,”r”)Is=[]Foulineinfi:Is.append(line.strip(“\\n”).split(“,”))S=input(“請輸入節(jié)假日序號”).split(“”)WhiletrueForiins:Forlineinis:Ifi==line[0]Print(“{}({})的假期位于{}月{}日之間”.format(line[1],line[0],line[2][0]+line[2][1],line[2][2]+line[2][3],line[3][0]+line[3][1],line[3][2]+line[3][3]))S=input(“請輸入節(jié)假日序號:”).split(“”)(3)Fi=open(“PY301-vacations.csv”,”r”)Is=[]Foulineinfi:Is.append(line.strip(“\\n”).split(“,”))S=input(“請輸入節(jié)假日序號”).split(“”)Whiles!=””:Foriins:Flag=falseForlineinis:Ifi==line[0]Print(“{}({})的假期位于{}月{}日之間”.format(line[1],line[0],line[2][0]+line[2][1],line[2][2]+line[2][3],line[3][0]+line[3][1],line[3][2]+line[3][3]))Flag=TureIfflag==falsePrint(“輸入節(jié)假日編號有誤!”)S=input(“請輸入節(jié)假日序號:”).split(“”)(1)\r\n對文件的讀操作需要使用open()函數(shù),模式為”r";將文件讀入后,需要把CSV文件的內(nèi)容轉(zhuǎn)換成二維數(shù)據(jù),并將其轉(zhuǎn)換成二維列表對象。首先定義一個列表Is,把讀入的每行數(shù)據(jù)使用strip()函數(shù)清除掉換行符,再使用split()函數(shù)在元素之間以逗號分隔存儲在列表Is中,split()函數(shù)返回的是一個列表,因此把CSV文件轉(zhuǎn)換成二維列表對象。使用input()函數(shù)獲取用戶輸入,再用for循環(huán)遍歷二維列表,如果輸入的節(jié)假日名稱在列表中,則輸出對應(yīng)的時間段。(2)\r\n用戶可以輸入多個節(jié)假日的序號,因此可以考慮使用split()方法把輸入的序號放在一個列表中,然后使用兩個for循環(huán),一個用來遍歷二維列表,一個用來遍歷輸入的序號列表,當(dāng)輸入的序號與二維列表中的一樣時,輸出結(jié)果。因為題目的示例輸出在數(shù)字月和日期之間加入了漢字,此時分析存入二維列表中的數(shù)字,可以知道存入的是字符串,即在CSV文件中初始月日和結(jié)束月日都是長度為4的字符串,屬于序列類型,因此可以使用索引訪問。(3)在問題2的基礎(chǔ)上,加上一個標(biāo)記,如果輸入的序號正確,則標(biāo)記為True;輸入錯誤,標(biāo)記為False,最后根據(jù)標(biāo)記判斷是否輸出“輸入節(jié)假日編號有誤!\r\n”。分析題目要求可知,標(biāo)記是在輸入的序號在二維列表中可以查到時變?yōu)門rue,其他情況都為False,所以標(biāo)記應(yīng)該放在遍歷序號列表的for循環(huán)內(nèi)、遍歷二維列表的for循環(huán)外。

53.importturtleturtle,pensize(2)d=72foriinrange(5):turtle.seth(d)d+=72turtle.fd(200)根據(jù)圖中箭頭的方向可知,在繪制該五邊形時先調(diào)整小海龜?shù)姆较颍倮L制邊長(即小海龜?shù)男羞M(jìn)距離)。五邊形的內(nèi)角為108度,則外角為72度,即小海龜?shù)姆较蛎看我黾?2度再繪制下一條邊,因此第1空和第2空均應(yīng)填入72。題目要求使用turtle.fd()函數(shù)。turtle.\r\nfd()函數(shù)用于控制小海龜向當(dāng)前行進(jìn)方向前進(jìn)一個指定距離,題目要求邊長為200像素,因此第3空填入200。湖南省湘潭市全國計算機(jī)等級考試Python語言程序設(shè)計學(xué)校:________班級:________姓名:________考號:________

一、單選題(30題)1.以下程序的輸出結(jié)果是()。try:print((3+4j)*(3-4j))except:print(”運(yùn)算錯誤!!”)

A.(25+0j)B.5C.運(yùn)算錯誤!!D.3

2.以下關(guān)于語言類型的描述中,正確的是()。

A.靜態(tài)語言采用解釋方式執(zhí)行,腳本語言采用編譯方式執(zhí)行

B.C語言是靜態(tài)編譯語言,Python語言是腳本語言

C.編譯是將目標(biāo)代碼轉(zhuǎn)換成源代碼的過程

D.解釋是將源代碼一次性轉(zhuǎn)換成目標(biāo)代碼同時逐條運(yùn)行目標(biāo)代碼的過程

3.下面代碼輸出的圖形是()。

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

A.創(chuàng)建子類時,父類必須包含在當(dāng)前文件夾且位于子類的前面

B.定義子類時,必須在圓括號內(nèi)指明子類所要繼承的父類的名稱

C.如果調(diào)用的是繼承的父類中的公有方法,可以在這個公有方法中訪問父類中的私有屬性和私有方法

D.如果在子類中實現(xiàn)了一個公有方法,該方法也能調(diào)用繼承的父類中的私有方法和私有屬性

5.以下選項,正確的是()。

A.序列類型是一維元素向量,元素之間存在先后關(guān)系,通過索引訪問

B.序列類型可以分為3類:字符串、字典及列表

C.表示單一數(shù)據(jù)的類型被稱為組合數(shù)據(jù)類型

D.Python的字符串、字典、元組及列表都屬于序列類型

6.執(zhí)行以下代碼的結(jié)果是?A.(1,2,3,4)B.(1,2,3,[1,2,4])C.異常報錯D.(1,2,3,[1,2,3],4)

7.在Python中,可以作為源文件擴(kuò)展名的是()。

A.pdfB.docxC.pngD.py

8.如果文件a.txt在目錄’C:\\A’下,執(zhí)行以下代碼會發(fā)生什么操作?()importosos.rmdir(r'C:\\A’)

A.刪除文件夾A,保留文件a.txt

B.刪除文件夾A和文件a.txt

C.刪除文件a.txt,保留文件夾A

D.OSError

9.在Python中,讀入CSV文件保存的二維數(shù)據(jù),按特定分隔符抽取信息,最可能用到的函數(shù)是()。

A.read()B.join()C.replace()D.split()

10.以下程序的輸出結(jié)果是()。Test_list=list(range(6))Print(6inTest_list)

A.6B.6inTest_listC.TrueD.False

11.在數(shù)據(jù)管理技術(shù)發(fā)展的三個階段中,數(shù)據(jù)共享最好的是()。

A.人工管理階段B.文件系統(tǒng)階段C.數(shù)據(jù)庫系統(tǒng)階段D.三個階段相同

12.以下代碼的輸出結(jié)果是()。Is=[]formin‘想念‘fornin‘家人’Is.append(m+n)print(Is)

A.想念家人B.想想念念家家人人C.想家想人念家念人D.[‘想家’,’想人’,’念家’,’念人’]

13.文件family,txt在當(dāng)前代碼所在目錄內(nèi),其內(nèi)容是一段文本:Wearefamily。以下代碼的輸出結(jié)果是()。txt=open(“family.txt”,“r”)print(txt)txt.close()

A.txtB.family,txtC.非其他答案D.Wearefamily

14.以下程序的輸出結(jié)果是()。CLis=list(range(5))print(5inCLis)

A.TrueB.FalseC.0D.-1

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

A.CSV文件只能采用Unicode編碼表示字符

B.CSV文件的每一行是一維數(shù)據(jù),可以使用Python的元組類型表示

C.CSV文件是一種通用的文件,主要用于不同程序之間的數(shù)據(jù)交換

D.CSV文件是一個一維數(shù)據(jù)

16.正則表達(dá)式中的特殊字符,匹配字母,數(shù)字,下劃線()

A.\dB.\DC.\wD.\s

17.在面向?qū)ο蠓椒ㄖ?,不屬于”對象”基本特點(diǎn)的是()。

A.一致性B.分類性C.多態(tài)性D.標(biāo)識唯一性

18.軟件測試的目的是()。

A.評估軟件可靠性B.發(fā)現(xiàn)并改正程序中的錯誤C.改正程序中的錯誤D.發(fā)現(xiàn)程序中的錯誤

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

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

20.以下關(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)不正確會影響分支功能

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

A.N-S圖B.DFD圖C.PAD圖D.程序流程圖

22.在Python中,關(guān)于數(shù)據(jù)類型的描述錯誤的是()。

A.整數(shù)的書寫格式支持十進(jìn)制、二進(jìn)制、八進(jìn)制和十六進(jìn)制

B.如果想知道參數(shù)的數(shù)據(jù)類型,那么可以使用type()函數(shù)獲得

C.整數(shù)、浮點(diǎn)數(shù)、復(fù)數(shù)和布爾值都是Python的基本數(shù)據(jù)類型

D.浮點(diǎn)數(shù)是帶有小數(shù)的數(shù)字,它存在范圍的限制,如果計算結(jié)果超出上限和下限,則不會報錯,但會有warning的警告

23.以下不是Python文件讀寫方法的是()。

A.writelineB.readlineC.readD.write

24.不屬于Python數(shù)據(jù)分析及可視化處理的第三方庫的是()。

A.seabornB.randomC.mayavi2D.NumPy

25.有三個關(guān)系R、S和T如下:[*9]由關(guān)系R和S通過運(yùn)算得到關(guān)系T,則所使用的運(yùn)算為()。

A.笛卡爾積B.交C.并D.自然連接

26.以下語句不會引發(fā)異常的是()。

A.a=b=3+1jB.1+“1”C.3/0D.print“noerror”

27.關(guān)于Python元組類型,以下選項中描述錯誤的是()。

A.元組不可以被修改

B.Python中元組使用圓括號和逗號表示

C.元組中的元素要求是相同類型

D.—個元組可以作為另一個元組的元素,可以采用多級索引獲取信息

28.下面代碼輸出的結(jié)果是()。a=divmod(5,2)b=divmod(2,6)c=set(a+b)print(sum(c))

A.3B.5C.2D.O

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

A.只讀模式“r”B.覆蓋寫模式“w”C.追加寫模式“a”D.創(chuàng)建寫模式“n”

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

A.lambdaB.globalC.withD.pass

二、判斷題(10題)31.只有Python擴(kuò)展庫才需要導(dǎo)入以后才能使用其中的對象,Python標(biāo)準(zhǔn)庫不需要導(dǎo)入即可使用其中的所有對象和方法。

A.是B.否

32.函數(shù)中的return語句一定能夠得到執(zhí)行。

A.是B.否

33.字典的“鍵”必須是不可變的。

A.是B.否

34.元組的訪問速度比列表要快一些,如果定義了一系列常量值,并且主要用途僅僅是對其進(jìn)行遍歷二不需要進(jìn)行任何修改,建議使用元組而不使用列表。

A.是B.否

35.當(dāng)作為條件表達(dá)式時,{}與None等價。

A.是B.否

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

A.是B.否

37.假設(shè)re模塊已成功導(dǎo)入,并且有pattern=pile('^'+'\.'.join([r'\d{1,3}'foriinrange(4)])+'$'),那么表達(dá)式pattern.match('03')的值為None。

A.是B.否

38.在派生類中可以通過“基類名.方法名()”的方式來調(diào)用基類中的方法。

A.是B.否

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

40.如果需要連接大量字符串成為一個字符串,那么使用字符串對象的join()方法比運(yùn)算符+具有更高的效率。

A.是B.否

三、填空題(10題)41.表達(dá)式'Helloworld'.swapcase().swapcase()的值為______________。

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

43.Python程序文件擴(kuò)展名主要有__________和________兩種,其中后者常用于GUI程序。

44.已知x為非空列表,那么表達(dá)式x.reverse()==list(reversed(x))的值為__________。

45.已知列表x=[1,2],那么表達(dá)式list(enumerate(x))的值為_______________。

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

47.假設(shè)列表對象x=[1,1,1],那么表達(dá)式id(x[0])==id(x[2])的值為_____________。

48.表達(dá)式3<5>2的值為_______________。

49.表達(dá)式type(3+4j)in(int,float,complex)的值為____________。

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

四、操作題(3題)51.考生文件夾下存在一個文件“PY201.py”,請寫代碼替換橫線,不修改其他代碼,實現(xiàn)以下功能。使用turtle庫的turtle.fd()函數(shù)和turtle.le£t()函數(shù)繪制一長為200像素黃底紅邊的太陽花,效果如下所示。

試題程序:#請在程序的_____處使用一行代碼或表達(dá)式替換#注意:請不要修改其他已給出代碼importturtleturtle.color(_____(1)_____,_____(2)_____)turtle._____(3)_____foriinrange(36):turtle.fd(_____(4)_____)turtle.left(_____(5)_____)turtle.end_fill()

52.考生文件夾下存在3個Python源文件,分別對應(yīng)3個問題,請按照文件內(nèi)說明修改代碼,實現(xiàn)以下功能。法定節(jié)假日是根據(jù)各國、各民族的風(fēng)俗習(xí)慣或紀(jì)念要求,由國家法律統(tǒng)一規(guī)定的用以慶祝及度假的休息時間。法定節(jié)假日制度是國家政治、經(jīng)濟(jì)、文化制度的重要反映,涉及經(jīng)濟(jì)社會的多個方面,涉及廣大人民群眾的切身利益。法定節(jié)假日的安排,為居民出行、購物和休閑提供了時間上的便利,為拉動內(nèi)需、促進(jìn)經(jīng)濟(jì)增長做出了積極貢獻(xiàn)。給出一個某年的節(jié)假日的放假日期CSV文件(PY301-vacations.CSV),內(nèi)容示例如下。序號節(jié)假日名稱開始月日結(jié)束月日1元旦123001012春節(jié)021502213清明節(jié)040504074勞動節(jié)050105035端午節(jié)06160618以第1行為例,1230表示12月30日,0101表示1月1日。問題1:在“PY301-1.py”文件中修改代碼,讀入CSV文件中的數(shù)據(jù),獲得用戶輸入。根據(jù)用戶輸入的節(jié)假日名稱,輸出此節(jié)假日的時間范圍。輸入和輸出本例格式如下。請輸入節(jié)假日名稱(例如,春節(jié)):春節(jié)春節(jié)的假期位于0215~0221之間試題程序:#以下代碼為提示框架#請在程序的...處使用一行或多行代碼替換#請在程序的處使用一行代碼替換#注意:提示框架的代碼可以任意修改,以完成程序功能為準(zhǔn)Is=[]print("{}的假期位于{}-{}之間”,.format())問題2:在“PY301-2.py”文件中修改代碼,讀入CSV文件的數(shù)據(jù),獲得用戶輸入。用戶輸入一組范圍是1?7的整數(shù)作為序號,序號間采用空格符分隔,以回車符結(jié)束。輸出這些序號對應(yīng)的節(jié)假日的名稱、時間范圍,每個節(jié)假日的信息一行。本次輸出完成后,重新回到輸入序號的狀態(tài)。輸入和輸出示例格式如下。請輸入節(jié)假日序號:15元旦(1)假期是12月30日至01月01日之間端午節(jié)假期(5)是06月16日至06月18日之間請輸入節(jié)假日序號:試題程序:#以下代碼為提示框架#請在程序的...處使用一行或多行代碼替換#注意:提示框架的代碼可以任意修改,以完成程序功能為準(zhǔn)...Is=[]print("{}({})假期是{}月{}日至{}月{}日之間".format())問題3:在問題2的基礎(chǔ)上,在“PY301-3.Py”文件中修改代碼,對輸入的每個序號做合法性處理。如果輸入的數(shù)字不不合法,請輸出“輸入節(jié)假日編號有誤!”,繼續(xù)輸出后續(xù)信息,然后重新回到輸入序號的狀態(tài)。輸入和輸出示例格式如下。請輸入節(jié)假日序號:51411端午節(jié)(5)假期是06月16日至06月18日之間輸入節(jié)假日編號有誤!輸入節(jié)假日編號有誤!請輸入節(jié)假日編號:試題程序:#以下代碼為提示框架#請在程序的...處使用一行或多行代碼替換#請在程序的處用一行代碼替換#注意:提示框架的代碼可以任意修改,以完成程序功能為準(zhǔn)Is=[]print("{}({})假期是{}月{}日至{}月{}日之間".format())ifflag==False:print("輸入節(jié)假日編號有誤!”)...

53.考生文件夾下存在一個文件“PY201.py”,請寫代碼替換橫線,不修改其他代碼,實現(xiàn)以下功能。使用turtle庫的turtle.fd()函數(shù)和turtle.seth()函數(shù)繪制一個邊長為200像素、畫筆為2號的正五邊形,三五邊形5個內(nèi)角均為108度。效果如下所示,箭頭也應(yīng)嚴(yán)格一致。

試題程序:#請在_____處使用一行代碼替換#注意:請不要修改其他已給出代碼Importturtleturtle.pensize(2)d=_____(1)_____Foriinrange(5):turtle.seth(d)d+=_____(2)_____turtle.fd(_____(3)_____)

參考答案

1.A(3+4j)*(3-4j)是復(fù)數(shù)的乘法運(yùn)算。設(shè)c1=a+bj,c2=c+dj(a、b、c、d均為實數(shù)),c1*c2=\n(ac-bd)+(bc+ad)j0結(jié)果是(25+0j)。本題選擇A選項。

2.B高級語言根據(jù)計算機(jī)執(zhí)行機(jī)制的不同可分為兩類:靜態(tài)語言和動態(tài)語言。靜態(tài)語言采用編譯方式執(zhí)行,腳本語言采用解釋方式執(zhí)行。例如,C語言是靜態(tài)語言,Python是腳本語言。編譯是將源代碼轉(zhuǎn)換成目標(biāo)代碼的過程。解釋是將源代碼逐條轉(zhuǎn)換成目標(biāo)代碼同時逐條運(yùn)行目標(biāo)代碼的過程。本題選B選項。

3.Ai的取值區(qū)間為[-3,3)且為整數(shù),當(dāng)i=0時,根據(jù)判斷條件應(yīng)在一行輸出7個*,且行前無空格。通過對4個選項進(jìn)行比較,采用排除法,本題選擇A選項。

4.D在Python類的繼承中,如果調(diào)用的是繼承父類的公有方法,可以在公有方法中訪問父類中的私有屬性和私有方法;但是如果子類中實現(xiàn)了一個公有方法,那么這個方法是不能夠調(diào)用繼承父類中的私有方法和私有屬性的,本題選擇D選項。

5.A序列類型是一維元素向量,元素之間存在先后關(guān)系,通過索引訪問。Python的很多數(shù)據(jù)類型是序列類型,其中比較重要的是字符串類型、列表類型及元組類型。字典是存儲可變數(shù)量鍵值對的數(shù)據(jù)結(jié)構(gòu),通過字典類型實現(xiàn)映射,所以字典是映射類型,不是序列類型。B、D兩項錯誤。表示多個數(shù)據(jù)的類型被稱為組合數(shù)據(jù)類型,C錯誤。本題選擇A選項。

6.B

7.DPython源文件的擴(kuò)展為py。本題選擇D選項。

8.D使用rmdir()刪除目錄之前要先清除其中所有的文件,否則會報OSError錯誤。

9.D在Python中,讀取CSV文件中的二維碼數(shù)據(jù)采用遍歷循環(huán)和字符串的split()方法相結(jié)合,方法如下:f=open('cpi.csv”,”r”)ls=[]forlineinf:Is.append(line,strip(“\\n').split(“,”))f.close()本題選擇D選項。

10.DTest_llst是列表類型,6inTest_llst表示如果6是列表Test_llst的元素,則返回True,否則返回False。本題選擇D選項。

11.C數(shù)據(jù)管理發(fā)展至今已經(jīng)歷了三個階段:人工管理階段、文件系統(tǒng)階段和數(shù)據(jù)庫系統(tǒng)階段。其中最后一個階段結(jié)構(gòu)簡單,使用方便邏輯性強(qiáng)物理性少,在各方面的表現(xiàn)都最好,一直占據(jù)數(shù)據(jù)庫領(lǐng)域的主導(dǎo)地位,所以選擇C)。

12.D外層fox第1次循環(huán)將字符’想’賦給變量m,m=‘想’,內(nèi)層for第1次循環(huán)將’家’賦給變量n,則m+\nn連接字符,利用列表的append()方法將連接后的字符’想家’加入列表Is;內(nèi)層for第2次循環(huán)將’人’賦給變量n,則m+\nn連接字符,利用列表的append()方法將連接后的字符’想人’加入列表Is。外層for第2次循環(huán)將字符’念’賦給變量m,m\n=’念’,內(nèi)層for第1次循環(huán)將家賦給變量n,則m+\nn連接字符,利用列表的append()方法將連接后的字符’念家'加入列表Is;內(nèi)層for第2次循環(huán)將’人’賦給變量n,則m+\nn連接字符,利用列表的append()方法將連接后的字符’念人’加入列表Is。最后列表Is=\n[‘想家’,’想人’,’念家’,’念人’],print(ls)輸出Is。本題選擇D選項。

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

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

15.CCSV文件是一種通用的、相對簡單的文件,最廣泛的應(yīng)用是在程序之間轉(zhuǎn)移表格數(shù)據(jù)。CSV文件沒有通用標(biāo)準(zhǔn)規(guī)范,使用的字符編碼同樣沒有被指定,但ASCII是最基本的通用編碼。CSV文件可以保存一維數(shù)據(jù)或二維數(shù)據(jù),每一行是一維數(shù)據(jù),可以使用Python的列表類型表示。本題選擇C選項。

16.C

17.A對象有如下一些基本特點(diǎn):標(biāo)識唯一性、分類性、多態(tài)性、封裝性、模塊獨(dú)立性好。所以選擇A。

18.D軟件測試是為了發(fā)現(xiàn)錯誤而執(zhí)行程序的過程,測試要以查找錯誤為中心,而不是為了演示軟件的正確功能。本題選擇D選項。

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

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

21.B解析:軟件開發(fā)階段包括需求分析、總體設(shè)計、詳細(xì)設(shè)計、編碼和測試5個階段。其中需求分析階段常用的工具是數(shù)據(jù)流圖(簡稱DFD)和數(shù)據(jù)字典(簡稱DD)。常見的詳細(xì)設(shè)計的圖形描述工具主要有程序流程圖、N-S結(jié)構(gòu)圖、問題分析圖(簡稱PAD圖)。

22.D浮點(diǎn)數(shù)的取值范圍為-10308~10308,浮點(diǎn)數(shù)之間的區(qū)分精度約為2.22×10-16。對除高精度科學(xué)計算外的絕大部分運(yùn)算來說,浮點(diǎn)數(shù)類型的數(shù)值范圍和小數(shù)精度足夠“可靠”,一般認(rèn)為浮點(diǎn)數(shù)類型沒有范圍限制。如果計算結(jié)果超出上限和下限會產(chǎn)生溢出錯誤。本題選擇D選項。

23.APython文件的讀寫方法有(file表示使用open函數(shù)創(chuàng)建的對象):\nfile.read([size]):參數(shù)可選,若未給定參數(shù)或參數(shù)為負(fù)則讀取整個文件內(nèi)容;若給出參數(shù),則讀取前size長度的字符串或字節(jié)流。\nfile.readline([size]):參數(shù)可選,若未給定參數(shù)或參數(shù)為負(fù)則讀取一行內(nèi)容;若給出參數(shù),則讀取該行前size長度的字符串或字節(jié)流。\nfile.readlines([hint]):參數(shù)可選,若未給定參數(shù)或參數(shù)為負(fù)則從文件中讀取所有行,以每行為元素形成一個列表;若給出參數(shù),則讀取hint行。\nfile.write(str):將字符串或字節(jié)流寫入文件。\nfile.writelines(1ines):向文件寫入一個序列字符串列表。

24.B屬于Python數(shù)據(jù)分析及可視化的第三方庫的有seabom、NumPy、scipy、pandas、matplotlib、TVTK、mayavi(也稱mayavi2)等。random庫是Python用于產(chǎn)生各種分布的偽隨機(jī)數(shù)序列的庫。本題選擇B選項。

25.D自然連接是一種特殊的等值連接,它要求兩個關(guān)系中進(jìn)行比較的分量必須是相同的屬性,并且在結(jié)果中把重復(fù)的屬性列去掉,所以根據(jù)T關(guān)系中的有序組可知R與S進(jìn)行的是自然連接操作。

26.A不同類型之間不能相互運(yùn)算;除數(shù)不能為0;print“noerror”語句是Python2.x系列的語法,不適用Python3.x系列。本題選擇A選項。

27.C元組與列表類似,可存儲不同類型的數(shù)據(jù);元組是不可改變的,創(chuàng)建后不能再做任何修改操作。本題選擇C選項。

28.Adivmod(a,b)函數(shù)返回的是兩個數(shù)值的商和余數(shù),那么a和b的值就分別是(2,1)和(0,2),而e是把a(bǔ)、b相加后轉(zhuǎn)為集合型,那么a+b為(2,1,0,2),轉(zhuǎn)成集合后即為{0,1,2},最后是取總和的sum函數(shù),所以相加起來是的總和為3。

29.D文件打開模式如下?!癡”:只讀模式,如果文件不存在,返回異常FileNotFmindError,默認(rèn)值?!癤”:創(chuàng)建寫模式,文件不存在則創(chuàng)建,存在則返回異常FileExlstsError。“w”:覆蓋寫模式,文件不存在則創(chuàng)建,存在則完全覆蓋原文件。“a”:追加寫模式,文件不存在則創(chuàng)建,存在則在原文件最后追加內(nèi)容。文件打開模式中沒有“n”。本題選擇D選項。

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

31.N

32.N

33.Y

34.Y

35.Y

36.N

37.N

38.Y

39.Npython代碼支持window和Linux下跨平臺

40.Y

41.'Helloworld'

42.True

43.py、pyw

44.False

45.[(0,1),(1,2)]

46.[1,4,5]

47.True

48.True

49.True

50.[4,5]

51.importturtleturtle.color(“red”.”yellow”)turtle.begin_fill()foriinrange(36):turtle.fd(200)turtle,left(110)turtle.end_fill()該題考查的是用Python標(biāo)準(zhǔn)庫turtle庫繪制太陽花。根據(jù)題干可知,太陽花的邊為紅色且用黃色填充,因此第1空填red,第2空填yellow。由于涉及填充圖形,所以要調(diào)用begin_fill()函數(shù),因此第3空應(yīng)填入be-gin_fill()。題目要求邊長為200像素,則第4空應(yīng)填200。太陽花一共36個角,每個角10度,因此繪制一條邊需要逆時針旋轉(zhuǎn)170度再繪制下一條邊,因此第5空應(yīng)填入170。

52.Fi=open(“PY301-vacations.csv”,”r”)Is=[]Foulineinfi:Is.append(line.strip(“\\n”).split(“,”))S=input(“請輸入節(jié)假日名稱”)Forlineinis:Ifs==line[1]Print(“{}的假期位于{}-{}之間”.format(line[1],line[2],line[3]))(2)Fi=open(“PY301-vacations.csv”,”r”)Is=[]Foulineinfi:Is.append(line.strip(“\\n”).split(“,”))S=input(“請輸入節(jié)假日序號”).split(“”)WhiletrueForiins:Forlineinis:Ifi==line[0]Print(“{}({})的假期位于{}月{}日之間”.format(line[1],line[0],line[2][0]+line[2][1],line[2][2]+line[2][3],line[3][0]+line[3][1],line[3][2]+line[3][3]))S=input(“請輸入節(jié)假日序號:”).split(“”)(3)Fi=open(“PY301-vacations.csv”,”r”)Is=[]Foulineinfi:Is.append(line.strip(“\\n”).split(“,”))S=input(“請輸入節(jié)假日序號”).split(“”)Whiles!=””:Foriins:Flag=falseForlineinis:Ifi==line[0]Print(“{}({})的假期位于{}月{}日之間”.format(line[1],line[0],line[2][0]+line[2][1],line[2][2]+line[2][3],line[3][0]+line[3][1],line[3][2]+line[3][3]))Flag=TureIfflag==falsePrint(“輸入節(jié)假日編號有誤!”)S=input(“請輸入節(jié)假日序號:”).split(“”)(1)\r\n對文件的讀操作需要使用open()函數(shù),模式為”r";將文件讀入后,需要把CSV文件的內(nèi)容轉(zhuǎn)換成二維數(shù)據(jù),并將其轉(zhuǎn)換成二維列表對象。首先定義一個列表Is,把讀入的每行數(shù)據(jù)使用strip()函數(shù)清除掉換行符,再使用split()函數(shù)在元素之間以逗號分隔存儲在列表Is中,split()函數(shù)返回的是一個列表,因此把CSV文件轉(zhuǎn)換成二維列表對象。使用input()函數(shù)獲取用戶輸入,再用for循環(huán)遍歷二維列表,如果輸入的節(jié)假日名稱在列表中,則輸出對應(yīng)的時間段。(2)\r\n用戶可以輸入多個節(jié)假日的序號,因此可以考慮使用split()方法把輸入的序號放在一個列表中,然后使用兩個for循環(huán),一個用來遍歷二維列表,一個用來遍歷輸入的序號列表,當(dāng)輸入的序號與二維列表中的一樣時,輸出結(jié)果。因為題目的示例輸出在數(shù)字月和日期之間加入了漢字,此時分析存入二維列表中的數(shù)字,可以知道存入的是字符串,即在CSV文件中初始月日和結(jié)束月日都是長度為4的字符串,屬于序列類型,因此可以使用索引訪問。(3)在問題2的基礎(chǔ)上,加上一個標(biāo)記,如果輸入的序號正確,則標(biāo)記為True;輸入錯誤,標(biāo)記為False,最后根據(jù)標(biāo)記判斷是否輸出“輸入節(jié)假日編號有誤!\r\n”。分析題目要求可知,標(biāo)記是在輸入的序號在二維列表中可以查到時變?yōu)門rue,其他情況都為False,所以標(biāo)記應(yīng)該放在遍歷序號列表的for循環(huán)內(nèi)、遍歷二維列表的for循環(huán)外。

53.importturtleturtle,pensize(2)d=72foriinrange(5):turtle.seth(d)d+=72turtle.fd(200)根據(jù)圖中箭頭的方向可知,在繪制該五邊形時先調(diào)整小海龜?shù)姆较?,再繪制邊長(即小海龜?shù)男羞M(jìn)距離)。五邊形的內(nèi)角為108度,則外角為72度,即小海龜?shù)姆较蛎看我黾?2度再繪制下一條邊,因此第1空和第2空均應(yīng)填入72。題目要求使用turtle.fd()函數(shù)。turtle.\r\nfd()函數(shù)用于控制小海龜向當(dāng)前行進(jìn)方向前進(jìn)一個指定距離,題目要求邊長為200像素,因此第3空填入200。湖南省湘潭市全國計算機(jī)等級考試Python語言程序設(shè)計學(xué)校:________班級:________姓名:________考號:________

一、單選題(30題)1.以下程序的輸出結(jié)果是()。try:print((3+4j)*(3-4j))except:print(”運(yùn)算錯誤!!”)

A.(25+0j)B.5C.運(yùn)算錯誤!!D.3

2.以下關(guān)于語言類型的描述中,正確的是()。

A.靜態(tài)語言采用解釋方式執(zhí)行,腳本語言采用編譯方式執(zhí)行

B.C語言是靜態(tài)編譯語言,Python語言是腳本語言

C.編譯是將目標(biāo)代碼轉(zhuǎn)換成源代碼的過程

D.解釋是將源代碼一次性轉(zhuǎn)換成目標(biāo)代碼同時逐條運(yùn)行目標(biāo)代碼的過程

3.下面代碼輸出的圖形是()。

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

A.創(chuàng)建子類時,父類必須包含在當(dāng)前文件夾且位于子類的前面

B.定義子類時,必須在圓括號內(nèi)指明子類所要繼承的父類的名稱

C.如果調(diào)用的是繼承的父類中的公有方法,可以在這個公有方法中訪問父類中的私有屬性和私有方法

D.如果在子類中實現(xiàn)了一個公有方法,該方法也能調(diào)用繼承的父類中的私有方法和私有屬性

5.以下選項,正確的是()。

A.序列類型是一維元素向量,元素之間存在先后關(guān)系,通過索引訪問

B.序列類型可以分為3類:字符串、字典及列表

C.表示單一數(shù)據(jù)的類型被稱為組合數(shù)據(jù)類型

D.Python的字符串、字典、元組及列表都屬于序列類型

6.執(zhí)行以下代碼的結(jié)果是?A.(1,2,3,4)B.(1,2,3,[1,2,4])C.異常報錯D.(1,2,3,[1,2,3],4)

7.在Python中,可以作為源文件擴(kuò)展名的是()。

A.pdfB.docxC.pngD.py

8.如果文件a.txt在目錄’C:\\A’下,執(zhí)行以下代碼會發(fā)生什么操作?()importosos.rmdir(r'C:\\A’)

A.刪除文件夾A,保留文件a.txt

B.刪除文件夾A和文件a.txt

C.刪除文件a.txt,保留文件夾A

D.OSError

9.在Python中,讀入CSV文件保存的二維數(shù)據(jù),按特定分隔符抽取信息,最可能用到的函數(shù)是()。

A.read()B.join()C.replace()D.split()

10.以下程序的輸出結(jié)果是()。Test_list=list(range(6))Print(6inTest_list)

A.6B.6inTest_listC.TrueD.False

11.在數(shù)據(jù)管理技術(shù)發(fā)展的三個階段中,數(shù)據(jù)共享最好的是()。

A.人工管理階段B.文件系統(tǒng)階段C.數(shù)據(jù)庫系統(tǒng)階段D.三個階段相同

12.以下代碼的輸出結(jié)果是()。Is=[]formin‘想念‘fornin‘家人’Is.append(m+n)print(Is)

A.想念家人B.想想念念家家人人C.想家想人念家念人D.[‘想家’,’想人’,’念家’,’念人’]

13.文件family,txt在當(dāng)前代碼所在目錄內(nèi),其內(nèi)容是一段文本:Wearefamily。以下代碼的輸出結(jié)果是()。txt=open(“family.txt”,“r”)print(txt)txt.close()

A.txtB.family,txtC.非其他答案D.Wearefamily

14.以下程序的輸出結(jié)果是()。CLis=list(range(5))print(5inCLis)

A.TrueB.FalseC.0D.-1

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

A.CSV文件只能采用Unicode編碼表示字符

B.CSV文件的每一行是一維數(shù)據(jù),可以使用Python的元組類型表示

C.CSV文件是一種通用的文件,主要用于不同程序之間的數(shù)據(jù)交換

D.CSV文件是一個一維數(shù)據(jù)

16.正則表達(dá)式中的特殊字符,匹配字母,數(shù)字,下劃線()

A.\dB.\DC.\wD.\s

17.在面向?qū)ο蠓椒ㄖ校粚儆凇睂ο蟆被咎攸c(diǎn)的是()。

A.一致性B.分類性C.多態(tài)性D.標(biāo)識唯一性

18.軟件測試的目的是()。

A.評估軟件可靠性B.發(fā)現(xiàn)并改正程序中的錯誤C.改正程序中的錯誤D.發(fā)現(xiàn)程序中的錯誤

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

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

20.以下關(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)不正確會影響分支功能

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

A.N-S圖B.DFD圖C.PAD圖D.程序流程圖

22.在Python中,關(guān)于數(shù)據(jù)類型的描述錯誤的是()。

A.整數(shù)的書寫格式支持十進(jìn)制、二進(jìn)制、八進(jìn)制和十六進(jìn)制

B.如果想知道參數(shù)的數(shù)據(jù)類型,那么可以使用type()函數(shù)獲得

C.整數(shù)、浮點(diǎn)數(shù)、復(fù)數(shù)和布爾值都是Python的基本數(shù)據(jù)類型

D.浮點(diǎn)數(shù)是帶有小數(shù)的數(shù)字,它存在范圍的限制,如果計算結(jié)果超出上限和下限,則不會報錯,但會有warning的警告

23.以下不是Python文件讀寫方法的是()。

A.writelineB.readlineC.readD.write

24.不屬于Python數(shù)據(jù)分析及可視化處理的第三方庫的是()。

A.seabornB.randomC.mayavi2D.NumPy

25.有三個關(guān)系R、S和T如下:[*9]由關(guān)系R和S通過運(yùn)算得到關(guān)系T,則所使用的運(yùn)算為()。

A.笛卡爾積B.交C.并D.自然連接

26.以下語句不會引發(fā)異常的是()。

A.a=b=3+1jB.1+“1”C.3/0D.print“noerror”

27.關(guān)于Python元組類型,以下選項中描述錯誤的是()。

A.元組不可以被修改

B.Python中元組使用圓括號和逗號表示

C.元組中的元素要求是相同類型

D.—個元組可以作為

溫馨提示

  • 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

提交評論