安徽省合肥市全國計(jì)算機(jī)等級(jí)考試Python語言程序設(shè)計(jì)_第1頁
安徽省合肥市全國計(jì)算機(jī)等級(jí)考試Python語言程序設(shè)計(jì)_第2頁
安徽省合肥市全國計(jì)算機(jī)等級(jí)考試Python語言程序設(shè)計(jì)_第3頁
安徽省合肥市全國計(jì)算機(jī)等級(jí)考試Python語言程序設(shè)計(jì)_第4頁
安徽省合肥市全國計(jì)算機(jī)等級(jí)考試Python語言程序設(shè)計(jì)_第5頁
已閱讀5頁,還剩47頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

安徽省合肥市全國計(jì)算機(jī)等級(jí)考試Python語言程序設(shè)計(jì)學(xué)校:________班級(jí):________姓名:________考號(hào):________

一、單選題(30題)1.下列關(guān)于Python內(nèi)置函數(shù)的使用描述錯(cuò)誤的是()。

A.int(x)是將x轉(zhuǎn)換為一個(gè)整數(shù)

B.print(“6+5”)的輸出是11

C.die.clear()的結(jié)果是清空字典dic

D.使用aPPend()函數(shù)可以向列表添加元素

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

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

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

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

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

3.下列敘述中正確的是()。A.線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)與順序存儲(chǔ)結(jié)構(gòu)所需要的存儲(chǔ)空間是相同的

B.線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)所需要的存儲(chǔ)空間一般要多于順序存儲(chǔ)結(jié)構(gòu)

C.線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)所需要的存儲(chǔ)空間一般要少于順序存儲(chǔ)結(jié)構(gòu)

D.線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)與順序存儲(chǔ)結(jié)構(gòu)在存儲(chǔ)空間的需求上沒有可比性

4.有3個(gè)關(guān)系R、S、T如下:

則由關(guān)系R和S得到關(guān)系T的運(yùn)算是()。

A.自然連接B.差C.交D.并

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

A.printf(‘HelloWorld’)

B.print(HelloWorld)

C.print(“HelloWorld")

D.printf("HelloWorld")

6.下面代碼的輸出結(jié)果是()。a=1deffun(a):a=a+2returnaprint(a,fun(a))

A.l,lB.l,3C.3,3D.3,l

7.以下關(guān)于函數(shù)優(yōu)點(diǎn)的描述中,正確的是()。

A.函數(shù)可以表現(xiàn)程序的復(fù)雜度B.函數(shù)可以使程序更加模塊化C.函數(shù)可以減少代碼多次使用D.函數(shù)便于書寫

8.下列函數(shù)中,不是Python內(nèi)置函數(shù)的是()。

A.exec()B.sum()C.close()D.eval()

9.關(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]

10.Python3中獲取用戶輸入并默認(rèn)以字符串存儲(chǔ)的函數(shù)是()

A.raw_inputB.inputC.rawD.print

11.以下代碼的輸出結(jié)果是()。d=[‘food’:{’cake’:1,’egg’:5}}print(d.get(‘egg’,'nothisfood’))

A.eggB.1C.foodD.nothisfood

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

A.-1B.TrueC.FalseD.0

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

A.missmissmissB.mmmissssssC.mmmiiissssssD.mmmssssss

14.下面這段代碼的輸出是()。l=’abcd’deff(x,result=['a','b,'c','d']):ifx:result.remove(x[一1])f(x[:一1])returnresultprint(f(l))

A.[’a’,,b’,’c’,’d’]B.['b',’c’,’d’]C.[’a’,'b',’c’]D.[]

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

16.Python中用來表示代碼塊所屬關(guān)系的語法是()。

A.花括號(hào)B.圓括號(hào)C.縮進(jìn)D.冒號(hào)

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

A.循環(huán)隊(duì)列有隊(duì)頭和隊(duì)尾兩個(gè)指針,因此,循環(huán)隊(duì)列是非線性結(jié)構(gòu)

B.在循環(huán)隊(duì)列中,只需要隊(duì)頭指針就能反映隊(duì)列中元素的動(dòng)態(tài)變化情況

C.在循環(huán)隊(duì)列中,只需要隊(duì)尾指針就能反映隊(duì)列中元素的動(dòng)態(tài)變化情況

D.循環(huán)隊(duì)列中元素的個(gè)數(shù)是由隊(duì)頭指針和隊(duì)尾指針共同決定

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

19.以下程序的輸出結(jié)果是()。d={“大?!?“藍(lán)色”,“天空”,“灰色”,“大地”,“黑色”}print(d[“大地”],d.get(“天空”,“黃色”))

A.黑色黑色B.黑色灰色C.黑色黃色D.黑色藍(lán)色

20.下列關(guān)于Python內(nèi)置函數(shù)的使用,描述錯(cuò)誤的是()。

A.int(x)是將x轉(zhuǎn)換為一個(gè)整數(shù)

B.Print(”6+5")的輸出是11

C.dic.Clear()的結(jié)果是清空字典die

D.使用append()函數(shù)可以向列表添加元素

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

A.快速排序適用于順序存儲(chǔ)的線性表

B.快速排序適用于鏈?zhǔn)酱鎯?chǔ)的線性表

C.鏈?zhǔn)酱鎯?chǔ)的線性表不可能排序

D.堆排序適用于非線性結(jié)構(gòu)

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

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

23.以下關(guān)于數(shù)據(jù)組織的描述中,錯(cuò)誤的是()。

A.—維數(shù)據(jù)采用線性方式組織,可以用Python集合或列表類型表示

B.列表類型僅用于表示一維和二維數(shù)據(jù)

C.二維數(shù)據(jù)采用表格方式組織,可以用Python列表類型表示

D.更高維數(shù)據(jù)組織由鍵值對類型的數(shù)據(jù)構(gòu)成,可以用Python字典類型表示

24.列表l1=[1,2,3],則表達(dá)式1+l1()A.[2,3,4]B.[1,1,2,3]C.[1,2,4]D.異常

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

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

26.以下描述中,不屬于Python控制結(jié)構(gòu)的是()。

A.分支結(jié)構(gòu)B.程序異常C.跳轉(zhuǎn)結(jié)構(gòu)D.順序結(jié)構(gòu)

27.下面屬于Python文本處理方向的第三方庫的是()。

A.PILB.mayaviC.TVTKD.pdfminer

28.下面代碼的輸出結(jié)果是()。deff(n):ifn==1:return1else:returnn*f(n-1)print(f(4))

A.24B.4C.0D.10

29.一個(gè)類繼承另一個(gè)類,那么被繼承的這個(gè)類被稱為()。

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

30.下面代碼的輸出結(jié)果是()。deffun(x,y,z):u=x+y—zprint(u)fun(1+2j,5,4一1j)

A.NameErrorB.(2+3j)C.2D.3j

二、判斷題(10題)31.文件對象是可以迭代的。

A.是B.否

32.帶有else子句的異常處理結(jié)構(gòu),如果不發(fā)生異常則執(zhí)行else子句中的代碼。A.是B.否

33.以寫模式打開的文件無法進(jìn)讀操作。

A.是B.否

34.可以使用py2exe或pyinstaller等擴(kuò)展庫把Python源程序打包成為exe文件,從而脫離Python環(huán)境在Windows平臺(tái)上運(yùn)行。

A.是B.否

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

A.是B.否

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

A.是B.否

37.在Python3.5中運(yùn)算符+不僅可以實(shí)現(xiàn)數(shù)值的相加、字符串連接,還可以實(shí)現(xiàn)列表、元組的連接和集合的并集運(yùn)算。

A.是B.否

38.在Python中定義類時(shí),運(yùn)算符重載是通過重寫特殊方法實(shí)現(xiàn)的。例如,在類中實(shí)現(xiàn)了__mul__()方法即可支持該類對象的**運(yùn)算符。

A.是B.否

39.在Python中定義函數(shù)時(shí)不需要聲明函數(shù)的返回值類型。

A.是B.否

40.相同內(nèi)容的字符串使用不同的編碼格式進(jìn)行編碼得到的結(jié)果并不完全相同。

A.是B.否

三、填空題(10題)41.使用pip工具在線升級(jí)科學(xué)計(jì)算擴(kuò)展庫numpy的完整命令是__________。

42.表達(dá)式'aaasdf'.lstrip('as')的值為________________。

43.使用上下文管理關(guān)鍵字______________可以自動(dòng)管理文件對象,不論何種原因結(jié)束該關(guān)鍵字中的語句塊,都能保證文件被正確關(guān)閉。

44.執(zhí)行語句x,y,z=map(str,range(3))之后,變量y的值為___________。

45.假設(shè)有列表a=['name','age','sex']和b=['Dong',38,'Male'],請使用一個(gè)語句將這兩個(gè)列表的內(nèi)容轉(zhuǎn)換為字典,并且以列表a中的元素為“鍵”,以列表b中的元素為“值”,這個(gè)語句可以寫為_____________________。

46.Python運(yùn)算符中用來計(jì)算集合并集的是_______。

47.表達(dá)式int('101',2)的值為__________。

48.表達(dá)式3or5的值為________。

49.表達(dá)式list(filter(None,[0,1,2,3,0,0]))的值為___________________。

50.表達(dá)式{1,2,3,4}-{3,4,5,6}的值為__________________。

四、操作題(3題)51.考生文件夾下存在一個(gè)文件“PY103.py”,請寫代碼替換橫線,不修改其他代碼,實(shí)現(xiàn)以下功能。用鍵盤輸入十進(jìn)制整數(shù),按要求將這個(gè)整數(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試題程序:#請?jiān)赺____處使用一行代碼或表達(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))

52.考生文件夾下存在一個(gè)文件PY103.py,請寫代碼替換橫線,不修改其他代碼,實(shí)現(xiàn)以下功能:使用循環(huán)輸出從1到50之間的奇數(shù)。

試題程序:

#請?jiān)赺____處使用一行代碼或表達(dá)式替換

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

ifcount%2==0:

print(count,end=”,”)

53.考生文件夾下存在一個(gè)文件“PY201.Py”,請寫代碼替換橫線,不修改其他代碼,實(shí)現(xiàn)以下功能。使用turtle庫的turtle.circle()函數(shù)、turtle.seth()函數(shù)及turtle.left()函數(shù)繪制一個(gè)四瓣花圖形,效果如下所示。

試題程序:#請?jiān)赺____處使用一行代碼或表達(dá)式替換#注意:請不要修改其他已給出代碼importturtleforiinrange(_____(1)_____):turtle.seth(_____(2)_____)turtle.circle(50,90)turtle.seth(_____(3)_____)turtle.circle(50,90)turtle.(4)

參考答案

1.BB選項(xiàng)中正確的輸出應(yīng)為6+5,當(dāng)Print()函數(shù)圓括號(hào)內(nèi)的變量被引號(hào)標(biāo)注,則該變量被視為字符串。本題選擇B選項(xiàng)。

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

3.B線性鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)中每個(gè)結(jié)點(diǎn)都由數(shù)據(jù)域與指針域兩部分組成,增加了存儲(chǔ)空間,所以一般要多于順序存儲(chǔ)結(jié)構(gòu)。

4.B關(guān)系T中的元組是關(guān)系R中有而關(guān)系S中沒有的元組的集合,所以進(jìn)行的是差運(yùn)算。本題選擇B選項(xiàng)。

5.C在Python中,輸出用print()函數(shù),HelloWorld是字符串類型,需要加單引號(hào)或雙引號(hào)。本題選擇C選項(xiàng)。

6.B在函數(shù)中傳入的實(shí)參的值是1,函數(shù)執(zhí)行完后函數(shù)內(nèi)局部變量a為3,而函數(shù)中的局部變量a與函數(shù)外的全局變量a互不相干,所以全局變量a在函數(shù)執(zhí)行完仍然是1本題選擇B選項(xiàng)。

7.B函數(shù)定義:函數(shù)是指一組語句的集合通過一個(gè)名字(函數(shù)名)封裝起來,要想執(zhí)行這個(gè)函數(shù),只需要調(diào)用其函數(shù)名即可。函數(shù)能提高應(yīng)用的模塊性和代碼的重復(fù)利用率。本題選B選項(xiàng)。

8.Cclose()函數(shù)用于文件關(guān)閉,通過file.close()的方式調(diào)用,不是Python的內(nèi)置函數(shù)。本題選擇C選項(xiàng)。

9.B函數(shù)定義時(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選項(xiàng)。

10.B

11.D根據(jù)字典的索引方式可知,d.get(’eggthis\nfood’)索引的是字典第一層,但是第一層只有鍵food,沒有鍵egg,故索引不出值,輸出的是“nothisfood”。本題選擇D選項(xiàng)。

12.C在Python中,0.1+0.2=0.30000000000000004。原因是:對于十進(jìn)制數(shù),它只能表示以進(jìn)制數(shù)的質(zhì)因子為分母的分?jǐn)?shù)。10的質(zhì)因子有2和5,因此1/2、1/4、1/5、1/8和1/10都可以精確表示;相反,1/3、1/6和1/7都是循環(huán)小數(shù),因?yàn)樗鼈兊姆帜甘褂昧速|(zhì)因子3或者7。二進(jìn)制(進(jìn)制數(shù)為2)下,只有一個(gè)質(zhì)因子,即2,因此只能精確表示分母質(zhì)因子是2的分?jǐn)?shù)。二進(jìn)制中,1/2、1/4和1/8都可以被精確表示,但1/5或者1/10就變成了循環(huán)小數(shù)。所以,在十進(jìn)制中能夠精確表示的0.1與0.2(1/10與1/5),在計(jì)算機(jī)所使用的二進(jìn)制中就變成了循環(huán)小數(shù)。當(dāng)對這些循環(huán)小數(shù)進(jìn)行數(shù)學(xué)運(yùn)算并將二進(jìn)制數(shù)據(jù)轉(zhuǎn)換成人類可讀的十進(jìn)制數(shù)據(jù)時(shí),會(huì)對小數(shù)尾部進(jìn)行截?cái)嗵幚?。在不同的語言中,運(yùn)行0.1+0.2會(huì)輸出不同的結(jié)果。本題選擇C選項(xiàng)。

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

14.D這段代碼是一個(gè)遞歸函數(shù),作用是把result列表中所有與1中一致的元素刪除,所以最后的結(jié)果是一個(gè)空的列表,即[]。

15.B

16.C在Python中,縮進(jìn)指每行語句開始前的空白區(qū)域,用來表示Python程序間的包含和層次關(guān)系。本題選擇C選項(xiàng)。

17.D\r\n所謂循環(huán)隊(duì)列,就是將隊(duì)列存儲(chǔ)空間的最后一個(gè)位置繞到第一個(gè)位置,形成邏輯上的環(huán)狀空間,供隊(duì)列循環(huán)使用。在循環(huán)隊(duì)列中,用隊(duì)尾指針rear指向隊(duì)列中的隊(duì)尾元素,用排頭指針front指向排頭元素的前一個(gè)位置,因此,從排頭指針front指向的后一個(gè)位置直到隊(duì)尾指針real指向的位置之間所有的元素均為隊(duì)列中的元素。求解隊(duì)列中元素個(gè)數(shù)的方法是:若front>rear,隊(duì)列中有n-front+rear個(gè)元素(其中n為循環(huán)隊(duì)列的容量);若front<rear,隊(duì)列中有real-front個(gè)元素;若front=rear,隊(duì)列中有n個(gè)或0個(gè)元素。循環(huán)隊(duì)列是線性結(jié)構(gòu)。因此本題的正確答案是D。

18.B

19.B在Python中,字典是存儲(chǔ)可變數(shù)量鍵值對的數(shù)據(jù)結(jié)構(gòu),通過字典類型實(shí)現(xiàn)映射。字典使用花括號(hào)({})建立,每個(gè)元素是一個(gè)鍵值對,使用方式為{<鍵1>:<值1>,<鍵2>:<值2>,…,<鍵n>:<值n>},其中,鍵和值通過冒號(hào)連接,不同鍵值對通過逗號(hào)隔開。字典具有和集合類似的性質(zhì),即鍵值對之間沒有順序且不能重復(fù)。d[“鍵”]獲取鍵對應(yīng)的值,d.get(key,default)方法是用來返回key對應(yīng)的值,如果字典中不存在該鍵,則返回默認(rèn)值。本題選擇B選項(xiàng)。

20.BB選項(xiàng)中正確的輸出應(yīng)為6+5,若print()函數(shù)圓括號(hào)內(nèi)的變量用引號(hào)標(biāo)注,則視為字符串。本題選擇B選項(xiàng)。

21.A排序可以在不同的存儲(chǔ)結(jié)構(gòu)上實(shí)現(xiàn),但快速排序法適用于順序存儲(chǔ)的線性表,不適用于鏈?zhǔn)酱鎯?chǔ)的線性表。堆排序適用于線性結(jié)構(gòu),不適用于非線性結(jié)構(gòu)。本題選擇A選項(xiàng)。

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

23.A一維數(shù)據(jù)采用線性方式組織,在Python中主要采用列表形式表示,集合不屬于線性結(jié)構(gòu)。在Python中,列表類型僅用于表示一維和二維數(shù)據(jù)。二維數(shù)據(jù)采用二維表格方式組織,在Python中可以采用二維列表形式表示。高維數(shù)據(jù)由鍵值對類型的數(shù)據(jù)構(gòu)成,采用對象方式組織,在Python中可以采用字典類型表示。本題選擇A選項(xiàng)。

24.D

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

26.CPython在3種基本控制結(jié)構(gòu)(順序結(jié)構(gòu)、選擇結(jié)構(gòu)(分支結(jié)構(gòu))、循環(huán)結(jié)構(gòu))上進(jìn)行了適當(dāng)?shù)財(cái)U(kuò)展。在分支結(jié)構(gòu)原理的基礎(chǔ)上,Python增加了異常處理,使用try-except保留字。本題選擇C選項(xiàng)。

27.Dmayavi和TVTK是數(shù)據(jù)可視化方向的第三方庫,PIL是圖像處理方面的第三方庫。本題選擇D選項(xiàng)。

28.A該代碼的功能是根據(jù)傳入的參數(shù)求取該數(shù)的階乘,經(jīng)過一系列的運(yùn)算將結(jié)果返回,4的階乘為24。本題選擇A選項(xiàng)。

29.A一個(gè)類繼承另一個(gè)類,那么被繼承的這個(gè)類被稱為超類或者父類。

30.Bfun()函數(shù)進(jìn)行加減計(jì)算,輸入為復(fù)數(shù),按復(fù)數(shù)加減運(yùn)算法則計(jì)算結(jié)果為(2+3j)。

31.Y

32.Y

33.Y

34.Y

35.N

36.Y

37.N

38.N

39.Y

40.Y

41.pipinstall--upgradenumpypipinstall--upgradenumpy

42.'df'

43.with

44.'1'

45.c=dict(zip(a,b))

46.|

47.5

48.3

49.[1,2,3]

50.{1,2}

51.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))考查format()方法的使用。格式控制標(biāo)記可以使用變量來表示,即用槽來指定對應(yīng)的控制標(biāo)記及數(shù)量,模板字符串在本題中總共有3個(gè)槽,即參數(shù)變量需要3個(gè),但此時(shí)的參數(shù)只有一個(gè),這里需要指定對應(yīng)的變量。<類型\r\n>\r\n表示輸出整數(shù)和浮點(diǎn)數(shù)類型的格式規(guī)則。b表示二進(jìn)制;o表示八進(jìn)制;大寫的X表示大寫的十六進(jìn)制。因此第1空填入o:b,第2空填入0:o,第3空填入0:X。

52.count=0\r\n

whilecount<50:\r\n

count+=1\r\n

ifcount%2==0:\r\n

continue\r\n

print(count,end=”,”)判斷一個(gè)數(shù)是否為奇數(shù),即判斷這個(gè)數(shù)能否被2整除,可以被整除則為偶數(shù),結(jié)束本次循環(huán),使用continue語句;不可以被整除則為奇數(shù),輸出該數(shù)。while循環(huán)不具有自動(dòng)計(jì)數(shù)的功能,所以需要定義一個(gè)變量,初始值為0,每經(jīng)過一次循環(huán),變量加1;當(dāng)變量超過50時(shí),停止循環(huán)。

53.importturtleforiinrange(4):turtle.seth(90*(i+1))turtle,circle(50,90)turtle.seth(-90+i*90)turtle,

circle(50,90)turtle.hideturtle()該題考查的是用Python標(biāo)準(zhǔn)庫turtle庫繪制四瓣花。因?yàn)樾枰L制4個(gè)花瓣,所以循環(huán)執(zhí)行4次,第1空填4。然后利用cirde()函數(shù)繪制圓弧的特點(diǎn),每旋轉(zhuǎn)90度繪制四分之一個(gè)圓弧,且題目中用seth()函數(shù)表示旋轉(zhuǎn)角度,此函數(shù)依據(jù)絕對角度旋轉(zhuǎn),因此第2空填90\r\n*(i+1),第3空填-90+i*90。最后隱藏畫筆箭頭,第4空應(yīng)填hideturtle()。安徽省合肥市全國計(jì)算機(jī)等級(jí)考試Python語言程序設(shè)計(jì)學(xué)校:________班級(jí):________姓名:________考號(hào):________

一、單選題(30題)1.下列關(guān)于Python內(nèi)置函數(shù)的使用描述錯(cuò)誤的是()。

A.int(x)是將x轉(zhuǎn)換為一個(gè)整數(shù)

B.print(“6+5”)的輸出是11

C.die.clear()的結(jié)果是清空字典dic

D.使用aPPend()函數(shù)可以向列表添加元素

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

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

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

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

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

3.下列敘述中正確的是()。A.線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)與順序存儲(chǔ)結(jié)構(gòu)所需要的存儲(chǔ)空間是相同的

B.線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)所需要的存儲(chǔ)空間一般要多于順序存儲(chǔ)結(jié)構(gòu)

C.線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)所需要的存儲(chǔ)空間一般要少于順序存儲(chǔ)結(jié)構(gòu)

D.線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)與順序存儲(chǔ)結(jié)構(gòu)在存儲(chǔ)空間的需求上沒有可比性

4.有3個(gè)關(guān)系R、S、T如下:

則由關(guān)系R和S得到關(guān)系T的運(yùn)算是()。

A.自然連接B.差C.交D.并

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

A.printf(‘HelloWorld’)

B.print(HelloWorld)

C.print(“HelloWorld")

D.printf("HelloWorld")

6.下面代碼的輸出結(jié)果是()。a=1deffun(a):a=a+2returnaprint(a,fun(a))

A.l,lB.l,3C.3,3D.3,l

7.以下關(guān)于函數(shù)優(yōu)點(diǎn)的描述中,正確的是()。

A.函數(shù)可以表現(xiàn)程序的復(fù)雜度B.函數(shù)可以使程序更加模塊化C.函數(shù)可以減少代碼多次使用D.函數(shù)便于書寫

8.下列函數(shù)中,不是Python內(nèi)置函數(shù)的是()。

A.exec()B.sum()C.close()D.eval()

9.關(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]

10.Python3中獲取用戶輸入并默認(rèn)以字符串存儲(chǔ)的函數(shù)是()

A.raw_inputB.inputC.rawD.print

11.以下代碼的輸出結(jié)果是()。d=[‘food’:{’cake’:1,’egg’:5}}print(d.get(‘egg’,'nothisfood’))

A.eggB.1C.foodD.nothisfood

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

A.-1B.TrueC.FalseD.0

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

A.missmissmissB.mmmissssssC.mmmiiissssssD.mmmssssss

14.下面這段代碼的輸出是()。l=’abcd’deff(x,result=['a','b,'c','d']):ifx:result.remove(x[一1])f(x[:一1])returnresultprint(f(l))

A.[’a’,,b’,’c’,’d’]B.['b',’c’,’d’]C.[’a’,'b',’c’]D.[]

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

16.Python中用來表示代碼塊所屬關(guān)系的語法是()。

A.花括號(hào)B.圓括號(hào)C.縮進(jìn)D.冒號(hào)

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

A.循環(huán)隊(duì)列有隊(duì)頭和隊(duì)尾兩個(gè)指針,因此,循環(huán)隊(duì)列是非線性結(jié)構(gòu)

B.在循環(huán)隊(duì)列中,只需要隊(duì)頭指針就能反映隊(duì)列中元素的動(dòng)態(tài)變化情況

C.在循環(huán)隊(duì)列中,只需要隊(duì)尾指針就能反映隊(duì)列中元素的動(dòng)態(tài)變化情況

D.循環(huán)隊(duì)列中元素的個(gè)數(shù)是由隊(duì)頭指針和隊(duì)尾指針共同決定

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

19.以下程序的輸出結(jié)果是()。d={“大?!?“藍(lán)色”,“天空”,“灰色”,“大地”,“黑色”}print(d[“大地”],d.get(“天空”,“黃色”))

A.黑色黑色B.黑色灰色C.黑色黃色D.黑色藍(lán)色

20.下列關(guān)于Python內(nèi)置函數(shù)的使用,描述錯(cuò)誤的是()。

A.int(x)是將x轉(zhuǎn)換為一個(gè)整數(shù)

B.Print(”6+5")的輸出是11

C.dic.Clear()的結(jié)果是清空字典die

D.使用append()函數(shù)可以向列表添加元素

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

A.快速排序適用于順序存儲(chǔ)的線性表

B.快速排序適用于鏈?zhǔn)酱鎯?chǔ)的線性表

C.鏈?zhǔn)酱鎯?chǔ)的線性表不可能排序

D.堆排序適用于非線性結(jié)構(gòu)

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

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

23.以下關(guān)于數(shù)據(jù)組織的描述中,錯(cuò)誤的是()。

A.—維數(shù)據(jù)采用線性方式組織,可以用Python集合或列表類型表示

B.列表類型僅用于表示一維和二維數(shù)據(jù)

C.二維數(shù)據(jù)采用表格方式組織,可以用Python列表類型表示

D.更高維數(shù)據(jù)組織由鍵值對類型的數(shù)據(jù)構(gòu)成,可以用Python字典類型表示

24.列表l1=[1,2,3],則表達(dá)式1+l1()A.[2,3,4]B.[1,1,2,3]C.[1,2,4]D.異常

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

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

26.以下描述中,不屬于Python控制結(jié)構(gòu)的是()。

A.分支結(jié)構(gòu)B.程序異常C.跳轉(zhuǎn)結(jié)構(gòu)D.順序結(jié)構(gòu)

27.下面屬于Python文本處理方向的第三方庫的是()。

A.PILB.mayaviC.TVTKD.pdfminer

28.下面代碼的輸出結(jié)果是()。deff(n):ifn==1:return1else:returnn*f(n-1)print(f(4))

A.24B.4C.0D.10

29.一個(gè)類繼承另一個(gè)類,那么被繼承的這個(gè)類被稱為()。

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

30.下面代碼的輸出結(jié)果是()。deffun(x,y,z):u=x+y—zprint(u)fun(1+2j,5,4一1j)

A.NameErrorB.(2+3j)C.2D.3j

二、判斷題(10題)31.文件對象是可以迭代的。

A.是B.否

32.帶有else子句的異常處理結(jié)構(gòu),如果不發(fā)生異常則執(zhí)行else子句中的代碼。A.是B.否

33.以寫模式打開的文件無法進(jìn)讀操作。

A.是B.否

34.可以使用py2exe或pyinstaller等擴(kuò)展庫把Python源程序打包成為exe文件,從而脫離Python環(huán)境在Windows平臺(tái)上運(yùn)行。

A.是B.否

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

A.是B.否

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

A.是B.否

37.在Python3.5中運(yùn)算符+不僅可以實(shí)現(xiàn)數(shù)值的相加、字符串連接,還可以實(shí)現(xiàn)列表、元組的連接和集合的并集運(yùn)算。

A.是B.否

38.在Python中定義類時(shí),運(yùn)算符重載是通過重寫特殊方法實(shí)現(xiàn)的。例如,在類中實(shí)現(xiàn)了__mul__()方法即可支持該類對象的**運(yùn)算符。

A.是B.否

39.在Python中定義函數(shù)時(shí)不需要聲明函數(shù)的返回值類型。

A.是B.否

40.相同內(nèi)容的字符串使用不同的編碼格式進(jìn)行編碼得到的結(jié)果并不完全相同。

A.是B.否

三、填空題(10題)41.使用pip工具在線升級(jí)科學(xué)計(jì)算擴(kuò)展庫numpy的完整命令是__________。

42.表達(dá)式'aaasdf'.lstrip('as')的值為________________。

43.使用上下文管理關(guān)鍵字______________可以自動(dòng)管理文件對象,不論何種原因結(jié)束該關(guān)鍵字中的語句塊,都能保證文件被正確關(guān)閉。

44.執(zhí)行語句x,y,z=map(str,range(3))之后,變量y的值為___________。

45.假設(shè)有列表a=['name','age','sex']和b=['Dong',38,'Male'],請使用一個(gè)語句將這兩個(gè)列表的內(nèi)容轉(zhuǎn)換為字典,并且以列表a中的元素為“鍵”,以列表b中的元素為“值”,這個(gè)語句可以寫為_____________________。

46.Python運(yùn)算符中用來計(jì)算集合并集的是_______。

47.表達(dá)式int('101',2)的值為__________。

48.表達(dá)式3or5的值為________。

49.表達(dá)式list(filter(None,[0,1,2,3,0,0]))的值為___________________。

50.表達(dá)式{1,2,3,4}-{3,4,5,6}的值為__________________。

四、操作題(3題)51.考生文件夾下存在一個(gè)文件“PY103.py”,請寫代碼替換橫線,不修改其他代碼,實(shí)現(xiàn)以下功能。用鍵盤輸入十進(jìn)制整數(shù),按要求將這個(gè)整數(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試題程序:#請?jiān)赺____處使用一行代碼或表達(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))

52.考生文件夾下存在一個(gè)文件PY103.py,請寫代碼替換橫線,不修改其他代碼,實(shí)現(xiàn)以下功能:使用循環(huán)輸出從1到50之間的奇數(shù)。

試題程序:

#請?jiān)赺____處使用一行代碼或表達(dá)式替換

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

ifcount%2==0:

print(count,end=”,”)

53.考生文件夾下存在一個(gè)文件“PY201.Py”,請寫代碼替換橫線,不修改其他代碼,實(shí)現(xiàn)以下功能。使用turtle庫的turtle.circle()函數(shù)、turtle.seth()函數(shù)及turtle.left()函數(shù)繪制一個(gè)四瓣花圖形,效果如下所示。

試題程序:#請?jiān)赺____處使用一行代碼或表達(dá)式替換#注意:請不要修改其他已給出代碼importturtleforiinrange(_____(1)_____):turtle.seth(_____(2)_____)turtle.circle(50,90)turtle.seth(_____(3)_____)turtle.circle(50,90)turtle.(4)

參考答案

1.BB選項(xiàng)中正確的輸出應(yīng)為6+5,當(dāng)Print()函數(shù)圓括號(hào)內(nèi)的變量被引號(hào)標(biāo)注,則該變量被視為字符串。本題選擇B選項(xiàng)。

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

3.B線性鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)中每個(gè)結(jié)點(diǎn)都由數(shù)據(jù)域與指針域兩部分組成,增加了存儲(chǔ)空間,所以一般要多于順序存儲(chǔ)結(jié)構(gòu)。

4.B關(guān)系T中的元組是關(guān)系R中有而關(guān)系S中沒有的元組的集合,所以進(jìn)行的是差運(yùn)算。本題選擇B選項(xiàng)。

5.C在Python中,輸出用print()函數(shù),HelloWorld是字符串類型,需要加單引號(hào)或雙引號(hào)。本題選擇C選項(xiàng)。

6.B在函數(shù)中傳入的實(shí)參的值是1,函數(shù)執(zhí)行完后函數(shù)內(nèi)局部變量a為3,而函數(shù)中的局部變量a與函數(shù)外的全局變量a互不相干,所以全局變量a在函數(shù)執(zhí)行完仍然是1本題選擇B選項(xiàng)。

7.B函數(shù)定義:函數(shù)是指一組語句的集合通過一個(gè)名字(函數(shù)名)封裝起來,要想執(zhí)行這個(gè)函數(shù),只需要調(diào)用其函數(shù)名即可。函數(shù)能提高應(yīng)用的模塊性和代碼的重復(fù)利用率。本題選B選項(xiàng)。

8.Cclose()函數(shù)用于文件關(guān)閉,通過file.close()的方式調(diào)用,不是Python的內(nèi)置函數(shù)。本題選擇C選項(xiàng)。

9.B函數(shù)定義時(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選項(xiàng)。

10.B

11.D根據(jù)字典的索引方式可知,d.get(’eggthis\nfood’)索引的是字典第一層,但是第一層只有鍵food,沒有鍵egg,故索引不出值,輸出的是“nothisfood”。本題選擇D選項(xiàng)。

12.C在Python中,0.1+0.2=0.30000000000000004。原因是:對于十進(jìn)制數(shù),它只能表示以進(jìn)制數(shù)的質(zhì)因子為分母的分?jǐn)?shù)。10的質(zhì)因子有2和5,因此1/2、1/4、1/5、1/8和1/10都可以精確表示;相反,1/3、1/6和1/7都是循環(huán)小數(shù),因?yàn)樗鼈兊姆帜甘褂昧速|(zhì)因子3或者7。二進(jìn)制(進(jìn)制數(shù)為2)下,只有一個(gè)質(zhì)因子,即2,因此只能精確表示分母質(zhì)因子是2的分?jǐn)?shù)。二進(jìn)制中,1/2、1/4和1/8都可以被精確表示,但1/5或者1/10就變成了循環(huán)小數(shù)。所以,在十進(jìn)制中能夠精確表示的0.1與0.2(1/10與1/5),在計(jì)算機(jī)所使用的二進(jìn)制中就變成了循環(huán)小數(shù)。當(dāng)對這些循環(huán)小數(shù)進(jìn)行數(shù)學(xué)運(yùn)算并將二進(jìn)制數(shù)據(jù)轉(zhuǎn)換成人類可讀的十進(jìn)制數(shù)據(jù)時(shí),會(huì)對小數(shù)尾部進(jìn)行截?cái)嗵幚?。在不同的語言中,運(yùn)行0.1+0.2會(huì)輸出不同的結(jié)果。本題選擇C選項(xiàng)。

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

14.D這段代碼是一個(gè)遞歸函數(shù),作用是把result列表中所有與1中一致的元素刪除,所以最后的結(jié)果是一個(gè)空的列表,即[]。

15.B

16.C在Python中,縮進(jìn)指每行語句開始前的空白區(qū)域,用來表示Python程序間的包含和層次關(guān)系。本題選擇C選項(xiàng)。

17.D\r\n所謂循環(huán)隊(duì)列,就是將隊(duì)列存儲(chǔ)空間的最后一個(gè)位置繞到第一個(gè)位置,形成邏輯上的環(huán)狀空間,供隊(duì)列循環(huán)使用。在循環(huán)隊(duì)列中,用隊(duì)尾指針rear指向隊(duì)列中的隊(duì)尾元素,用排頭指針front指向排頭元素的前一個(gè)位置,因此,從排頭指針front指向的后一個(gè)位置直到隊(duì)尾指針real指向的位置之間所有的元素均為隊(duì)列中的元素。求解隊(duì)列中元素個(gè)數(shù)的方法是:若front>rear,隊(duì)列中有n-front+rear個(gè)元素(其中n為循環(huán)隊(duì)列的容量);若front<rear,隊(duì)列中有real-front個(gè)元素;若front=rear,隊(duì)列中有n個(gè)或0個(gè)元素。循環(huán)隊(duì)列是線性結(jié)構(gòu)。因此本題的正確答案是D。

18.B

19.B在Python中,字典是存儲(chǔ)可變數(shù)量鍵值對的數(shù)據(jù)結(jié)構(gòu),通過字典類型實(shí)現(xiàn)映射。字典使用花括號(hào)({})建立,每個(gè)元素是一個(gè)鍵值對,使用方式為{<鍵1>:<值1>,<鍵2>:<值2>,…,<鍵n>:<值n>},其中,鍵和值通過冒號(hào)連接,不同鍵值對通過逗號(hào)隔開。字典具有和集合類似的性質(zhì),即鍵值對之間沒有順序且不能重復(fù)。d[“鍵”]獲取鍵對應(yīng)的值,d.get(key,default)方法是用來返回key對應(yīng)的值,如果字典中不存在該鍵,則返回默認(rèn)值。本題選擇B選項(xiàng)。

20.BB選項(xiàng)中正確的輸出應(yīng)為6+5,若print()函數(shù)圓括號(hào)內(nèi)的變量用引號(hào)標(biāo)注,則視為字符串。本題選擇B選項(xiàng)。

21.A排序可以在不同的存儲(chǔ)結(jié)構(gòu)上實(shí)現(xiàn),但快速排序法適用于順序存儲(chǔ)的線性表,不適用于鏈?zhǔn)酱鎯?chǔ)的線性表。堆排序適用于線性結(jié)構(gòu),不適用于非線性結(jié)構(gòu)。本題選擇A選項(xiàng)。

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

23.A一維數(shù)據(jù)采用線性方式組織,在Python中主要采用列表形式表示,集合不屬于線性結(jié)構(gòu)。在Python中,列表類型僅用于表示一維和二維數(shù)據(jù)。二維數(shù)據(jù)采用二維表格方式組織,在Python中可以采用二維列表形式表示。高維數(shù)據(jù)由鍵值對類型的數(shù)據(jù)構(gòu)成,采用對象方式組織,在Python中可以采用字典類型表示。本題選擇A選項(xiàng)。

24.D

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

26.CPython在3種基本控制結(jié)構(gòu)(順序結(jié)構(gòu)、選擇結(jié)構(gòu)(分支結(jié)構(gòu))、循環(huán)結(jié)構(gòu))上進(jìn)行了適當(dāng)?shù)財(cái)U(kuò)展。在分支結(jié)構(gòu)原理的基礎(chǔ)上,Python增加了異常處理,使用try-except保留字。本題選擇C選項(xiàng)。

27.Dmayavi和TVTK是數(shù)據(jù)可視化方向的第三方庫,PIL是圖像處理方面的第三方庫。本題選擇D選項(xiàng)。

28.A該代碼的功能是根據(jù)傳入的參數(shù)求取該數(shù)的階乘,經(jīng)過一系列的運(yùn)算將結(jié)果返回,4的階乘為24。本題選擇A選項(xiàng)。

29.A一個(gè)類繼承另一個(gè)類,那么被繼承的這個(gè)類被稱為超類或者父類。

30.Bfun()函數(shù)進(jìn)行加減計(jì)算,輸入為復(fù)數(shù),按復(fù)數(shù)加減運(yùn)算法則計(jì)算結(jié)果為(2+3j)。

31.Y

32.Y

33.Y

34.Y

35.N

36.Y

37.N

38.N

39.Y

40.Y

41.pipinstall--upgradenumpypipinstall--upgradenumpy

42.'df'

43.with

44.'1'

45.c=dict(zip(a,b))

46.|

47.5

48.3

49.[1,2,3]

50.{1,2}

51.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))考查format()方法的使用。格式控制標(biāo)記可以使用變量來表示,即用槽來指定對應(yīng)的控制標(biāo)記及數(shù)量,模板字符串在本題中總共有3個(gè)槽,即參數(shù)變量需要3個(gè),但此時(shí)的參數(shù)只有一個(gè),這里需要指定對應(yīng)的變量。<類型\r\n>\r\n表示輸出整數(shù)和浮點(diǎn)數(shù)類型的格式規(guī)則。b表示二進(jìn)制;o表示八進(jìn)制;大寫的X表示大寫的十六進(jìn)制。因此第1空填入o:b,第2空填入0:o,第3空填入0:X。

52.count=0\r\n

whilecount<50:\r\n

count+=1\r\n

ifcount%2==0:\r\n

continue\r\n

print(count,end=”,”)判斷一個(gè)數(shù)是否為奇數(shù),即判斷這個(gè)數(shù)能否被2整除,可以被整除則為偶數(shù),結(jié)束本次循環(huán),使用continue語句;不可以被整除則為奇數(shù),輸出該數(shù)。while循環(huán)不具有自動(dòng)計(jì)數(shù)的功能,所以需要定義一個(gè)變量,初始值為0,每經(jīng)過一次循環(huán),變量加1;當(dāng)變量超過50時(shí),停止循環(huán)。

53.importturtleforiinrange(4):turtle.seth(90*(i+1))turtle,circle(50,90)turtle.seth(-90+i*90)turtle,

circle(50,90)turtle.hideturtle()該題考查的是用Python標(biāo)準(zhǔn)庫turtle庫繪制四瓣花。因?yàn)樾枰L制4個(gè)花瓣,所以循環(huán)執(zhí)行4次,第1空填4。然后利用cirde()函數(shù)繪制圓弧的特點(diǎn),每旋轉(zhuǎn)90度繪制四分之一個(gè)圓弧,且題目中用seth()函數(shù)表示旋轉(zhuǎn)角度,此函數(shù)依據(jù)絕對角度旋轉(zhuǎn),因此第2空填90\r\n*(i+1),第3空填-90+i*90。最后隱藏畫筆箭頭,第4空應(yīng)填hideturtle()。安徽省合肥市全國計(jì)算機(jī)等級(jí)考試Python語言程序設(shè)計(jì)學(xué)校:________班級(jí):________姓名:________考號(hào):________

一、單選題(30題)1.下列關(guān)于Python內(nèi)置函數(shù)的使用描述錯(cuò)誤的是()。

A.int(x)是將x轉(zhuǎn)換為一個(gè)整數(shù)

B.print(“6+5”)的輸出是11

C.die.clear()的結(jié)果是清空字典dic

D.使用aPPend()函數(shù)可以向列表添加元素

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

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

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

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

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

3.下列敘述中正確的是()。A.線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)與順序存儲(chǔ)結(jié)構(gòu)所需要的存儲(chǔ)空間是相同的

B.線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)所需要的存儲(chǔ)空間一般要多于順序存儲(chǔ)結(jié)構(gòu)

C.線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)所需要的存儲(chǔ)空間一般要少于順序存儲(chǔ)結(jié)構(gòu)

D.線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)與順序存儲(chǔ)結(jié)構(gòu)在存儲(chǔ)空間的需求上沒有可比性

4.有3個(gè)關(guān)系R、S、T如下:

則由關(guān)系R和S得到關(guān)系T的運(yùn)算是()。

A.自然連接B.差C.交D.并

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

A.printf(‘HelloWorld’)

B.print(HelloWorld)

C.print(“HelloWorld")

D.printf("HelloWorld")

6.下面代碼的輸出結(jié)果是()。a=1deffun(a):a=a+2returnaprint(a,fun(a))

A.l,lB.l,3C.3,3D.3,l

7.以下關(guān)于函數(shù)優(yōu)點(diǎn)的描述中,正確的是()。

A.函數(shù)可以表現(xiàn)程序的復(fù)雜度B.函數(shù)可以使程序更加模塊化C.函數(shù)可以減少代碼多次使用D.函數(shù)便于書寫

8.下列函數(shù)中,不是Python內(nèi)置函數(shù)的是()。

A.exec()B.sum()C.close()D.eval()

9.關(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]

10.Python3中獲取用戶輸入并默認(rèn)以字符串存儲(chǔ)的函數(shù)是()

A.raw_inputB.inputC.rawD.print

11.以下代碼的輸出結(jié)果是()。d=[‘food’:{’cake’:1,’egg’:5}}print(d.get(‘egg’,'nothisfood’))

A.eggB.1C.foodD.nothisfood

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

A.-1B.TrueC.FalseD.0

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

A.missmissmissB.mmmissssssC.mmmiiissssssD.mmmssssss

14.下面這段代碼的輸出是()。l=’abcd’deff(x,result=['a','b,'c','d']):ifx:result.remove(x[一1])f(x[:一1])returnresultprint(f(l))

A.[’a’,,b’,’c’,’d’]B.['b',’c’,’d’]C.[’a’,'b',’c’]D.[]

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

16.Python中用來表示代碼塊所屬關(guān)系的語法是()。

A.花括號(hào)B.圓括號(hào)C.縮進(jìn)D.冒號(hào)

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

A.循環(huán)隊(duì)列有隊(duì)頭和隊(duì)尾兩個(gè)指針,因此,循環(huán)隊(duì)列是非線性結(jié)構(gòu)

B.在循環(huán)隊(duì)列中,只需要隊(duì)頭指針就能反映隊(duì)列中元素的動(dòng)態(tài)變化情況

C.在循環(huán)隊(duì)列中,只需要隊(duì)尾指針就能反映隊(duì)列中元素的動(dòng)態(tài)變化情況

D.循環(huán)隊(duì)列中元素的個(gè)數(shù)是由隊(duì)頭指針和隊(duì)尾指針共同決定

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

19.以下程序的輸出結(jié)果是()。d={“大海”,“藍(lán)色”,“天空”,“灰色”,“大地”,“黑色”}print(d[“大地”],d.get(“天空”,“黃色”))

A.黑色黑色B.黑色灰色C.黑色黃色D.黑色藍(lán)色

20.下列關(guān)于Python內(nèi)置函數(shù)的使用,描述錯(cuò)誤的是()。

A.int(x)是將x轉(zhuǎn)換為一個(gè)整數(shù)

B.Print(”6+5")的輸出是11

C.dic.Clear()的結(jié)果是清空字典die

D.使用append()函數(shù)可以向列表添加元素

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

A.快速排序適用于順序存儲(chǔ)的線性表

B.快速排序適用于鏈?zhǔn)酱鎯?chǔ)的線性表

C.鏈?zhǔn)酱鎯?chǔ)的線性表不可能排序

D.堆排序適用于非線性結(jié)構(gòu)

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

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

23.以下關(guān)于數(shù)據(jù)組織的描述中,錯(cuò)誤的是()。

A.—維數(shù)據(jù)采用線性方式組織,可以用Python集合或列表類型表示

B.列表類型僅用于表示一維和二維數(shù)據(jù)

C.二維數(shù)據(jù)采用表格方式組織,可以用Python列表類型表示

D.更高維數(shù)據(jù)組織由鍵值對類型的數(shù)據(jù)構(gòu)成,可以用Python字典類型表示

24.列表l1=[1,2,3],則表達(dá)式1+l1()A.[2,3,4]B.[1,1,2,3]C.[1,2,4]D.異常

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

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

26.以下描述中,不屬于Python控制結(jié)構(gòu)的是()。

A.分支結(jié)構(gòu)B.程序異常C.跳轉(zhuǎn)結(jié)構(gòu)D.順序結(jié)構(gòu)

27.下面屬于Python文本處理方向的第三方庫的是()。

A.PILB.mayaviC.TVTKD.pdfminer

28.下面代碼的輸出結(jié)果是()。deff(n):ifn==1:return1else:returnn*f(n-1)print(f(4))

A.24B.4C.0D.10

29.一個(gè)類繼承另一個(gè)類,那么被繼承的這個(gè)類被稱為()。

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

30.下面代碼的輸出結(jié)果是()。deffun(x,y,z):u=x+y—zprint(u)fun(1+2j,5,4一1j)

A.NameErrorB.(2+3j)C.2D.3j

二、判斷題(10題)31.文件對象是可以迭代的。

A.是B.否

32.帶有else子句的異常處理結(jié)構(gòu),如果不發(fā)生異常則執(zhí)行else子句中的代碼。A.是B.否

33.以寫模式打開的文件無法進(jìn)讀操作。

A.是B.否

34.可以使用py2exe或pyinstaller等擴(kuò)展庫把Python源程序打包成為exe文件,從而脫離Python環(huán)境在Windows平臺(tái)上運(yùn)行。

A.是B.否

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

A.是B.否

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

A.是B.否

37.在Python3.5中運(yùn)算符+不僅可以實(shí)現(xiàn)數(shù)值的相加、字符串連接,還可以實(shí)現(xiàn)列表、元組的連接和集合的并集運(yùn)算。

A.是B.否

38.在Python中定義類時(shí),運(yùn)算符重載是通過重寫特殊方法實(shí)現(xiàn)的。例如,在類中實(shí)現(xiàn)了__mul__()方法即可支持該類對象的**運(yùn)算符。

A.是B.否

39.在Python中定義函數(shù)時(shí)不需要聲明函數(shù)的返回值類型。

A.是B.否

40.相同內(nèi)容的字符串使用不同的編碼格式進(jìn)行編碼得到的結(jié)果并不完全相同。

A.是B.否

三、填空題(10題)41.使用pip工具在線升級(jí)科學(xué)計(jì)算擴(kuò)展庫numpy的完整命令是__________。

42.表達(dá)式'aaasdf'.lstrip('as')的值為________________。

43.使用上下文管理關(guān)鍵字______________可以自動(dòng)管理文件對象,不論何種原因結(jié)束該關(guān)鍵字中的語句塊,都能保證文件被正確關(guān)閉。

44.執(zhí)行語句x,y,z=map(str,range(3))之后,變量y的值為___________。

45.假設(shè)有列表a=['name','age','sex']和b=['Dong',38,'Male'],請使用一個(gè)語句將這兩個(gè)列表的內(nèi)容轉(zhuǎn)換為字典,并且以列表a中的元素為“鍵”,以列表b中的元素為“值”,這個(gè)語句可以寫為_____________________。

46.Python運(yùn)算符中用來計(jì)算集合并集的是_______。

47.表達(dá)式int('101',2)的值為__________。

48.表達(dá)式3or5的值為________。

49.表達(dá)式list(filter(None,[0,1,2,3,0,0]))的值為___________________。

50.表達(dá)式{1,2,3,4}-{3,4,5,6}的值為__________________。

四、操作題(3題)51.考生文件夾下存在一個(gè)文件“PY103.py”,請寫代碼替換橫線,不修改其他代碼,實(shí)現(xiàn)以下功能。用鍵盤輸入十進(jìn)制整數(shù),按要求將這個(gè)整數(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試題程序:#請?jiān)赺____處使用一行代碼或表達(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))

52.考生文件夾下存在一個(gè)文件PY103.py,請寫代碼替換橫線,不修改其他代碼,實(shí)現(xiàn)以下功能:使用循環(huán)輸出從1到50之間的奇數(shù)。

試題程序:

#請?jiān)赺____處使用一行代碼或表達(dá)式替換

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

ifcount%2==0:

print(count,end=”,”)

53.考生文件夾下存在一個(gè)文件“PY201.Py”,請寫代碼替換橫線,不修改其他代碼,實(shí)現(xiàn)以下功能。使用turtle庫的turtle.circle()函數(shù)、turtle.seth()函數(shù)及turtle.left()函數(shù)繪制一個(gè)四瓣花圖形,效果如下所示。

試題程序:#請?jiān)赺____處使用一行代碼或表達(dá)式替換#注意:請不要修改其他已給出代碼importturtleforiinrange(_____(1)_____):turtle.seth(_____(2)_____)turtle.circle(50,90)turtle.seth(_____(3)_____)turtle.circle(50,90)turtle.(4)

參考答案

1.BB選項(xiàng)中正確的輸出應(yīng)為6+5,當(dāng)Print()函數(shù)圓括號(hào)內(nèi)的變量被引號(hào)標(biāo)注,則該變量被視為字符串。本題選擇B選項(xiàng)。

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

3.B線性鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)中每個(gè)結(jié)點(diǎn)都由數(shù)據(jù)域與指針域兩部分組成,增加了存儲(chǔ)空間,所以一般要多于順序存儲(chǔ)結(jié)構(gòu)。

4.B關(guān)系T中的元組是關(guān)系R中有而關(guān)系S中沒有的元組的集合,所以進(jìn)行的是差運(yùn)算。本題選擇B選項(xiàng)。

5.C在Python中,輸出用print()函數(shù),HelloWorld是字符串類型,需要加單引號(hào)或雙引號(hào)。本題選擇C選項(xiàng)。

6.B在函數(shù)中傳入的實(shí)參的值是1,函數(shù)執(zhí)行完后函數(shù)內(nèi)局部變量a為3,而函數(shù)中的局部變量a與函數(shù)外的全局變量a互不相干,所以全局變量a在函數(shù)執(zhí)行完仍然是1本題選擇B選項(xiàng)。

7.B函數(shù)定義:函數(shù)是指一組語句的集合通過一個(gè)名字(函數(shù)名)封裝起來,要想執(zhí)行這個(gè)函數(shù),只需要調(diào)用其函數(shù)名即可。函數(shù)能提高應(yīng)用的模塊性和代碼的重復(fù)利用率。本題選B選項(xiàng)。

8.Cclose()函數(shù)用于文件關(guān)閉,通過file.close()的方式調(diào)用,不是Python的內(nèi)置函數(shù)。本題選擇C選項(xiàng)。

9.B函數(shù)定義時(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選項(xiàng)。

10.B

11.D根據(jù)字典的索引方式可知,d.get(’eggthis\nfood’)索引的是字典第一層,但是第一層只有鍵food,沒有鍵egg,故索引不出值,輸出的是“nothisfood”。本題選擇D選項(xiàng)。

12.C在Python中,0.1+0.2=0.30000000000000004。原因是:對于十進(jìn)制數(shù),它只能表示以進(jìn)制數(shù)的質(zhì)因子為分母的分?jǐn)?shù)。10的質(zhì)因子有2和5,因此1/2、1/4、1/5、1/8和1/10都可以精確表示;相反,1/3、1/6和1/7都是循環(huán)小數(shù),因?yàn)樗鼈兊姆帜甘褂昧速|(zhì)因子3或者7。二進(jìn)制(進(jìn)制數(shù)為2)下,只有一個(gè)質(zhì)因子,即2,因此只能精確表示分母質(zhì)因子是2的分?jǐn)?shù)。二進(jìn)制中,1/2、1/4和1/8都可以被精確表示,但1/5或者1/10就變成了循環(huán)小數(shù)。所以,在十進(jìn)制中能夠精確表示的0.1與0.2(1/10與1/5),在計(jì)算機(jī)所使用的二進(jìn)制中就變成了循環(huán)小數(shù)。當(dāng)對這些循環(huán)小數(shù)進(jìn)行數(shù)學(xué)運(yùn)算并將二進(jìn)制數(shù)據(jù)轉(zhuǎn)換成人類可讀的十進(jìn)制數(shù)據(jù)時(shí),會(huì)對小數(shù)尾部進(jìn)行截?cái)嗵幚怼T诓煌恼Z言中,運(yùn)行0.1+0.2會(huì)輸出不同的結(jié)果。本題選擇

溫馨提示

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

評(píng)論

0/150

提交評(píng)論