湖南省株洲市全國計算機等級考試Python語言程序設計重點匯總(含答案)_第1頁
湖南省株洲市全國計算機等級考試Python語言程序設計重點匯總(含答案)_第2頁
湖南省株洲市全國計算機等級考試Python語言程序設計重點匯總(含答案)_第3頁
湖南省株洲市全國計算機等級考試Python語言程序設計重點匯總(含答案)_第4頁
湖南省株洲市全國計算機等級考試Python語言程序設計重點匯總(含答案)_第5頁
已閱讀5頁,還剩20頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

湖南省株洲市全國計算機等級考試Python語言程序設計重點匯總(含答案)學校:________班級:________姓名:________考號:________

一、單選題(30題)1.下列關于Python中復數類型的描述錯誤的是()。

A.復數由實數部分和虛數部分構成

B.復數可以看作二元有序實數對(a,b)

C.虛數部分必須有后綴j,且為小寫

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

2.學校的每個社團都有一名團長,且一個同學可同時擔任多個社團的團長,則實體團長和實體社團間的聯系是()。

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

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

A.列表B.復數C.字符串D.字典

4.程序流程圖中帶有箭頭的線段表示的是()。

A.圖元關系B.數據流C.控制流D.調用關系

5.執(zhí)行以下代碼的結果是()A.4B.5C.8D.12

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

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

7.以下關于浮點數3.0和整數3的描述,正確的是()。

A.兩者使用相同的硬件執(zhí)行單元B.兩者使用相同的計算機指令處理方法C.兩者是相同的數據類型D.兩者具有相同的值

8.下面的d是一個字典變量,能夠輸出數字2的語句是()。d={'food1:{'cake1:1,'egg1:5},'cake':2,'egg’:3}

A.print(d['food1]['egg1])

B.print(d['cake'])

C.print(d['food1][-1])

D.print(d['cake'][1])

9.在Python中關于單引號與雙引號的說法中正確的是()

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

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

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

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

10.字典這種數據結構相較為其它,最大的特點是()

A.有序存儲B.鍵值對應C.成員唯一D.可被迭代

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

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

12.以下程序的輸出結果是()。foriin”miss":Forjinrange(3):print(i,end=”)ifi=="i”:breakA.missmissmissB.mmmissssssC.mmmiiissssssD.mmmssssss

13.從鍵盤輸入數字5,以下程序的輸出結果是()。n=eval(input(“請輸入一個整數:”))s=0ifn>=5: n-=1 s=4ifn<5: n-=1 s=3print(s)

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

14.關于以下代碼的描述中,正確的是()。defrune(a,b):c=a**2+bb=areturnca=10b=2c=func(b,a)+a

A.執(zhí)行該函數后,變量c的值為112

B.該函數名稱為fun

C.執(zhí)行該函數后,變量b的值為2

D.執(zhí)行該函數后,變量b的值為10

15.下面關于Python中模塊導入的說法錯誤的是()。

A.Python中,可以使用import語句將一個源文件作為模塊導入

B.在系統(tǒng)導入模塊時,會創(chuàng)建一個名為源代碼的文件的對象,該對象引用模塊的名字空間,即可通過這個對象訪問模塊中的函數和變量

C.import語句可在程序的任何位置使用,可以在程序中多次導入統(tǒng)一模塊,每次導人該模塊時都會將該模塊中的代碼執(zhí)行一次

D.模塊導入時可以使用as關鍵字來改變模塊的引用對象名字

16.關于以下程序的描述中,正確的是()。.deffunc(a,b): c=a**2+b b=a returnca=10b=2c=func(b,a)+a

A.執(zhí)行該函數后,變量c的值為112

B.該函數名稱為fun

C.執(zhí)行該函數后,變量b的值為2

D.執(zhí)行該函數后,變量b的值為10

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

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

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

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

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

18.基本路徑測試屬于()。

A.黑盒測試方法且是靜態(tài)測試B.黑盒測試方法且是動態(tài)測試C.白盒測試方法且是動態(tài)測試D.白盒測試方法且是靜態(tài)測試

19.以下關于Python函數的描述中,錯誤的是()。

A.Python程序的main函數可以改變?yōu)槠渌Q

B.如果Python程序包含一個函數main(),這個函數與其他函數地位相同

C.Python程序可以不包含main函數

D.Python程序需要包含一個主函數且只能包含一個主函數

20.以下描述中,錯誤的是()。

A.Python語言通過索引來訪問列表中元素,索引可以是負整數

B.列表用方括號來定義,繼承了序列類型的所有屬性和方法

C.Python列表是各種類型數據的集合,列表中的元素不能夠被修改

D.Python語言的列表類型能夠包含其他的組合數據類型

21.以下關于Python的try語句的描述中,錯誤的是()。

A.try用來捕捉執(zhí)行代碼發(fā)生的異常,處理異常后能夠回到異常處繼續(xù)執(zhí)行

B.執(zhí)行try代碼塊觸發(fā)異常后,會執(zhí)行except后面的語句

C.一個try代碼塊可以對應多個處理異常的except代碼塊

D.try代碼塊不觸發(fā)異常時,不會執(zhí)行except后面的語句

22.以下保留字不用于循環(huán)邏輯的是()。

A.tryB.elseC.forD.continue

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

A.代碼中n是可選參數

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

C.s是全局變量

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

24.下面屬于Python的標準庫的是()。

A.turtleB.jiebaC.SciPyD.Flask

25.擬在屏幕上輸出HelloWorld,使用的Python語句是()。

A.printf(‘HelloWorld’)

B.print(HelloWorld)

C.print(“HelloWorld")

D.printf("HelloWorld")

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

A.在UTF一8編碼中一個漢字需要占用3個字節(jié)

B.在GBK和CP936編碼中一個漢字需要2個字節(jié)

C.Python運算符%不僅可以用來求余數,還可以用來格式化字符串

D.Python字符串方法replace()對字符串進行原地修改

27.下列哪個語句在Python中是非法的()。

A.x=y=z=1B.x=(y=z+1)C.x,y=y,xD.x+=y

28.以下程序的輸出結果是()。a=3.6e-1b=4.2e3print(b-a)

A.4199.64B.7.8e2C.0.6e-4D.4199.064

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

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

B.Python變量名允許以數字開頭

C.true是Python的保留字

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

30.Python中文件的打開模式為‘t’,對應的文件打開模式為()。

A.只讀模式B.只寫模式C.文本文件模式D.二進制文件模式

二、判斷題(10題)31.Python使用縮進來體現代碼之間的邏輯關系。

A.是B.否

32.在Python中0oa1是合法的八進制數字表示形式。

A.是B.否

33.已知x為非空字符串,那么表達式“.join(x.split())==x的值一定為True。A.是B.否

34.已知x=3,那么賦值語句x='abcedfg'是無法正常執(zhí)行的。

A.是B.否

35.在Python中0xad是合法的十六進制數字表示形式。

A.是B.否

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

A.是B.否

37.同一個列表對象中所有元素必須為相同類型。A.是B.否

38.二進制文件不能使用記事本程序打開。

A.是B.否

39.假設已成功導入os和sys標準庫,那么表達式os.path.dirname(sys.executable)的值為Python安裝目錄。

A.是B.否

40.調用帶有默認值參數的函數時,不能為默認值參數傳遞任何值,必須使用函數定義時設置的默認值。

A.是B.否

三、填空題(10題)41.表達式[1]*2的值為_________________。

42.Python運算符中用來計算集合并集的是_______。

43.已知列表x=[1,3,2],那么執(zhí)行語句y=list(reversed(x))之后,x的值為__________。

44.表達式callable(int)的值為___________。

45.已知x=[1,2,3,2,3],執(zhí)行語句x.remove(2)之后,x的值為____________。

46.已知vec=[[1,2],[3,4]],則表達式[colforrowinvecforcolinrow]的值為__________________________。

47.簡單解釋Python基于值的內存管理模式。

48.表達式'abcdefg'.split('d')的值為__________________。

49.Python內置函數()用來返回序列中的最小元素。

50.在函數內部可以通過關鍵字()來定義全局變量()。

四、操作題(3題)51.考生文件夾下存在兩個Python源文件,分別對應兩個問題,請按照文件內說明修改代碼,實現以下功能。馬和駱駝都是哺乳動物,它們都有4只腳,體型也差不多大,我們將在這里為它們編寫屬于它們各自的類。問題1:在“PY301-l.py”文件中修改代碼,代碼中編寫了一個馬(Horse)的類,在這個類中馬有3個屬性,分別是年齡(age)、品種(category)及性別(gender)。在每創(chuàng)建一個馬的對象時,我們需要為其指定它的年齡、品種及性別。該類中還編寫一個get_descriptive()方法,能夠輸出馬的這3個屬性。每一匹馬都有自己的最快速度,所以類中有一個speed()方法,可以輸出馬的最快速度值。并且在馬的生命過程中,它的速度一直在變,類中還有一個update_Speed()方法用來更新馬當前的最快速度值。例如:一匹12歲的阿拉伯公馬,在草原上奔跑的速度為50千米每小時,要求調用get_descriptive()和up-date_speed()方法,將輸出的結果保存在考生文件夾下,文件命名為“PY301-1.txt”。試題程序:#以下代碼為提示框架#請在...處使用一行或多行代碼替換#請在_____處使用一行代碼替換#注意:提示框架的代碼可以任意修改,以完成程序功能為準fo=open("PY301-1.txt”,"w")_____Horse():def_____(self,category,gender,age):…defget_descriptive(self〉:info='thishorseis‘+_____+‘yearsold,‘+'itscategoryis‘+_____+‘,’+‘itsfenderis'++’,’fo.write(info+"\n")defupdate_speed(self,new一speed):fo.write(‘thespeedofthishorseis‘+str(self.horse一speed)+"km/h.")…fo.close()問題2:在“PY301-2.py”文件中修改代碼,該代碼編寫了一個駱駝類(Camel),這個類繼承自上一個文件中的馬類但是不對馬類中的屬性和方法進行操作。因為每個駱駝的駝峰數量不一致,我們在類中添加駝峰數目這個新屬性,并且添加一個輸出駱駝駝峰數目的方法。例如:一個20歲的雙峰母駱駝以每小時40千米的速度奔跑在沙漠中,調用父類的方法和Camel類本身的方法將結果保存在“PY301-2.txt”中,保存在考生文件夾下。試題程序:#以下代碼為提示框架#請在...處使用一行或多行代碼替換#請在_____處使用一行代碼替換#注意:提示框架的代碼可以任意修改,以完成程序功能為準fo=open("PY301-2.txt","w")_____Horse():def_____(self,category,gender,age):defget_descriptive(self):info='thishorseis‘+_____+‘yearsold,’+'itscategoryis‘+_____+‘,’+‘itsfenderis‘+_____+’,’fo.write(info+"\n")defupdate_speed(self,new_speed):fo.write(’thespeedofthishorseis‘+str(self.horse_speed)+"km/h.\n")classCamel(Horse):Def_init_(self,category,gender,age):_____.___init___(category,gender,age〉self.hump_size=2defdescribe_hump_size(self):fo.write(’thiscamelhas‘+str(self.hump_size)+‘hump.’)…fo.close()

52.考生文件夾下存在一個文件PY202.py,該文件是本題目的代碼提示框架,其中代碼可以任意修改,請在該文件中編寫代碼,以實現如下功能:

編寫程序,實現將列表[51,33,54,56,67,88,431,111,141,72,45,2,78,12,15,5,69]中的素數去除,并輸出去除素數后列表的元素個數,結果保存在考生文件夾下,命名為“PY202.txt”。。請結合程序整體框架,補充橫線處代碼。

試題程序:

#以下代碼為提示框架

#請在程序的…處使用一行或多行代碼替換

#請在程序的______處使用一行代碼替換

#注意:提示框架代碼可以任意修改,以完成程序功能為準

fo=open(”PY202.txt”,“w”)

defprime(num):

……#此處可以是多行代碼

ls=[51,33,54,56,67,88,431,111,141,72,45,2,78,12,15,5,69]

lis=[]foriinls:

ifprime(i)==False:

________#處為一行代碼fo.write(”>>>(),列表長度為{}".format(_______,_________)))fo.close()

53.考生文件夾下存在一個文件“PY102.Py”,請寫代碼替換橫線,不修改其他代碼,實現以下功能。用鍵盤輸入一段文本,保存在一個字符串變量s中,分別用Python內置函數和jieba庫中已有函數計算字符串s的中文字符個數和中文詞語個數。注意:中文字符包含中文標點符號。示例格式如下。

鍵盤輸入:科技是第一生產力屏幕輸出:中文字符數為8,中文詞語數為4。

試題程序:#請在程序的處使用一行代碼或表達式替換

#注意:請不要修改其他已給出代碼importjiebas=input("請輸入一個字符串")n=_____(1)_____m=_____(2)_____print("中文字符數為{},中文詞語數為{}format(n,m))

參考答案

1.CPython中復數類型的虛數部分的后綴可以為j或者J;復數的實部可以單獨存在,但是虛部不可以單獨存在;復數由實部和虛部構成,可以使用z.\nreal和z.imag分別獲得它的實部和虛部。本題選擇C選項。

2.A每個社團都有一名團長,一個同學可同時擔任多個社團的團長,則實體團長和實體社團間的聯系是一對多。本題選擇A選項。

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

4.C解析:程序流程圖是人們對解決問題的方法、思路或算法的一種描述。其中,圖框表示各種操作的類型,圖框中的文字和符號表示操作的內容,流程線表示操作的先后次序。帶箭頭的線段在數據流程圖中表示數據流。帶箭頭的線段在程序流程圖中表示控制流。題中給出的選項中,在圖元之間用帶有箭頭的線段表示圖元關系。在模塊之間用帶有箭頭的線段表示調用關系。構成程序流程圖的基本圖符及含義:→或↓表示控制流;□表示加工步驟;

表示邏輯條件。

5.B

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

7.D浮點數3.0和整數3具有相同的值,硬件執(zhí)行單元、計算機指令處理方法和數據類型均不相同。本題選擇D選項。

8.B在Python中,字典是存儲可變數量鍵值對的數據結構,鍵和值可以是任意數據類型,通過鍵索引值,并可以通過鍵修改值。因此,可以直接利用鍵值對關系索引元素。索引語法格式為\n<值>=<字典變置>[<鍵\n>]。故能夠正確索引字典并輸出數字2的語句是Print(d['cake’]),本題選擇B選項。

9.C

10.B

11.B

12.B外層for循環(huán)依次將字符串miss中的字符賦給變量i,內層for控制循環(huán)3次,注意是先執(zhí)行Print()再判斷if條件,輸出第一個i后,碰到if判斷條件,當i\r\n==”i”時退出內層循環(huán),所以結果為mrmnis-sssss。本題選擇B選項。

13.B輸入5,因為n=5滿足第一個if條件,所以n=n-1,n=4,s=4;因為現在n=4,滿足第二個if條件,所以n=n-1,n=3,s=3。最終輸出3。本題選擇B選項。

14.C程序中,將實參b的值傳給形參a,將實參a的值傳給形參b,則在函數體中c=2**2+10=14,函數返回14,則實參c=14+10=24;形參a和b在函數結束后會自動釋放,并沒有影響到實參a和b的值,故實參a仍然是10,實參b仍然是2。

15.Cimport語句確實可以在程序的任何位置使用,但是當在程序中多次導入同一個模塊時,該模塊中的代碼僅僅在該模塊被首次導入時執(zhí)行,本題選擇C選項。

16.C程序中,將實參b的值傳給形參a,將實參a的值傳給形參b,則在函數體中c=2**2+10=14,函數返回14,則實參c=14+10=24;形參a和b在函數結束后會自動釋放,并沒有影響到實參a和b的值,故實參a仍然是10,實參b仍然是2。本題選擇C選項。

17.D循環(huán)隊列的隊頭指針與隊尾指針都不是固定的,隨著入隊與出隊操作要進行變化。因為是循環(huán)利用的隊列結構,所以隊頭指針有時可能大于隊尾指針,有時也可能小于隊尾指針。

18.C白盒測試方法主要有邏輯覆蓋、基本路徑測試等。黑盒測試方法主要有等價類劃分法、邊界值分析法、錯誤推測法及因果圖等。基本路徑測試根據軟件過程性描述中的控制流確定程序的環(huán)路復雜性度量,用此度量定義基本路徑的集合,并由此導出一組測試用例對每一條獨立執(zhí)行路徑進行測試。因此,基本路徑測試屬于動態(tài)測試。本題選擇C選項。

19.DPython是一種腳本解釋語言,與C/C++和Java有很大的區(qū)別,沒有主函數的說法。當運行單個Python文件時,如文件名為a.py,則a的屬性__name_==‘_main_’,并不是首先執(zhí)行所謂的main函數。Python整個程序自頂向下順序執(zhí)行。本題選D選項。

20.C列表用中括號([])表示,由于列表屬于序列類型,故繼承了序列類型的所有屬性和方法,B項正確。索引是列表的基本操作,用于獲得列表中的一個元素,該操作沿用序列類型的索引方式,即正向遞增序號或反向遞減序號,使用中括號作為索引操作符,索引號不得超過列表的元素范圍,否則將產生IndexError錯誤。A項正確。列表可以進行元素增加、刪除、替換、查找等操作,列表沒有長度限制,元素類型可以不同,能夠包含其他的組合數據類型,故D項正確、C項錯誤。

21.APython使用關鍵字try和except進行異常處理,語法格式如下:try:<語句塊1>except:<語句塊2>“語句塊1”是正常執(zhí)行的程序內容,執(zhí)行這個語句塊發(fā)生異常時,則執(zhí)行except關鍵字后面的“語句塊2”,一個try代碼塊可以對應多個處理異常的except代碼塊。本題選擇A選項。

22.A用于循環(huán)邏輯的保留字:while、for、else、break、continue。try用于捕捉異常。

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

24.Aturtle庫是Python的標準庫,用于基本圖形的繪制;jieba庫是Python的第三方中文分詞庫;SciPy是數據分析方向的第三方庫;Flask是Web開發(fā)方向的第三方庫。本題選擇A選項。

25.C在Python中,輸出用print()函數,HelloWorld是字符串類型,需要加單引號或雙引號。本題選擇C選項。

26.D字符串方法replace()用來替換字符串中指定字符或子字符串的所有重復出現,每次只能替換一個字符或一個字符串,把指定的字符串參數作為一個整體對待。該方法并不修改原字符串,而是返回一個新字符串。

27.B賦值運算的一般形式:變量=表達式,左邊只能是變量。A選項是連續(xù)賦值,C選項是序列賦值,D選項可以寫為x=x+y。本題選擇B選項。

28.A程序中b=4200,a=0.36,b-a=4199.64。本題選擇A選項。

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

30.C在Python中,文件的打開模式對應為:“r”表示只讀模式;“w”表示只寫模式;“t”表示文本文件模式;“b”表示二進制文件模式。本題選擇C選項。

31.Y

32.N

33.N

34.N

35.Y

36.Y

37.N

38.N

39.Y

40.N

41.[1,1]

42.|

43.[1,3,2]

44.True

45.[1,3,2,3]

46.[1,2,3,4]

47.Python采用的是基于值得內存管理方式,在Python中可以為不同變量賦值為相同值,這個值在內存中只有一份,多個變量指向同一個內存地址;Python具有自動內存管理功能,會自動跟蹤內存中所有的值,對于沒有任何變量指向的值,Python自動將其刪除。

48.['abc','efg']

49.min()

50.global

51.(1)fo=open(”PY301一1.txt”,”w”)classHorse():Def__init__(self,category,gender,age):self.category=categoryself.gender=genderself.age=ageself.horse_speed=0defget_descriptive(self):info=’thishorseis’+str(self.age)+’yearsold,’+’itscategory\r\nis’+self.category+’,’+'itsfenderis'+self.gender+’.’fo.write(info+”\\n”)defupdate_speed(self,new_speed):self.horse_speed=new_speedfo.write(’thespeedofthishorseis’+str(self.horse_speed)+”km/h.”)\r\nhorse=Horse("Arab","male","12")horse.get_deseriptive()horse.update_speed(50)fo.close()(2)fo=open(”PY301-2.txt”,”w”)classHorse():def__init__(self,category,gender,age):self.category=categoryself.gender=genderself.age=ageself.horse_speed=0defget_descriptive(self):info=’thishorseis’+str(self.age)+’yearsold,’+’itscategory\r\nis’+self.category+’,’+'itsfenderis’+self.gender+’.’fo.write(info+”\\n”)defupdate_speed(self,new_speed):self.horse_speed=new_speedfo.write(’thespeed0fthishorseis’+str(self.horse_speed)+”km/h.\\n”)classCamel(Horse):def_init_(self,category,gender,age):super()_init_(category,gender,age)self.hump_size=2defdescribe_hump_size(self):fo.write(’thiscamelhas’+str(self.hump_size)+’hump.’)camel=Camel(Doublehump","female","20")camel.get_descriptive()camel.update_speed(40)camel.describe_hump_size()fo.close()(1

溫馨提示

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

評論

0/150

提交評論