福建省三明市全國計算機等級考試Python語言程序設計_第1頁
福建省三明市全國計算機等級考試Python語言程序設計_第2頁
福建省三明市全國計算機等級考試Python語言程序設計_第3頁
福建省三明市全國計算機等級考試Python語言程序設計_第4頁
福建省三明市全國計算機等級考試Python語言程序設計_第5頁
已閱讀5頁,還剩61頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

福建省三明市全國計算機等級考試Python語言程序設計學校:________班級:________姓名:________考號:________

一、單選題(30題)1.中學教師和授課班級之間的聯(lián)系是()。

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

2.下面關于Python中函數(shù)的說法錯誤的是()。

A.函數(shù)的一個優(yōu)點是方便修改,更易擴展

B.函數(shù)名是可以使用保留字的

C.函數(shù)名必須以下劃線、中文或字母開頭

D.函數(shù)名區(qū)分大小寫

3.下面的排序算法中初始數(shù)據(jù)集的排列順序對算法的性能無影響的是()A.插入排序B.堆排序C.冒泡排序D.快速排序

4.有3個關系R、S、T如下:

由關系R和S通過運算得到關系T,則所使用的運算為()。

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

5.以下程序的輸出結果是()。deffibRate(n): ifn<=0: return-1 elifn==1: return-1 elifn==2: return1 else: L=[1,5] foriinrange(2,n): L.append(L[-1]+L[-2]) returnL[-2]%L[-1]print(fibRate(7))

A.0.6B.28C.-1D.1

6.以下關于Python函數(shù)的描述中,正確的是()。

A.函數(shù)eVal()可以用于數(shù)值表達式的求值,如eval("2*3+1”)

B.Python中,def和return是函數(shù)必須使用的保留字

C.Pythcm函數(shù)定義中沒有對參數(shù)指定類型,這說明參數(shù)在函數(shù)中可以當作任意類型使用

D.—個函數(shù)中只允許有一條return語句

7.以下關于Python列表的描述中,正確的是()。

A.列表的長度和內容都可以改變,但元素類型必須相同

B.不可以對列表進行成員運算操作、長度計算和分片

C.列表的索引是從1開始的

D.可以使用比較操作符(如>或<等)對列表進行比較

8.以下哪個選項是正確的Python搜索變量的順序

A.內置作用域(Built-in)→全局/模塊作用域(Global)→當前作用域被嵌入的本地作用域(Enclosinglocals)→本地作用域(Local)

B.本地作用域(Local)→當前作用域被嵌入的本地作用域(Enclosinglocals))→內置作用域(Built-in)→全局/模塊作用域(Global)

C.本地作用域(Local)→內置作用域(Built-in)→當前作用域被嵌入的本地作用域(Enclosinglocals)→全局/模塊作用域(Global)

D.本地作用域(Local)→當前作用域被嵌入的本地作用域(Enclosinglocals)→全局/模塊作用域(Global)→內置作用域(Built-in)

9.一個棧的初始狀態(tài)為空?,F(xiàn)將元素1、2、3、4、5、A、B、C、D、E依次入棧,然后再依次出棧,則元素出棧的順序是()。

A.12345ABCDEB.EDCBA54321C.ABCDE12345D.54321EDCBA

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

A.NoneB.FalseC.FalseorFalseD.True

11.在Python中,IPO模式不包括()。

A.Program(程序)B.Input(輸入)C.Process(處理)D.Output(輸出)

12.要將3.1415926變成00003.14如何進行格式化輸出?

A."%.2f"%3.1415629

B."%8.2f"%3.1415629

C."%0.2f"%3.1415629

D."%08.2f"%3.1415629

13.s=‘1234567890’,以下表示‘1234’的是()。A.s[1:5]B.s[0:3]C.s[-10:-5]D.s[0:4]

14.以下關于Python分支結構的描述中,錯誤的是()。

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

B.if-else結構是可以嵌套的

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

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

15.在Python中,使用open()打開一個Windows操作系統(tǒng)D盤下的文件,路徑名錯誤的是()。

A.D:\PythonTest\a.txt

B.D:\\PythonTest\\a.txt

C.D:/PythonTest/a.txt

D.D://PythonTest//a.txt

16.在Python中,屬于Web開發(fā)的第三方庫是()。

A.mayaviB.flaskC.PyQt5D.time

17.下列關于列表的說法正確的是()。

A.列表中的值可以是任何數(shù)據(jù)類型,被稱為元素或項

B.列表的索引是從1開始的,以此類推

C.使用append()函數(shù)可以向列表的指定位置插入元素

D.使用remove()函數(shù)可以從列表中刪除元素,但必須知道元素在列表中的位置

18.以下關于Python程序語法元素的描述,正確的選項是()。

A.縮進格式要求程序對齊,增添了編程難度

B.Python變量名允許以數(shù)字開頭

C.true是Python的保留字

D.所有的if、while、def、class語句后面都要用’:’結尾

19.以下程序的輸出結果是()。lis1=[1,2,[‘python’]]lis2=[‘loves’]lis1[1]=lis2print(lis1)

A.[lis2,2,[‘python’]]

B.[1,[‘love’],[‘python’]]

C.[1,2,‘python’,‘loves']

D.[1,2,[‘python’,‘loves’]

20.以下屬于Python用于Web開發(fā)第三方庫的是()。

A.PygameB.SciPyC.PDFMinerD.Pyramid

21.軟件設計中模塊劃分應遵循的準則是()。A.低內聚低耦合

B.高內聚低耦合

C.低內聚高耦合

D.高內聚高耦合

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

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

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

C.編譯是將目標代碼轉換成源代碼的過程

D.解釋是將源代碼一次性轉換成目標代碼同時逐條運行目標代碼的過程

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

A.installB.pipC.PyQt5D.pyinstaller

24.S=’1234567890’,以下表示’1234’的選項是()。

A.s[1:5]B.s[0:3]C.s[一10:-5]D.s[0:4]

25.以下代碼的輸出結果是()。defHello(famlyName,age):ifage>50:print(”您好!”+famlyName+”奶奶”)elifage>40:print(”您好!”+famlyName+”阿姨”)elifage>30:print(”您好!”+famlyName+”姐姐”)else:print(”您好!”+”小”+famlyName)Hello(age=43,famlyName=”趙”)

A.您好!趙奶奶B.您好!趙阿姨C.您好!趙姐姐D.函數(shù)調用出錯

26.以下關于匿名函數(shù)的描述,錯誤的是()。

A.在Python中,lambda表達式屬于可調用對象

B.lambda表達式中可以使用任意復雜的表達式,但是必須只編寫一個表達式

C.g=lambdax:3是一個合法的賦值語句

D.無法使用lambda表達式定義有名字的函數(shù)

27.以下代碼的輸出結果是()。s=[4,2,9,1]s.insert(3,3)print(s)

A.[4,2,9,l,2,3]B.[4,3,2,9,l]C.[4,2,9,2,l]D.[4,2,9,3,l]

28.以下程序的輸出結果是()。print(0.1+0.2==0.3)

A.-1B.TrueC.FalseD.0

29.在Python中,使用for-in-方式形成的循環(huán)不能遍歷的類型是()。

A.列表B.復數(shù)C.字符串D.字典

30.以下程序的輸出結果是()。a=[[1,2,3],[4,5,6],[7,8,9]]s=0forcina: forjinrange(3): s+=c[j]print(s)

A.[1,2,3,4,5,6,7,8,9]B.45C.24D.0

二、判斷題(10題)31.已知x=3,那么賦值語句x='abcedfg'是無法正常執(zhí)行的。A.是B.否

32.表達式‘a(chǎn)’+1的值為’b’。

A.是B.否

33.在Python中,任意長的字符串都遵守駐留機制。

A.是B.否

34.形參可以看做是函數(shù)內部的局部變量,函數(shù)運行結束之后形參就不可訪問了。

A.是B.否

35.假設random模塊已導入,那么表達式random.sample(range(10),7)的作用是生成7個不重復的整數(shù)。

A.是B.否

36.已知列表x=[1,2,3],那么執(zhí)行語句x=3之后,變量x的地址不變。

A.是B.否

37.列表可以作為集合的元素。

A.是B.否

38.列表對象的extend()方法屬于原地操作,調用前后列表對象的地址不變。

A.是B.否

39.執(zhí)行語句frommathimportsin之后,可以直接使用sin()函數(shù),例如sin(3)。

A.是B.否

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

A.是B.否

三、填空題(10題)41.正則表達式模塊re的______________方法用來在字符串開始處進行指定模式的匹配。

42.Python擴展庫______________中封裝了Windows底層幾乎所有API函數(shù)。

43.表達式''.join('asdssfff'.split('sd'))的值為____________。

44.表達式'Helloworld.IlikePython.'.rfind('python')的值為________。

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

46.已知列表x=[1,2],執(zhí)行語句y=x[:]后,表達式xisnoty的值為_______。

47.表達式'Helloworld'.upper()的值為___________。

48.已知x為非空列表,那么表達式x.sort()==sorted(x)的值為__________。

49.已知列表x=list(range(10)),那么執(zhí)行語句delx[::2]之后,x的值為_________。

50.表達式'abc10'.isalnum()的值為______________。

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

52.考生文件夾下存在一個文件“PY202.py”,該文件是本題目的代碼提示框架,其中代碼可以任意修改。請在該文件中編寫代碼,以實現(xiàn)如下功能。用鍵盤輸入兩個大于0的整數(shù),按要求輸出這兩個整數(shù)之間(不包括這兩個整數(shù))的所有素數(shù)。素數(shù)又稱質數(shù),是指除了1和它本身以外不能被其他整數(shù)整除的數(shù)。試題程序:#以下代碼為提示框架#請在...處使用一行或多行代碼替換#請在_____處使用一行代碼替換#注意:提示框架的代碼可以任意修改,以完成程序功能為準lower=int(input(‘輸入?yún)^(qū)間最小值:’))upper=int(inputs(‘輸入?yún)^(qū)間最大值:’))fornuminrange(_____,_____):

53.考生文件夾下存在兩個Python源文件“PY301-1.py”和“PY301-2.py”,分別對應兩個問題,請按照文件內說明修改代碼,實現(xiàn)以下功能。李白,字太白,號青蓮居士,又號“謫仙人”,是唐代偉大的浪漫主義詩人,被后世譽為“詩仙”??忌募A下有一個“關山月.txt”文件,內容如下。明月出天山,蒼茫云海間。長風幾萬里,吹度玉門關。漢下白登道,胡窺青海灣。由來征戰(zhàn)地,不見有人還。戍客望邊邑,思歸多苦顏。高樓當此夜,嘆息未應閑。問題1:這是一段由標點符號分隔的文本,請編寫程序,以“?!本涮枮榉指?,將這段文本轉換為詩詞風格,輸出到文件“關山月-詩歌.txt”中。試題程序:#以下代碼為提示框架#請在...處使用一行或多行代碼替換#注意:提示框架的代碼可以任意修改,以完成程序功能為準fi=open("關山月.txt","r")…fi.close()fo.close()問題2:把問題1生成的“關山月-詩歌.txt”文件,以每行為單位,保留標點符號為原順序和位置,輸出全文的反轉形式。將文件保存在考生文件夾下并命名為“關山月-反轉.txt”。輸出的形式如下。高樓當此夜,嘆息未應閑。戍客望邊邑,思歸多苦顏。由來征戰(zhàn)地,不見有人還。漢下白登道,胡窺青海灣。長風幾萬里,吹度玉門關。明月出天山,蒼茫云海間。試題程序:#以下代碼為提示框架#請在...處使用一行或多行代碼替換#注意:提示框架的代碼可以任意修改,以完成程序功能為準fi=open("關山月-詩歌.txt","r")fo=open(“關山月-反轉.txt","w")…fi.close()fo.close()

參考答案

1.D一位教師可以對多個班級授課,一個班級也可以由多位教師授課,因此,教師和授課班級之間的聯(lián)系是多對多聯(lián)系。

2.B函數(shù)名不可以使用Python中的保留字,所以選B項。

3.B

4.D自然連接是一種特殊的等值連接,它要求兩個關系中進行比較的分量必須是相同的屬性組,并且在結果中把重復的屬性列去掉,所以B選項錯誤。笛卡兒積是用R集合中元素為第一元素,S集合中元素為第二元素構成的有序對,所以C選項錯誤。可以很明顯地看出,關系T是從關系R與關系S中取得的相同的關系組,所以使用的是交運算。本題選擇D選項。

5.B將7傳遞給函數(shù)形參變量n,之后進入多分支結構,依次判斷后,執(zhí)行else后面的語句。for語句為foriinrange(2,7),i從2依次變化到6,循環(huán)5次,將L[-1]+L[-2]的值通過append()方法加入列表L中。當i=2時,L[-1]+L[-2]=5+1=6,將6添加到列表L中,此時L=[1,5,6];當i=3時,L[-1]+L[-2]=6+5=11,將11添加到列表L中,此時L=[1,5,6,11];當i=4時,L[-1]+L[-2]=11+6=17,將17添加到列表L中,此時L=[1,5,6,11,17];當i=5時,L[-1]+L[-2]=17+11=28,將28添加到列表L中,此時L=[1,5,6,11,17,28];當i=6時,L[-1]+L[-2]=28+17=45,將45添加到列表L中,此時L=[1,5,6,11,17,28,45]。最后L[-2]%L[-1]=28%45=28,故程序輸出28。本題選擇B選項。

6.A在Python中,return語句用來結束函數(shù)并將程序返回到函數(shù)被調用的位置繼續(xù)執(zhí)行。re-turn\n語句可以出現(xiàn)在函數(shù)的任何部分,可以同時將0個、1\n個或多個函數(shù)運算結果返回給函數(shù)被調用處的變量。函數(shù)可以沒有return語句,此時函數(shù)并不返回值。B、D選項錯誤。Python函數(shù)定義中沒有對參數(shù)指定類型,則函數(shù)內的默認值參數(shù)是對函數(shù)的默認值參數(shù)屬性__defaults__的引用,C選項錯誤。eval()函數(shù)將去掉字符串最外側的引號,并按照Python語句方式執(zhí)行去掉引號后的字符內容,使用方式為<變量>=eval(\n<字符串>),其中變量用來保存對字符串內容進行Python運算的結果,故函數(shù)eval()可以用于數(shù)值表達式的求值,如eval(”2*\n3+1”)=7。本題選擇A選項。

7.D列表是包含0個或多個元素的有序序列,屬于序列類型。列表用中括號([])表示,由于列表屬于序列類型,故繼承了序列類型的所有屬性和方法。索引是列表的基本操作,用于獲得列表中的一個元素,該操作沿用序列類型的索引方式,即正向遞增序號或反向遞減序號,使用中括號作為索引操作符,索引號不得超過列表的元素范圍,否則將產(chǎn)生lndexError錯誤。索引下標從0開始。列表可以進行元素增加、刪除、替換、查找等操作。列表沒有長度限制,元素類型可以不同,能夠包含其他的組合數(shù)據(jù)類型,可以使用比較操作符(如>或<等)對列表進行比較,也可以對列表進行成員運算操作、長度計算和分片。故D項正確。

8.D

9.B棧按先進后出的原則組織數(shù)據(jù),所以入棧最早的元素最后出棧,本題選擇B選項。

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

11.A程序設計IPO模式內容如下。I:Input(輸入),程序的輸入。程序的輸入包括文件輸入、網(wǎng)絡輸入、控制臺輸入、隨機數(shù)據(jù)輸入、程序內部參數(shù)輸入等。輸入是一個程序的開始。P:Process(處理),程序的主要邏輯。程序對輸入進行處理,輸出產(chǎn)生結果。處理的方法也叫算法,是程序最重要的部分。可以說,算法是一個程序的主要靈魂。O:Output(輸出),程序的輸出。程序的輸出包括屏幕顯示輸出、文件輸出、網(wǎng)絡輸出、操作系統(tǒng)內部變量輸出等。輸出是一個程序展示運算成果的方式。本題選擇A選項。

12.D

13.D對字符串中某個子串或區(qū)間的檢索稱為切片。切片的使用方式如下。<字符串或字符串變量>[N:M]切片獲取字符串從N到M(不包含M)的子字符串,其中N和M為字符串的索引,可以混合使用正向遞增索引和反向遞減索引。切片要求N和M都在字符串的索引區(qū)間,如果N大于等于M,則返回空字符串。如果N缺失,則默認將N設為0;如果M缺失,則默認表示到字符串結尾。題干中s[1:5]=‘2345’,s[0:3]=‘1231’,s[-10:-5]=‘12345’,s[0:4]=‘1234’。本題選擇D選項。

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

15.A在Python中,使用open()打開文件的操作過程中需要注意,由于“\\”是字符串中的轉義符,所以表示路徑時,使用“\\\\”,“/”或“//”代替“\\”。本題選擇A選項。

16.B在Python中,屬于Web開發(fā)的第三方庫的有Django庫、pyramid庫及Flask庫。本題選擇B選項。

17.A列表的索引是從0開始的,以此類推;使用append()函數(shù)可以向列表插入元素,但只能插入列表的末尾;使用remove(x)函數(shù)是將列表中出現(xiàn)的第一個x元素刪除。本題選擇A選項。

18.D縮進格式要求程序對齊,清晰簡明地表示了語句的所屬關系;Python采用大寫字母、小寫字母、數(shù)字、下劃線和漢字等字符及其組合進行命名,但名字的首字符不能是數(shù)字,標識符中間不能出現(xiàn)空格,長度沒有限制;Python的保留字是大小寫敏感的,true是保留字,但true不是保留字。

19.B列表索引從0開始,lisl[1]=lis2是為列表lis2賦值并覆蓋lisl[1]位置上的元素,運算后lis1=[1,[‘loves’],[‘python’]]。本題選擇B選項。

20.D屬于Web開發(fā)方向的Python第三方庫有:Django、Pyramid、Flask等。Pygame屬于游戲開發(fā)方向,SciPy屬于數(shù)據(jù)分析方向,PDFMiner屬于文本處理方向。本題選擇D選項。

21.B解析:耦合性和內聚性足模塊獨立性的兩個定性標準。內聚性是一個模塊內部各個元素間彼此結合的緊密程度的度量,作為軟件結構設計的設計原則,要求每個模塊的內部都具有很強的內聚性;耦合性是指模塊間相互連接的緊密程度的度量,一個模塊與其他模塊的耦合性越強則該模塊的獨立性越弱。一般優(yōu)秀的軟件設計應盡量做到高內聚、低耦合,即減弱模塊之間的耦合性和提高模塊內的內聚性,有利于提高模塊的獨立性。

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

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

24.D對字符串中某個子串或區(qū)間的檢索稱為切片。切片的使用方式如下:\n<字符串或字符串變量>[N:M]\n切片獲取字符串從N到M(不包含M)的子字符串,其中N和M為字符串的索引序號,可以混合使用正向遞增序號和反向遞減序號。切片要求N和M都在字符串的索引區(qū)間,如果N大于等于M,則返回空字符串。如果N缺失,則默認將N設為0;如果M缺失,則默認表示到字符串結尾。\n題干中s[1:5]=’2345’,s[0:3]=’123’,s[一10:一5]=’12345’,s[0:4]=’1234’。

25.B將實參age=43,famlyName=”趙”分別賦給形參age和famlyName,之后進入多分支結構進行判斷,因為40<age=43<50,執(zhí)行第一個elif后面的語句,用”+”進行字符串連接,故輸出“您好!趙阿姨”。本題選擇B選項。

26.Dlambda表達式中可以調用其他函數(shù),該表達式的計算結果相當于函數(shù)的返回值。

27.D在Python中,想要在列表中的任意位置插入元素,一般使用insert()方法。insert()方法有兩個參數(shù):第一個參數(shù)代表在列表中的位置,第二個參數(shù)是在這個位置處插入的元素。注意:插人時,是插入該位置之前。列表下標從0開始,S\n=[4,2,9,1],s[3]=1,則執(zhí)行s.insert(3,3)后,S=[4,2,9,3,1],最后print(s),本題選擇D選項。

28.C在Python中,0.1+0.2=0.30000000000000004。原因是:對于十進制數(shù),它只能表示以進制數(shù)的質因子為分母的分數(shù)。10的質因子有2和5,因此1/2、1/4、1/5、1/8和1/10都可以精確表示;相反,1/3、1/6和1/7都是循環(huán)小數(shù),因為它們的分母使用了質因子3或者7。二進制(進制數(shù)為2)下,只有一個質因子,即2,因此只能精確表示分母質因子是2的分數(shù)。二進制中,1/2、1/4和1/8都可以被精確表示,但1/5或者1/10就變成了循環(huán)小數(shù)。所以,在十進制中能夠精確表示的0.1與0.2(1/10與1/5),在計算機所使用的二進制中就變成了循環(huán)小數(shù)。當對這些循環(huán)小數(shù)進行數(shù)學運算并將二進制數(shù)據(jù)轉換成人類可讀的十進制數(shù)據(jù)時,會對小數(shù)尾部進行截斷處理。在不同的語言中,運行0.1+0.2會輸出不同的結果。本題選擇C選項。

29.B在Python中,使用for-in-方式形成的循環(huán)能遍歷的類型有字符串、文件、mnge()函數(shù)或組合數(shù)據(jù)類型,不能遍歷復數(shù)。本題選擇B選項。

30.B外層for循環(huán)是將a[0]=[1,2,3],a[1]=[4,5,6],a[2]=[7,8,9]依次賦給變量c;內層for循環(huán)將變量j從0遞增到2,即累加c[1]+c[2]+c[3]的值。所以內層循環(huán)加外層循環(huán)是計算1+2+3+4+5+6+7+8+9的值,即s=45。本題選擇B選項。

31.N

32.N

33.N

34.Y

35.Y

36.N

37.N

38.Y

39.Y

40.Y

41.match()

42.pywin32

43.'assfff'

44.-1

45.False

46.True

47.'HELLOWORLD'

48.False

49.[1,3,5,7,9]

50.True

51.s=input(“請輸入一個十進制數(shù):”)num=int(s)Prim(”轉換成二進制數(shù)是:{:b}".format(num))本題考查input()函數(shù)和format()方法的使用。由于inPiit()函數(shù)返回的結果為字符串類型,所以需要將s轉換為整數(shù)類型用于計算,這可以使用int()函數(shù),因此第1空應填入int(s)。題目要求以二進制數(shù)輸出,可使用format()方法完成,對于整數(shù)類型,輸出格式包括6種:b表示輸出整數(shù)的二進制方式;C表示輸出整數(shù)對應的unicode字符;d表示輸出整數(shù)的十進制方式;0表示輸出整數(shù)的八進制方式;x表示輸出整數(shù)的小寫十六進制方式;X表示輸出整數(shù)的大寫十六進制方式。因此第2空應填入:b,第3空應填入num。

52.lower=int(input(‘輸入?yún)^(qū)間最小值:’))upper=int(inputs(‘輸入?yún)^(qū)間最大值:’))fornuminrange(lower+1,upper):Ifnum>1:Foriin染個(2,num):If(num%i)==0:BreakElse:Print(num)題目要求輸出兩個整數(shù)之間(不包括這兩個整數(shù))的所有素數(shù),因此mnge()函數(shù)的參數(shù)應為lower+1和upper。for循環(huán)遍歷range(lower\n+l,upper)返回的每個整數(shù)num,判斷該數(shù)是否為素數(shù)。如果num大于1(1既不是素數(shù)也不是合數(shù)),且該數(shù)能被取值范圍為[2,num-1\n]的任何一個整數(shù)整除,那么該數(shù)一定不是素數(shù),否則一定是素數(shù)。

53.(1)fi=open("關山月.txt”,"r")fi=open("關山月-詩歌.txt","w")Txt=fi.read()Is=txt.split(“。”)Fo.write(“。\\n”.join(is))fi.close()fo.close()(2)fi=open("關山月-詩歌.txt","r")fo=open(“關山月-反轉.txt","w")Txt=fi.readlines()Txt.reverse()Forrowintxt:Fo.write(row)fi.close()fo.close()⑴題目給出的文件內容是一段文本,要把文本改為詩詞風格,即以全角句號分隔,可使用字符串的split()方法,該方法返回的是一個列表;列表的每個元素都是一行詩句,使用join()方法把列表的每一個元素寫入“關山月_詩歌.txt”文件中,連接符為全角句號和換行符;操作完成之后將打開的文件用close()方法關閉,避免內容的丟失。(2)把“問題1”生成的詩詞風格的文件按照每行為單位將其逆序輸出,須使用列表的reveree()方法,即需要把文件的內容轉換為列表類型,readlines()方法從文件中讀入所有行的內容,以每行為元素形成一個列表,然后調用reverse()方法反轉,將反轉后的內容寫入“關山月-反轉.txt”文件中。操作完成之后將打開的文件用close()方法關閉,避免內容的丟失。福建省三明市全國計算機等級考試Python語言程序設計學校:________班級:________姓名:________考號:________

一、單選題(30題)1.中學教師和授課班級之間的聯(lián)系是()。

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

2.下面關于Python中函數(shù)的說法錯誤的是()。

A.函數(shù)的一個優(yōu)點是方便修改,更易擴展

B.函數(shù)名是可以使用保留字的

C.函數(shù)名必須以下劃線、中文或字母開頭

D.函數(shù)名區(qū)分大小寫

3.下面的排序算法中初始數(shù)據(jù)集的排列順序對算法的性能無影響的是()A.插入排序B.堆排序C.冒泡排序D.快速排序

4.有3個關系R、S、T如下:

由關系R和S通過運算得到關系T,則所使用的運算為()。

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

5.以下程序的輸出結果是()。deffibRate(n): ifn<=0: return-1 elifn==1: return-1 elifn==2: return1 else: L=[1,5] foriinrange(2,n): L.append(L[-1]+L[-2]) returnL[-2]%L[-1]print(fibRate(7))

A.0.6B.28C.-1D.1

6.以下關于Python函數(shù)的描述中,正確的是()。

A.函數(shù)eVal()可以用于數(shù)值表達式的求值,如eval("2*3+1”)

B.Python中,def和return是函數(shù)必須使用的保留字

C.Pythcm函數(shù)定義中沒有對參數(shù)指定類型,這說明參數(shù)在函數(shù)中可以當作任意類型使用

D.—個函數(shù)中只允許有一條return語句

7.以下關于Python列表的描述中,正確的是()。

A.列表的長度和內容都可以改變,但元素類型必須相同

B.不可以對列表進行成員運算操作、長度計算和分片

C.列表的索引是從1開始的

D.可以使用比較操作符(如>或<等)對列表進行比較

8.以下哪個選項是正確的Python搜索變量的順序

A.內置作用域(Built-in)→全局/模塊作用域(Global)→當前作用域被嵌入的本地作用域(Enclosinglocals)→本地作用域(Local)

B.本地作用域(Local)→當前作用域被嵌入的本地作用域(Enclosinglocals))→內置作用域(Built-in)→全局/模塊作用域(Global)

C.本地作用域(Local)→內置作用域(Built-in)→當前作用域被嵌入的本地作用域(Enclosinglocals)→全局/模塊作用域(Global)

D.本地作用域(Local)→當前作用域被嵌入的本地作用域(Enclosinglocals)→全局/模塊作用域(Global)→內置作用域(Built-in)

9.一個棧的初始狀態(tài)為空?,F(xiàn)將元素1、2、3、4、5、A、B、C、D、E依次入棧,然后再依次出棧,則元素出棧的順序是()。

A.12345ABCDEB.EDCBA54321C.ABCDE12345D.54321EDCBA

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

A.NoneB.FalseC.FalseorFalseD.True

11.在Python中,IPO模式不包括()。

A.Program(程序)B.Input(輸入)C.Process(處理)D.Output(輸出)

12.要將3.1415926變成00003.14如何進行格式化輸出?

A."%.2f"%3.1415629

B."%8.2f"%3.1415629

C."%0.2f"%3.1415629

D."%08.2f"%3.1415629

13.s=‘1234567890’,以下表示‘1234’的是()。A.s[1:5]B.s[0:3]C.s[-10:-5]D.s[0:4]

14.以下關于Python分支結構的描述中,錯誤的是()。

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

B.if-else結構是可以嵌套的

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

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

15.在Python中,使用open()打開一個Windows操作系統(tǒng)D盤下的文件,路徑名錯誤的是()。

A.D:\PythonTest\a.txt

B.D:\\PythonTest\\a.txt

C.D:/PythonTest/a.txt

D.D://PythonTest//a.txt

16.在Python中,屬于Web開發(fā)的第三方庫是()。

A.mayaviB.flaskC.PyQt5D.time

17.下列關于列表的說法正確的是()。

A.列表中的值可以是任何數(shù)據(jù)類型,被稱為元素或項

B.列表的索引是從1開始的,以此類推

C.使用append()函數(shù)可以向列表的指定位置插入元素

D.使用remove()函數(shù)可以從列表中刪除元素,但必須知道元素在列表中的位置

18.以下關于Python程序語法元素的描述,正確的選項是()。

A.縮進格式要求程序對齊,增添了編程難度

B.Python變量名允許以數(shù)字開頭

C.true是Python的保留字

D.所有的if、while、def、class語句后面都要用’:’結尾

19.以下程序的輸出結果是()。lis1=[1,2,[‘python’]]lis2=[‘loves’]lis1[1]=lis2print(lis1)

A.[lis2,2,[‘python’]]

B.[1,[‘love’],[‘python’]]

C.[1,2,‘python’,‘loves']

D.[1,2,[‘python’,‘loves’]

20.以下屬于Python用于Web開發(fā)第三方庫的是()。

A.PygameB.SciPyC.PDFMinerD.Pyramid

21.軟件設計中模塊劃分應遵循的準則是()。A.低內聚低耦合

B.高內聚低耦合

C.低內聚高耦合

D.高內聚高耦合

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

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

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

C.編譯是將目標代碼轉換成源代碼的過程

D.解釋是將源代碼一次性轉換成目標代碼同時逐條運行目標代碼的過程

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

A.installB.pipC.PyQt5D.pyinstaller

24.S=’1234567890’,以下表示’1234’的選項是()。

A.s[1:5]B.s[0:3]C.s[一10:-5]D.s[0:4]

25.以下代碼的輸出結果是()。defHello(famlyName,age):ifage>50:print(”您好!”+famlyName+”奶奶”)elifage>40:print(”您好!”+famlyName+”阿姨”)elifage>30:print(”您好!”+famlyName+”姐姐”)else:print(”您好!”+”小”+famlyName)Hello(age=43,famlyName=”趙”)

A.您好!趙奶奶B.您好!趙阿姨C.您好!趙姐姐D.函數(shù)調用出錯

26.以下關于匿名函數(shù)的描述,錯誤的是()。

A.在Python中,lambda表達式屬于可調用對象

B.lambda表達式中可以使用任意復雜的表達式,但是必須只編寫一個表達式

C.g=lambdax:3是一個合法的賦值語句

D.無法使用lambda表達式定義有名字的函數(shù)

27.以下代碼的輸出結果是()。s=[4,2,9,1]s.insert(3,3)print(s)

A.[4,2,9,l,2,3]B.[4,3,2,9,l]C.[4,2,9,2,l]D.[4,2,9,3,l]

28.以下程序的輸出結果是()。print(0.1+0.2==0.3)

A.-1B.TrueC.FalseD.0

29.在Python中,使用for-in-方式形成的循環(huán)不能遍歷的類型是()。

A.列表B.復數(shù)C.字符串D.字典

30.以下程序的輸出結果是()。a=[[1,2,3],[4,5,6],[7,8,9]]s=0forcina: forjinrange(3): s+=c[j]print(s)

A.[1,2,3,4,5,6,7,8,9]B.45C.24D.0

二、判斷題(10題)31.已知x=3,那么賦值語句x='abcedfg'是無法正常執(zhí)行的。A.是B.否

32.表達式‘a(chǎn)’+1的值為’b’。

A.是B.否

33.在Python中,任意長的字符串都遵守駐留機制。

A.是B.否

34.形參可以看做是函數(shù)內部的局部變量,函數(shù)運行結束之后形參就不可訪問了。

A.是B.否

35.假設random模塊已導入,那么表達式random.sample(range(10),7)的作用是生成7個不重復的整數(shù)。

A.是B.否

36.已知列表x=[1,2,3],那么執(zhí)行語句x=3之后,變量x的地址不變。

A.是B.否

37.列表可以作為集合的元素。

A.是B.否

38.列表對象的extend()方法屬于原地操作,調用前后列表對象的地址不變。

A.是B.否

39.執(zhí)行語句frommathimportsin之后,可以直接使用sin()函數(shù),例如sin(3)。

A.是B.否

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

A.是B.否

三、填空題(10題)41.正則表達式模塊re的______________方法用來在字符串開始處進行指定模式的匹配。

42.Python擴展庫______________中封裝了Windows底層幾乎所有API函數(shù)。

43.表達式''.join('asdssfff'.split('sd'))的值為____________。

44.表達式'Helloworld.IlikePython.'.rfind('python')的值為________。

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

46.已知列表x=[1,2],執(zhí)行語句y=x[:]后,表達式xisnoty的值為_______。

47.表達式'Helloworld'.upper()的值為___________。

48.已知x為非空列表,那么表達式x.sort()==sorted(x)的值為__________。

49.已知列表x=list(range(10)),那么執(zhí)行語句delx[::2]之后,x的值為_________。

50.表達式'abc10'.isalnum()的值為______________。

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

52.考生文件夾下存在一個文件“PY202.py”,該文件是本題目的代碼提示框架,其中代碼可以任意修改。請在該文件中編寫代碼,以實現(xiàn)如下功能。用鍵盤輸入兩個大于0的整數(shù),按要求輸出這兩個整數(shù)之間(不包括這兩個整數(shù))的所有素數(shù)。素數(shù)又稱質數(shù),是指除了1和它本身以外不能被其他整數(shù)整除的數(shù)。試題程序:#以下代碼為提示框架#請在...處使用一行或多行代碼替換#請在_____處使用一行代碼替換#注意:提示框架的代碼可以任意修改,以完成程序功能為準lower=int(input(‘輸入?yún)^(qū)間最小值:’))upper=int(inputs(‘輸入?yún)^(qū)間最大值:’))fornuminrange(_____,_____):

53.考生文件夾下存在兩個Python源文件“PY301-1.py”和“PY301-2.py”,分別對應兩個問題,請按照文件內說明修改代碼,實現(xiàn)以下功能。李白,字太白,號青蓮居士,又號“謫仙人”,是唐代偉大的浪漫主義詩人,被后世譽為“詩仙”??忌募A下有一個“關山月.txt”文件,內容如下。明月出天山,蒼茫云海間。長風幾萬里,吹度玉門關。漢下白登道,胡窺青海灣。由來征戰(zhàn)地,不見有人還。戍客望邊邑,思歸多苦顏。高樓當此夜,嘆息未應閑。問題1:這是一段由標點符號分隔的文本,請編寫程序,以“?!本涮枮榉指?,將這段文本轉換為詩詞風格,輸出到文件“關山月-詩歌.txt”中。試題程序:#以下代碼為提示框架#請在...處使用一行或多行代碼替換#注意:提示框架的代碼可以任意修改,以完成程序功能為準fi=open("關山月.txt","r")…fi.close()fo.close()問題2:把問題1生成的“關山月-詩歌.txt”文件,以每行為單位,保留標點符號為原順序和位置,輸出全文的反轉形式。將文件保存在考生文件夾下并命名為“關山月-反轉.txt”。輸出的形式如下。高樓當此夜,嘆息未應閑。戍客望邊邑,思歸多苦顏。由來征戰(zhàn)地,不見有人還。漢下白登道,胡窺青海灣。長風幾萬里,吹度玉門關。明月出天山,蒼茫云海間。試題程序:#以下代碼為提示框架#請在...處使用一行或多行代碼替換#注意:提示框架的代碼可以任意修改,以完成程序功能為準fi=open("關山月-詩歌.txt","r")fo=open(“關山月-反轉.txt","w")…fi.close()fo.close()

參考答案

1.D一位教師可以對多個班級授課,一個班級也可以由多位教師授課,因此,教師和授課班級之間的聯(lián)系是多對多聯(lián)系。

2.B函數(shù)名不可以使用Python中的保留字,所以選B項。

3.B

4.D自然連接是一種特殊的等值連接,它要求兩個關系中進行比較的分量必須是相同的屬性組,并且在結果中把重復的屬性列去掉,所以B選項錯誤。笛卡兒積是用R集合中元素為第一元素,S集合中元素為第二元素構成的有序對,所以C選項錯誤??梢院苊黠@地看出,關系T是從關系R與關系S中取得的相同的關系組,所以使用的是交運算。本題選擇D選項。

5.B將7傳遞給函數(shù)形參變量n,之后進入多分支結構,依次判斷后,執(zhí)行else后面的語句。for語句為foriinrange(2,7),i從2依次變化到6,循環(huán)5次,將L[-1]+L[-2]的值通過append()方法加入列表L中。當i=2時,L[-1]+L[-2]=5+1=6,將6添加到列表L中,此時L=[1,5,6];當i=3時,L[-1]+L[-2]=6+5=11,將11添加到列表L中,此時L=[1,5,6,11];當i=4時,L[-1]+L[-2]=11+6=17,將17添加到列表L中,此時L=[1,5,6,11,17];當i=5時,L[-1]+L[-2]=17+11=28,將28添加到列表L中,此時L=[1,5,6,11,17,28];當i=6時,L[-1]+L[-2]=28+17=45,將45添加到列表L中,此時L=[1,5,6,11,17,28,45]。最后L[-2]%L[-1]=28%45=28,故程序輸出28。本題選擇B選項。

6.A在Python中,return語句用來結束函數(shù)并將程序返回到函數(shù)被調用的位置繼續(xù)執(zhí)行。re-turn\n語句可以出現(xiàn)在函數(shù)的任何部分,可以同時將0個、1\n個或多個函數(shù)運算結果返回給函數(shù)被調用處的變量。函數(shù)可以沒有return語句,此時函數(shù)并不返回值。B、D選項錯誤。Python函數(shù)定義中沒有對參數(shù)指定類型,則函數(shù)內的默認值參數(shù)是對函數(shù)的默認值參數(shù)屬性__defaults__的引用,C選項錯誤。eval()函數(shù)將去掉字符串最外側的引號,并按照Python語句方式執(zhí)行去掉引號后的字符內容,使用方式為<變量>=eval(\n<字符串>),其中變量用來保存對字符串內容進行Python運算的結果,故函數(shù)eval()可以用于數(shù)值表達式的求值,如eval(”2*\n3+1”)=7。本題選擇A選項。

7.D列表是包含0個或多個元素的有序序列,屬于序列類型。列表用中括號([])表示,由于列表屬于序列類型,故繼承了序列類型的所有屬性和方法。索引是列表的基本操作,用于獲得列表中的一個元素,該操作沿用序列類型的索引方式,即正向遞增序號或反向遞減序號,使用中括號作為索引操作符,索引號不得超過列表的元素范圍,否則將產(chǎn)生lndexError錯誤。索引下標從0開始。列表可以進行元素增加、刪除、替換、查找等操作。列表沒有長度限制,元素類型可以不同,能夠包含其他的組合數(shù)據(jù)類型,可以使用比較操作符(如>或<等)對列表進行比較,也可以對列表進行成員運算操作、長度計算和分片。故D項正確。

8.D

9.B棧按先進后出的原則組織數(shù)據(jù),所以入棧最早的元素最后出棧,本題選擇B選項。

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

11.A程序設計IPO模式內容如下。I:Input(輸入),程序的輸入。程序的輸入包括文件輸入、網(wǎng)絡輸入、控制臺輸入、隨機數(shù)據(jù)輸入、程序內部參數(shù)輸入等。輸入是一個程序的開始。P:Process(處理),程序的主要邏輯。程序對輸入進行處理,輸出產(chǎn)生結果。處理的方法也叫算法,是程序最重要的部分??梢哉f,算法是一個程序的主要靈魂。O:Output(輸出),程序的輸出。程序的輸出包括屏幕顯示輸出、文件輸出、網(wǎng)絡輸出、操作系統(tǒng)內部變量輸出等。輸出是一個程序展示運算成果的方式。本題選擇A選項。

12.D

13.D對字符串中某個子串或區(qū)間的檢索稱為切片。切片的使用方式如下。<字符串或字符串變量>[N:M]切片獲取字符串從N到M(不包含M)的子字符串,其中N和M為字符串的索引,可以混合使用正向遞增索引和反向遞減索引。切片要求N和M都在字符串的索引區(qū)間,如果N大于等于M,則返回空字符串。如果N缺失,則默認將N設為0;如果M缺失,則默認表示到字符串結尾。題干中s[1:5]=‘2345’,s[0:3]=‘1231’,s[-10:-5]=‘12345’,s[0:4]=‘1234’。本題選擇D選項。

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

15.A在Python中,使用open()打開文件的操作過程中需要注意,由于“\\”是字符串中的轉義符,所以表示路徑時,使用“\\\\”,“/”或“//”代替“\\”。本題選擇A選項。

16.B在Python中,屬于Web開發(fā)的第三方庫的有Django庫、pyramid庫及Flask庫。本題選擇B選項。

17.A列表的索引是從0開始的,以此類推;使用append()函數(shù)可以向列表插入元素,但只能插入列表的末尾;使用remove(x)函數(shù)是將列表中出現(xiàn)的第一個x元素刪除。本題選擇A選項。

18.D縮進格式要求程序對齊,清晰簡明地表示了語句的所屬關系;Python采用大寫字母、小寫字母、數(shù)字、下劃線和漢字等字符及其組合進行命名,但名字的首字符不能是數(shù)字,標識符中間不能出現(xiàn)空格,長度沒有限制;Python的保留字是大小寫敏感的,true是保留字,但true不是保留字。

19.B列表索引從0開始,lisl[1]=lis2是為列表lis2賦值并覆蓋lisl[1]位置上的元素,運算后lis1=[1,[‘loves’],[‘python’]]。本題選擇B選項。

20.D屬于Web開發(fā)方向的Python第三方庫有:Django、Pyramid、Flask等。Pygame屬于游戲開發(fā)方向,SciPy屬于數(shù)據(jù)分析方向,PDFMiner屬于文本處理方向。本題選擇D選項。

21.B解析:耦合性和內聚性足模塊獨立性的兩個定性標準。內聚性是一個模塊內部各個元素間彼此結合的緊密程度的度量,作為軟件結構設計的設計原則,要求每個模塊的內部都具有很強的內聚性;耦合性是指模塊間相互連接的緊密程度的度量,一個模塊與其他模塊的耦合性越強則該模塊的獨立性越弱。一般優(yōu)秀的軟件設計應盡量做到高內聚、低耦合,即減弱模塊之間的耦合性和提高模塊內的內聚性,有利于提高模塊的獨立性。

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

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

24.D對字符串中某個子串或區(qū)間的檢索稱為切片。切片的使用方式如下:\n<字符串或字符串變量>[N:M]\n切片獲取字符串從N到M(不包含M)的子字符串,其中N和M為字符串的索引序號,可以混合使用正向遞增序號和反向遞減序號。切片要求N和M都在字符串的索引區(qū)間,如果N大于等于M,則返回空字符串。如果N缺失,則默認將N設為0;如果M缺失,則默認表示到字符串結尾。\n題干中s[1:5]=’2345’,s[0:3]=’123’,s[一10:一5]=’12345’,s[0:4]=’1234’。

25.B將實參age=43,famlyName=”趙”分別賦給形參age和famlyName,之后進入多分支結構進行判斷,因為40<age=43<50,執(zhí)行第一個elif后面的語句,用”+”進行字符串連接,故輸出“您好!趙阿姨”。本題選擇B選項。

26.Dlambda表達式中可以調用其他函數(shù),該表達式的計算結果相當于函數(shù)的返回值。

27.D在Python中,想要在列表中的任意位置插入元素,一般使用insert()方法。insert()方法有兩個參數(shù):第一個參數(shù)代表在列表中的位置,第二個參數(shù)是在這個位置處插入的元素。注意:插人時,是插入該位置之前。列表下標從0開始,S\n=[4,2,9,1],s[3]=1,則執(zhí)行s.insert(3,3)后,S=[4,2,9,3,1],最后print(s),本題選擇D選項。

28.C在Python中,0.1+0.2=0.30000000000000004。原因是:對于十進制數(shù),它只能表示以進制數(shù)的質因子為分母的分數(shù)。10的質因子有2和5,因此1/2、1/4、1/5、1/8和1/10都可以精確表示;相反,1/3、1/6和1/7都是循環(huán)小數(shù),因為它們的分母使用了質因子3或者7。二進制(進制數(shù)為2)下,只有一個質因子,即2,因此只能精確表示分母質因子是2的分數(shù)。二進制中,1/2、1/4和1/8都可以被精確表示,但1/5或者1/10就變成了循環(huán)小數(shù)。所以,在十進制中能夠精確表示的0.1與0.2(1/10與1/5),在計算機所使用的二進制中就變成了循環(huán)小數(shù)。當對這些循環(huán)小數(shù)進行數(shù)學運算并將二進制數(shù)據(jù)轉換成人類可讀的十進制數(shù)據(jù)時,會對小數(shù)尾部進行截斷處理。在不同的語言中,運行0.1+0.2會輸出不同的結果。本題選擇C選項。

29.B在Python中,使用for-in-方式形成的循環(huán)能遍歷的類型有字符串、文件、mnge()函數(shù)或組合數(shù)據(jù)類型,不能遍歷復數(shù)。本題選擇B選項。

30.B外層for循環(huán)是將a[0]=[1,2,3],a[1]=[4,5,6],a[2]=[7,8,9]依次賦給變量c;內層for循環(huán)將變量j從0遞增到2,即累加c[1]+c[2]+c[3]的值。所以內層循環(huán)加外層循環(huán)是計算1+2+3+4+5+6+7+8+9的值,即s=45。本題選擇B選項。

31.N

32.N

33.N

34.Y

35.Y

36.N

37.N

38.Y

39.Y

40.Y

41.match()

42.pywin32

43.'assfff'

44.-1

45.False

46.True

47.'HELLOWORLD'

48.False

49.[1,3,5,7,9]

50.True

51.s=input(“請輸入一個十進制數(shù):”)num=int(s)Prim(”轉換成二進制數(shù)是:{:b}".format(num))本題考查input()函數(shù)和format()方法的使用。由于inPiit()函數(shù)返回的結果為字符串類型,所以需要將s轉換為整數(shù)類型用于計算,這可以使用int()函數(shù),因此第1空應填入int(s)。題目要求以二進制數(shù)輸出,可使用format()方法完成,對于整數(shù)類型,輸出格式包括6種:b表示輸出整數(shù)的二進制方式;C表示輸出整數(shù)對應的unicode字符;d表示輸出整數(shù)的十進制方式;0表示輸出整數(shù)的八進制方式;x表示輸出整數(shù)的小寫十六進制方式;X表示輸出整數(shù)的大寫十六進制方式。因此第2空應填入:b,第3空應填入num。

52.lower=int(input(‘輸入?yún)^(qū)間最小值:’))upper=int(inputs(‘輸入?yún)^(qū)間最大值:’))fornuminrange(lower+1,upper):Ifnum>1:Foriin染個(2,num):If(num%i)==0:BreakElse:Print(num)題目要求輸出兩個整數(shù)之間(不包括這兩個整數(shù))的所有素數(shù),因此mnge()函數(shù)的參數(shù)應為lower+1和upper。for循環(huán)遍歷range(lower\n+l,upper)返回的每個整數(shù)num,判斷該數(shù)是否為素數(shù)。如果num大于1(1既不是素數(shù)也不是合數(shù)),且該數(shù)能被取值范圍為[2,num-1\n]的任何一個整數(shù)整除,那么該數(shù)一定不是素數(shù),否則一定是素數(shù)。

53.(1)fi=open("關山月.txt”,"r")fi=open("關山月-詩歌.txt","w")Txt=fi.read()Is=txt.split(“?!?Fo.write(“。\\n”.join(is))fi.close()fo.close()(2)fi=open("關山月-詩歌.txt","r")fo=open(“關山月-反轉.txt","w")Txt=fi.readlines()Txt.reverse()Forrowintxt:Fo.write(row)fi.close()fo.close()⑴題目給出的文件內容是一段文本,要把文本改為詩詞風格,即以全角句號分隔,可使用字符串的split()方法,該方法返回的是一個列表;列表的每個元素都是一行詩句,使用join()方法把列表的每一個元素寫入“關山月_詩歌.txt”文件中,連接符為全角句號和換行符;操作完成之后將打開的文件用close()方法關閉,避免內容的丟失。(2)把“問題1”生成的詩詞風格的文件按照每行為單位將其逆序輸出,須使用列表的reveree()方法,即需要把文件的內容轉換為列表類型,readlines()方法從文件中讀入所有行的內容,以每行為元素形成一個列表,然后調用reverse()方法反轉,將反轉后的內容寫入“關山月-反轉.txt”文件中。操作完成之后將打開的文件用close()方法關閉,避免內容的丟失。福建省三明市全國計算機等級考試Python語言程序設計學校:________班級:________姓名:________考號:________

一、單選題(30題)1.中學教師和授課班級之間的聯(lián)系是()。

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

2.下面關于Python中函數(shù)的說法錯誤的是()。

A.函數(shù)的一個優(yōu)點是方便修改,更易擴展

B.函數(shù)名是可以使用保留字的

C.函數(shù)名必須以下劃線、中文或字母開頭

D.函數(shù)名區(qū)分大小寫

3.下面的排序算法中初始數(shù)據(jù)集的排列順序對算法的性能無影響的是()A.插入排序B.堆排序C.冒泡排序D.快速排序

4.有3個關系R、S、T如下:

由關系R和S通過運算得到關系T,則所使用的運算為()。

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

5.以下程序的輸出結果是()。deffibRate(n): ifn<=0: return-1 elifn==1: return-1 elifn==2: return1 else: L=[1,5] foriinrange(2,n): L.append(L[-1]+L[-2]) returnL[-2]%L[-1]print(fibRate(7))

A.0.6B.28C.-1D.1

6.以下關于Python函數(shù)的描述中,正確的是()。

A.函數(shù)eVal()可以用于數(shù)值表達式的求值,如eval("2*3+1”)

B.Python中,def和return是函數(shù)必須使用的保留字

C.Pythcm函數(shù)定義中沒有對參數(shù)指定類型,這說明參數(shù)在函數(shù)中可以當作任意類型使用

D.—個函數(shù)中只允許有一條return語句

7.以下關于Python列表的描述中,正確的是()。

A.列表的長度和內容都可以改變,但元素類型必須相同

B.不可以對列表進行成員運算操作、長度計算和分片

C.列表的索引是從1開始的

D.可以使用比較操作符(如>或<等)對列表進行比較

8.以下哪個選項是正確的Python搜索變量的順序

A.內置作用域(Built-in)→全局/模塊作用域(Global)→當前作用域被嵌入的本地作用域(Enclosinglocals)→本地作用域(Local)

B.本地作用域(Local)→當前作用域被嵌入的本地作用域(Enclosinglocals))→內置作用域(Built-in)→全局/模塊作用域(Global)

C.本地作用域(Local)→內置作用域(Built-in)→當前作用域被嵌入的本地作用域(Enclosinglocals)→全局/模塊作用域(Global)

D.本地作用域(Local)→當前作用域被嵌入的本地作用域(Enclosinglocals)→全局/模塊作用域(Global)→內置作用域(Built-in)

9.一個棧的初始狀態(tài)為空?,F(xiàn)將元素1、2、3、4、5、A、B、C、D、E依次入棧,然后再依次出棧,則元素出棧的順序是()。

A.12345ABCDEB.EDCBA54321C.ABCDE12345D.54321EDCBA

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

A.NoneB.FalseC.FalseorFalseD.True

11.在Python中,IPO模式不包括()。

A.Program(程序)B.Input(輸入)C.Process(處理)D.Output(輸出)

12.要將3.1415926變成00003.14如何進行格式化輸出?

A."%.2f"%3.1415629

B."%8.2f"%3.1415629

C."%0.2f"%3.1415629

D."%08.2f"%3.1415629

13.s=‘1234567890’,以下表示‘1234’的是()。A.s[1:5]B.s[0:3]C.s[-10:-5]D.s[0:4]

14.以下關于Python分支結構的描述中,錯誤的是()。

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

B.if-else結構是可以嵌套的

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

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

15.在Python中,使用open()打開一個Windows操作系統(tǒng)D盤下的文件,路徑名錯誤的是()。

A.D:\PythonTest\a.txt

B.D:\\PythonTest\\a.txt

C.D:/PythonTest/a.txt

D.D://PythonTest//a.txt

16.在Python中,屬于Web開發(fā)的第三方庫是()。

A.mayaviB.flaskC.PyQt5D.time

17.下列關于列表的說法正確的是()。

A.列表中的值可以是任何數(shù)據(jù)類型,被稱為元素或項

B.列表的索引是從1開始的,以此類推

C.使用append()函數(shù)可以向列表的指定位置插入元素

D.使用remove()函數(shù)可以從列表中刪除元素,但必須知道元素在列表中的位置

18.以下關于Python程序語法元素的描述,正確的選項是()。

A.縮進格式要求程序對齊,增添了編程難度

B.Python變量名允許以數(shù)字開頭

C.true是Python的保留字

D.所有的if、while、def、class語句后面都要用’:’結尾

19.以下程序的輸出結果是()。lis1=[1,2,[‘python’]]lis2=[‘loves’]lis1[1]=lis2print(lis1)

A.[lis2,2,[‘python’]]

B.[1,[‘love’],[‘python’]]

C.[1,2,‘python’,‘loves']

D.[1,2,[‘python’,‘loves’]

20.以下屬于Python用于Web開發(fā)第三方庫的是()。

A.PygameB.SciPyC.PDFMinerD.Pyramid

21.軟件設計中模塊劃分應遵循的準則是()。A.低內聚低耦合

B.高內聚低耦合

C.低內聚高耦合

D.高內聚高耦合

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

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

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

C.編譯是將目標代碼轉換成源代碼的過程

D.解釋是將源代碼一次性轉換成目標代碼同時逐條運行目標代碼的過程

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

A.installB.pipC.PyQt5D.pyinstaller

24.S=’1234567890’,以下表示’1234’的選項是()。

A.s[1:5]B.s[0:3]C.s[一10:-5]D.s[0:4]

25.以下代碼的輸出結果是()。defHello(famlyName,age):ifage>50:print(”您好!”+famlyName+”奶奶”)elifage>40:print(”您好!”+famlyName+”阿姨”)elifage>30:print(”您好!”+famlyName+”姐姐”)else:print(”您好!”+”小”+famlyName)Hello(age=43,famlyName=”趙”)

A.您好!趙奶奶B.您好!趙阿姨C.您好!趙姐姐D.函數(shù)調用出錯

26.以下關于匿名函數(shù)的描述,錯誤的是()。

A.在Python中,lambda表達式屬于可調用對象

B.lambda表達式中可以使用任意復雜的表達式,但是必須只編寫一個表

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論