版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
河北省邯鄲市全國計(jì)算機(jī)等級考試Python語言程序設(shè)計(jì)學(xué)校:________班級:________姓名:________考號:________
一、單選題(30題)1.下面哪個語句能夠讓列表中的名字按行輸出?names=[‘Dick’,‘Nancy’,‘Roger’]A.print("\n".join(names))
B.print(names.join("\n"))
C.print(names.append("\n"))
D.print(names.join("%s\n",names))
2.執(zhí)行以下代碼的結(jié)果是()A.12B.24C.36D.48
3.下列敘述中正確的是()。
A.鏈表可以是線性結(jié)構(gòu)也可以是非線性結(jié)構(gòu)
B.鏈表只能是非線性結(jié)構(gòu)
C.快速排序也適用于線性鏈表
D.二分法查找也適用于有序鏈表
4.以下程序的輸出結(jié)果是()。ls=[]formin‘想念’:fornin‘家人’:ls.append(m+n)print(ls)A.想念家人B.想想念念家家人人C.想家想人念家念人D.[‘想家’,‘想人’,‘念家’,‘念人’]
5.下面代碼的輸出結(jié)果是()。x=10whilex:x一=1ifx%2:print(x,end=”)else:pass
A.86420B.975311C.97531D.864200
6.生成一個[1,99]的隨機(jī)整數(shù)的函數(shù)是()。
A.random.randint(1,100)
B.random,randint(0,99)
C.random.randint(1,99)
D.random,uniform.(1,99)
7.以下程序Dog類中的__init__()方法共包含幾個形參()。ClassDog(): def__init__(self,name,age) =name self.age=age
A.0個B.1個C.2個D.3個
8.以下關(guān)于turtle庫的描述,錯誤的是()。
A.在importturtle之后,可以用turtle.circle()語句畫一個圓圈
B.seth(x)是setheading(x)函數(shù)的別名,其作用是讓畫筆旋轉(zhuǎn)x角度
C.可以用importturtle來導(dǎo)入turtle庫函數(shù)
D.home()函數(shù)用于設(shè)置當(dāng)前畫筆位置為原點(diǎn),方向朝上
9.第三方庫BeautifulSoup4的功能是()。
A.解析和處理HTML和XMLB.支持Web應(yīng)用程序框架C.支持WebServices框架D.處理HTTP請求
10.生成一個[1,99]之間隨機(jī)整數(shù)的函數(shù)是()。
A.random.randint(1,100)
B.random.randint(0,99)
C.random.randint(1,99)
D.random.uniform(1,99)
11.以下關(guān)于函數(shù)優(yōu)點(diǎn)的描述中,正確的是()。
A.函數(shù)可以表現(xiàn)程序的復(fù)雜度B.函數(shù)可以使程序更加模塊化C.函數(shù)可以減少代碼多次使用D.函數(shù)便于書寫
12.以下關(guān)于函數(shù)的定義與編寫的描述,錯誤的是()。
A.函數(shù)是代碼復(fù)用的一種方式
B.在Python中,使用關(guān)鍵字define定義函數(shù)
C.定義函數(shù)時,即使函數(shù)不需要接收任何參數(shù),也必須保留空的圓括號來表示這是一個函數(shù)
D.編寫函數(shù)時,一般建議先對參數(shù)進(jìn)行合法性檢查,然后再進(jìn)行編寫
13.下面關(guān)于遞歸函數(shù)的描述中,錯誤的是()。
A.遞歸函數(shù)必須有一個明確的結(jié)束條件
B.遞歸函數(shù)就是一個函數(shù)在內(nèi)部調(diào)用自身
C.遞歸效率不高,遞歸層次過多會導(dǎo)致棧溢出
D.每進(jìn)入更深一層的遞歸時,問題規(guī)模相對前一次遞歸是不變的
14.以下關(guān)于Python函數(shù)的描述中,錯誤的是()。
A.函數(shù)代碼是可以重復(fù)使用的
B.每次使用函數(shù)需要提供相同的參數(shù)作為輸入
C.函數(shù)通過函數(shù)名進(jìn)行調(diào)用
D.函數(shù)是一段具有特定功能的語句組
15.下列關(guān)于Python運(yùn)算符的使用描述正確的是()。
A.a=!b,比較a與b是否不相等
B.a=+b,等同于a=a+b
C.a==b,比較a與b是否相等
D.a//=b,等同于a=a/b
16.以下程序的輸出結(jié)果是()。t=”theWorldisSObig.Iwanttosee”S=t[20:21]+’love’+t[:9]print(S)
A.Ilovethe
B.IloveWodd
C.IlovetheWorld
D.IlovetheWod
17.在Python3下輸入100000000L,會得到()
A.100000000LB.100000000C.SyntaxError:invalidsyntaxD.1e8
18.以下選項(xiàng)中不是Python文件目錄操作方法的是()。
A.split()B.rename()C.getcwd()D.rmdir()
19.以下關(guān)于數(shù)據(jù)維度的描述,錯誤的是()。
A.—維數(shù)據(jù)由對等關(guān)系的有序或無序數(shù)據(jù)構(gòu)成,采用線性方式組織,對應(yīng)于數(shù)學(xué)中的集合或數(shù)組的概念
B.二維數(shù)據(jù)由關(guān)聯(lián)關(guān)系構(gòu)成,采用表格方式組織,對應(yīng)于數(shù)學(xué)中的矩陣
C.高維數(shù)據(jù)由鍵值對類型的數(shù)據(jù)組成,采用對象方式組織
D.—維數(shù)據(jù)由對等關(guān)系的有序數(shù)據(jù)構(gòu)成,無序數(shù)據(jù)不是一維數(shù)據(jù)
20.下面的d是一個字典變量,能夠輸出數(shù)字2的語句是()。d={‘food’:{‘cake’:1,‘egg’:5},’‘cake’:2,‘egg’:3}
A.print(d[‘food’][‘egg’])
B.print(d[‘cake’])
C.print(d[‘food’][-1])
D.print(d[‘cake’][1])
21.執(zhí)行以下代碼的結(jié)果是()A.4B.5C.8D.12
22.ls=[2,”apple”,[42,”yellow”,”misd”],1.2],表達(dá)式ls[2][一1][2]的結(jié)果是()。
A.mB.iC.sD.d
23.下列關(guān)于Python中復(fù)數(shù)類型的描述錯誤的是()。
A.復(fù)數(shù)由實(shí)數(shù)部分和虛數(shù)部分構(gòu)成
B.復(fù)數(shù)可以看作二元有序?qū)崝?shù)對(a,b)
C.虛數(shù)部分必須有后綴j,且為小寫
D.復(fù)數(shù)中的虛數(shù)部分不能單獨(dú)存在,必須有實(shí)數(shù)部分
24.以下關(guān)于Python分支的描述中,錯誤的是()。
A.Python分支結(jié)構(gòu)使用保留字if、elif及else來實(shí)現(xiàn),每個if后面必須有elif或else
B.if-elSe結(jié)構(gòu)是可以嵌套的
C.if語句會判斷if后面的邏輯表達(dá)式,當(dāng)表達(dá)式為真時,執(zhí)行if后的語句塊
D.縮進(jìn)是Python分支語句的語法部分,縮進(jìn)不正確會影響分支功能
25.關(guān)于以下代碼的描述中,正確的是()。defrune(a,b):c=a**2+bb=areturnca=10b=2c=func(b,a)+a
A.執(zhí)行該函數(shù)后,變量c的值為112
B.該函數(shù)名稱為fun
C.執(zhí)行該函數(shù)后,變量b的值為2
D.執(zhí)行該函數(shù)后,變量b的值為10
26.數(shù)據(jù)庫設(shè)計(jì)中反映用戶對數(shù)據(jù)要求的模式是()。
A.內(nèi)模式B.概念模式C.外模式D.設(shè)計(jì)模式
27.以下代碼的輸出結(jié)果是()。deffibRate(n):ifn<=0:return—1elifn==1:retum—1elifn==2:return1else:L=[1,5]foriinrange(2,n):L.a(chǎn)ppend(L[一1]+L[一2])returnL[一2]%L[一1]print(fibRate(7))
A.0.6B.28C.一1D.1
28.以下關(guān)于文件讀/寫的描述中,錯誤的是()。
A.對文件進(jìn)行讀/寫操作之后必須關(guān)閉文件以確保所有內(nèi)容都得到保存
B.以寫模式打開的文件無法進(jìn)行讀操作
C.文件對象的seek()方法用來返回文件指針的當(dāng)前位置
D.文件對象的readline()方法用來讀取一行字符串
29.以下不是Python語言關(guān)鍵字的選項(xiàng)是()。
A.classB.defC.defineD.elif
30.屬于Python讀取文件一行操作的是()。
A.readtextB.readlineC.readallD.read
二、判斷題(10題)31.正則表達(dá)式元字符“^”一般用來表示從字符串開始處進(jìn)行匹配,用在一對方括號中的時候則表示反向匹配,不匹配方括號中的字符。
A.是B.否
32.相同內(nèi)容的字符串使用不同的編碼格式進(jìn)行編碼得到的結(jié)果并不完全相同。
A.是B.否
33.同一個列表對象中所有元素必須為相同類型。A.是B.否
34.在調(diào)用函數(shù)時,可以通過關(guān)鍵參數(shù)的形式進(jìn)行傳值,從而避免必須記住函數(shù)形參順序的麻煩。
A.是B.否
35.lambda表達(dá)式中可以使用任意復(fù)雜的表達(dá)式,但是必須只編寫一個表達(dá)式。
A.是B.否
36.在Python中可以使用id作為變量名,但是不建議這樣做。
A.是B.否
37.Python標(biāo)準(zhǔn)庫os中的方法listdir()返回包含指定路徑中所有文件和文件夾名稱的列表。
A.是B.否
38.已知x為非空列表,那么執(zhí)行語句x[0]=3之后,列表對象x的內(nèi)存地址不變。
A.是B.否
39.Python變量名區(qū)分大小寫,所以student和Student不是同一個變量。
A.是B.否
40.在編寫應(yīng)用程序時,應(yīng)合理控制線程數(shù)量,線程并不是越多越好。
A.是B.否
三、填空題(10題)41.表達(dá)式[str(i)foriinrange(3)]的值為____________。
42.達(dá)式sorted([111,2,33],key=lambdax:-len(str(x)))的值為____________。
43.list(map(str,[1,2,3]))的執(zhí)行結(jié)果為_____________________。
44.表達(dá)式isinstance('abcdefg',object)的值為_____________。
45.以3為實(shí)部4為虛部,Python復(fù)數(shù)的表達(dá)形式為___________或________。
46.轉(zhuǎn)義字符’\n’的含義是___________________。
47.已知x=[[1,3,3],[2,3,1]],那么表達(dá)式sorted(x,key=lambdaitem:item[0]+item[2])的值為______________________________________。
48.已知x=[3,5,7],那么表達(dá)式x[10:]的值為____________。
49.表達(dá)式'%d,%c'%(65,65)的值為________。
50.列表、元組、字符串是Python的_________(有序?無序)序列。
四、操作題(3題)51.考生文件夾下存在一個文件PY101.py,請寫代碼替換橫線,不修改其他代碼,實(shí)現(xiàn)以下功能:隨機(jī)選擇一個手機(jī)品牌屏幕輸出。
試題程序:
#請?jiān)诔绦虻摹幨褂靡恍谢蚨嘈写a替換
#請?jiān)诔绦虻腳_____處使用一行代碼替換#注意:請不要修改其他已給出代碼
import________brandlist=[’三星’,’蘋果’,’vivo’,’OPPO’,’魅族’]random.seed(0)
……
print(name)
52.考生文件夾下存在一個文件PY103.py,請寫代碼替換橫線,不修改其他代碼,實(shí)現(xiàn)以下功能:使用循環(huán)輸出從1到50之間的奇數(shù)。
試題程序:
#請?jiān)赺____處使用一行代碼或表達(dá)式替換
#注意:請不要修改其他已給出代碼______whilecount<50:
ifcount%2==0:
print(count,end=”,”)
53.考生文件夾下存在一個文件“PY103.py”,請寫代碼替換橫線,不修改其他代碼,實(shí)現(xiàn)以下功能。用鍵盤輸入十進(jìn)制整數(shù),按要求將這個整數(shù)轉(zhuǎn)換為二進(jìn)制、八進(jìn)制及十六進(jìn)制(大寫)并輸出到屏幕。例如:輸入數(shù)字:425對應(yīng)的二進(jìn)制數(shù):110101001對應(yīng)的八進(jìn)制數(shù):651對應(yīng)的十六進(jìn)制數(shù):1A9試題程序:#請?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))
參考答案
1.A
2.B
3.A線性表的鏈?zhǔn)酱鎯Y(jié)構(gòu)稱為線性鏈表,線性鏈表可以是線性結(jié)構(gòu)也可以是非線性結(jié)構(gòu)。快速排序和二分法查找適用于順序存儲的線性表。本題選擇A選項(xiàng)。
4.D外層for第一次循環(huán)將字符‘想’賦給變量m,m=‘想’,內(nèi)層for第一次循環(huán)將‘家’賦給變量n,m+n連接字符,利用列表的append()方法將連接后的字符‘想家’加入列表ls中;內(nèi)層for第二次循環(huán)將‘人’賦給變量n,m+n連接字符,利用列表的append()方法將連接后的字符‘想人’加入列表ls中。外層for第二次循環(huán)將字符‘念’賦給變量m,m=‘念’,內(nèi)層for第一次循環(huán)將‘家’賦給變量n,m+n連接字符,利用列表的append()方法將連接后的字符‘念家’加入列表ls中;內(nèi)層for第二次循環(huán)將‘人’賦給變量n,m+n連接字符,利用列表的append()方法將連接后的字符‘念人’加入列表ls中。最后列表ls=[‘想家’,‘想人’,‘念家’,‘念人’],print(ls)輸出ls。本題選擇D選項(xiàng)。
5.Cwhile條件為真時進(jìn)入循環(huán)體,執(zhí)行循環(huán)體中的內(nèi)容。如果x的值為偶數(shù)則if條件為假,不執(zhí)行任何操作,為奇數(shù)則if條件為真,輸出該奇數(shù);進(jìn)入下一次循環(huán),判斷while條件,判斷是否進(jìn)入循環(huán)體,執(zhí)行循環(huán)體中的代碼。后面的操作類似,直到while條件不滿足。經(jīng)過一系列的運(yùn)算,輸出結(jié)果為:97531。
6.Crandom.randint(a,b)隨機(jī)生成[a,b](包括a、b)的整數(shù);random.uniform(a,b)隨機(jī)生成[a,b)(包括a,不包括b)的實(shí)數(shù)。本題選擇C選項(xiàng)。
7.D__init__()方法是一個特殊的方法,每當(dāng)根據(jù)類創(chuàng)建新實(shí)例時,Python就會自動運(yùn)行該方法。該方法的開頭和結(jié)尾各有兩個下劃線,這是一種約定,旨在避免Python的默認(rèn)方法和普通方法發(fā)生命名沖突。self、name、age都是__init__()方法的形參,所以共3個。本題選擇D選項(xiàng)。
8.Dturtle庫的home()函數(shù)用于設(shè)置當(dāng)前畫筆位置為原點(diǎn),朝向東。本題選擇D選項(xiàng)。
9.ABeautifulSoup4用于解析和處理HTML和XML。它的最大優(yōu)點(diǎn)是能根據(jù)HTML和XML語法建立解析樹,進(jìn)而高效解析其中的內(nèi)容。本題選擇A選項(xiàng)。
10.Crandom.randint(a,b)隨機(jī)生成[a,b](包括a、b)之間的整數(shù);random.uniform(a,b)隨機(jī)生成[a,b](包括a,不包括b)之間的實(shí)數(shù)。故答案為C項(xiàng)。
11.B函數(shù)定義:函數(shù)是指一組語句的集合通過一個名字(函數(shù)名)封裝起來,要想執(zhí)行這個函數(shù),只需要調(diào)用其函數(shù)名即可。函數(shù)能提高應(yīng)用的模塊性和代碼的重復(fù)利用率。本題選B選項(xiàng)。
12.B在Python中,使用關(guān)鍵字def定義函數(shù)。本題選擇B選項(xiàng)。
13.DA選項(xiàng)正確,遞歸函數(shù)必須有一個明確的結(jié)束條件作為遞歸的出口;B選項(xiàng)正是遞歸函數(shù)的含義,正確;C選項(xiàng)正確,在計(jì)算機(jī)中,函數(shù)調(diào)用是通過棧這種數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn)的,每當(dāng)進(jìn)入一個函數(shù)調(diào)用,棧就會加一層棧幀,每當(dāng)函數(shù)返回,棧就會減一層棧幀,由于棧的大小不是無限的,因此,遞歸調(diào)用的次數(shù)過多,會導(dǎo)致棧溢出;D選項(xiàng)錯誤,每當(dāng)進(jìn)入更深一層的遞歸時,問題規(guī)模顯然會相對前一次遞歸減小。本題選擇D選項(xiàng)。
14.B函數(shù)是一段具有特定功能的、可重用的語句組,通過函數(shù)名來表示和調(diào)用。經(jīng)過定義,一組語句等價于一個函數(shù),在需要使用這組語句的地方,直接調(diào)用函數(shù)名稱即可。采用參數(shù)名稱傳遞方式不需要保持參數(shù)傳遞的順序,參數(shù)之間的順序可以任意調(diào)整,只需要對每個必要參數(shù)賦予實(shí)際值即可,每次使用函數(shù)不需要提供相同的參數(shù)作為輸入。
15.C比較a與b是否不相等的運(yùn)算符是!=;a+=b等同于a=a+b;a//=b等同于a=a//b。
16.C字符串的索引序號從0開始,t[20:21]是指字符串中序號是20的元素I,t[:9]是從序號0到8元素,用“+”連接字符串,最后輸出IlovetheWorld。本題選擇C選項(xiàng)。
17.C
18.Arename():給文件重命名;getcwd():得到當(dāng)前工作目錄,即當(dāng)前Python腳本工作的目錄路徑;rmdir():刪除目錄。split():按給出的分隔符分隔字符串,返回的是列表類型。
19.D任何可以以序列或集合表示的內(nèi)容都可以看作一維數(shù)據(jù)。本題選擇D選項(xiàng)。
20.B在Python中,字典是存儲可變數(shù)量鍵值對的數(shù)據(jù)結(jié)構(gòu),鍵和值可以是任意數(shù)據(jù)類型,通過鍵索引值,并可以通過鍵修改值。因此,可以直接利用鍵值對關(guān)系索引元素。索引模式:<值>=<字典變量>[<鍵>]。故能夠正確索引字典并輸出數(shù)字2的語句是print(d[‘cake’])。本題選擇B選項(xiàng)。
21.B
22.C列表索引正向遞增索引從0開始,反向遞減索引從一1開始,ls[2][一1][2]指的是列表中下標(biāo)為2的元素下的下標(biāo)為一1元素下的下標(biāo)為2的元素,輸出結(jié)果是s。本題選擇C選項(xiàng)。
23.CPython中復(fù)數(shù)類型的虛數(shù)部分的后綴可以為j或者J;復(fù)數(shù)的實(shí)部可以單獨(dú)存在,但是虛部不可以單獨(dú)存在;復(fù)數(shù)由實(shí)部和虛部構(gòu)成,可以使用z.\nreal和z.imag分別獲得它的實(shí)部和虛部。本題選擇C選項(xiàng)。
24.APython分支結(jié)構(gòu)使用關(guān)鍵字if、elif及else來實(shí)現(xiàn),每個if后面不一定要有elif或else,A項(xiàng)錯誤;if-else結(jié)構(gòu)是可以嵌套的,B項(xiàng)正確;if語句會判斷if后面的邏輯表達(dá)式,當(dāng)表達(dá)式為真時,執(zhí)行if后的語句塊,C項(xiàng)正確;縮進(jìn)是Python分支語句的語法部分,縮進(jìn)不正確會影響分支功能,D選項(xiàng)正確。本題選擇A選項(xiàng)。
25.C程序中,將實(shí)參b的值傳給形參a,將實(shí)參a的值傳給形參b,則在函數(shù)體中c=2**2+10=14,函數(shù)返回14,則實(shí)參c=14+10=24;形參a和b在函數(shù)結(jié)束后會自動釋放,并沒有影響到實(shí)參a和b的值,故實(shí)參a仍然是10,實(shí)參b仍然是2。
26.C數(shù)據(jù)庫系統(tǒng)的三級模式是概念模式、外模式和內(nèi)模式。概念模式是數(shù)據(jù)庫系統(tǒng)中全局?jǐn)?shù)據(jù)邏輯結(jié)構(gòu)的描述,是全體用戶公共數(shù)據(jù)視圖。外模式也稱子模式或用戶模式,它是用戶的數(shù)據(jù)視圖,給出了每個用戶的局部數(shù)據(jù)描述,所以選擇C。內(nèi)模式又稱物理模式,它給出了數(shù)據(jù)庫物理存儲結(jié)構(gòu)與物理存取方法。
27.B將實(shí)參7傳遞給函數(shù)形參變量n,之后進(jìn)入多分支結(jié)構(gòu),依次判斷后,執(zhí)行else后面的語句。for語句為:foriinrange(2,7),i從2依次變化到6,循環(huán)5次,將L[一1]+L[一2]的值通過append()方法加入到列表L中。\n當(dāng)i=2時,L[一1]+L[一2]=5+1=6,將6添加到列表L中,此時L=[1,5,6];\n當(dāng)i=3時,L[一1]+L[一2]=6+5=11,將11添加到列表L中,此時L=[1,5,6,11];\n當(dāng)i=4時,L[一1]+L[一2]=11+6=17,將17添加到列表L中,此時L=[1,5,6,11,17];\n當(dāng)i=5時,L[一1]+L[一2]=17+ll=28,將28添加到列表L中,此時L=[1,5,6,11,17,28];\n當(dāng)i=6時,L[一1]+L[一2]=28+17=45,將45添加到列表L中,此時L=[1,5,6,11,17,28,45]。\n最后L[一2]%L[一1]=28%45=28,故程序輸出28。本題選擇B選項(xiàng)。
28.C文件對象的seek()方法用來定位文件的讀/寫位置,tell()方法用來返回文件指針的當(dāng)前位置。本題選擇C選項(xiàng)。
29.C保留字,也稱關(guān)鍵字,是指被編程語言內(nèi)部定義并保留使用的標(biāo)識符。Python3.x版本中有35個保留字,分別為:and,as,assert,async,await,break,class,continue,def,del,elif,else,excep!,F(xiàn)alse,finally,for,from,global,if,import,in,is,lambda,None,nonlocal,not,or.pass,raise,return,True,try,while,with,yield。define不是Python語言關(guān)鍵字。本題選擇C選項(xiàng)。
30.B在Python語言中,文件讀取方法有(設(shè)f代表文件變量):\nf.read():從文件中讀入整個文件內(nèi)容。\nf.readline():從文件中讀入一行內(nèi)容。\nf.readlines():從文件中讀人所有行,以每行為元素形成一個列表。\nf.seek():改變當(dāng)前文件操作指針的位置。本題選B選項(xiàng)。
31.Y
32.Y
33.N
34.Y
35.Y
36.Y
37.Y
38.Y
39.Y
40.Y
41.['0','1','2']
42.[111,33,2]
43.[‘1’,‘2’,‘3’]
44.True
45.3+4j、3+4J
46.回車換行
47.[[2,3,1],[1,3,3]]
48.[]
49.'65,A'
50.有序
51.importrandom\r\nbrandlist=[’三星’,’蘋果’,’vivo’,’OPPO’,’魅族’]\r\nrandom.seed(0)\r\nname=brandlist[random.randint(0,4)]
print(name)題目要求隨機(jī)輸出列表中的一個手機(jī)名稱,“隨機(jī)”需要用到Python的標(biāo)準(zhǔn)庫random,random.seed(0)的作用是設(shè)置初始化隨機(jī)數(shù)種子,設(shè)置種子的好處就是可以重復(fù)再現(xiàn)相同的隨機(jī)數(shù)序列。輸出列表中的元素可以使用索引的方法,分析代碼可知,列表中共有5個元素,所以元素的序號由0到4,需要用到random庫的randint()方法。random.randint(a,b)的作用是產(chǎn)生一個[a,b]之間的隨機(jī)整數(shù)。
52.count=0\r\n
whilecount<50:\r\n
count+=1\r\n
ifcount%2==0:\r\n
continue\r\n
print(count,end=”,”)判斷一個數(shù)是否為奇數(shù),即判斷這個數(shù)能否被2整除,可以被整除則為偶數(shù),結(jié)束本次循環(huán),使用continue語句;不可以被整除則為奇數(shù),輸出該數(shù)。while循環(huán)不具有自動計(jì)數(shù)的功能,所以需要定義一個變量,初始值為0,每經(jīng)過一次循環(huán),變量加1;當(dāng)變量超過50時,停止循環(huán)。
53.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個槽,即參數(shù)變量需要3個,但此時的參數(shù)只有一個,這里需要指定對應(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。河北省邯鄲市全國計(jì)算機(jī)等級考試Python語言程序設(shè)計(jì)學(xué)校:________班級:________姓名:________考號:________
一、單選題(30題)1.下面哪個語句能夠讓列表中的名字按行輸出?names=[‘Dick’,‘Nancy’,‘Roger’]A.print("\n".join(names))
B.print(names.join("\n"))
C.print(names.append("\n"))
D.print(names.join("%s\n",names))
2.執(zhí)行以下代碼的結(jié)果是()A.12B.24C.36D.48
3.下列敘述中正確的是()。
A.鏈表可以是線性結(jié)構(gòu)也可以是非線性結(jié)構(gòu)
B.鏈表只能是非線性結(jié)構(gòu)
C.快速排序也適用于線性鏈表
D.二分法查找也適用于有序鏈表
4.以下程序的輸出結(jié)果是()。ls=[]formin‘想念’:fornin‘家人’:ls.append(m+n)print(ls)A.想念家人B.想想念念家家人人C.想家想人念家念人D.[‘想家’,‘想人’,‘念家’,‘念人’]
5.下面代碼的輸出結(jié)果是()。x=10whilex:x一=1ifx%2:print(x,end=”)else:pass
A.86420B.975311C.97531D.864200
6.生成一個[1,99]的隨機(jī)整數(shù)的函數(shù)是()。
A.random.randint(1,100)
B.random,randint(0,99)
C.random.randint(1,99)
D.random,uniform.(1,99)
7.以下程序Dog類中的__init__()方法共包含幾個形參()。ClassDog(): def__init__(self,name,age) =name self.age=age
A.0個B.1個C.2個D.3個
8.以下關(guān)于turtle庫的描述,錯誤的是()。
A.在importturtle之后,可以用turtle.circle()語句畫一個圓圈
B.seth(x)是setheading(x)函數(shù)的別名,其作用是讓畫筆旋轉(zhuǎn)x角度
C.可以用importturtle來導(dǎo)入turtle庫函數(shù)
D.home()函數(shù)用于設(shè)置當(dāng)前畫筆位置為原點(diǎn),方向朝上
9.第三方庫BeautifulSoup4的功能是()。
A.解析和處理HTML和XMLB.支持Web應(yīng)用程序框架C.支持WebServices框架D.處理HTTP請求
10.生成一個[1,99]之間隨機(jī)整數(shù)的函數(shù)是()。
A.random.randint(1,100)
B.random.randint(0,99)
C.random.randint(1,99)
D.random.uniform(1,99)
11.以下關(guān)于函數(shù)優(yōu)點(diǎn)的描述中,正確的是()。
A.函數(shù)可以表現(xiàn)程序的復(fù)雜度B.函數(shù)可以使程序更加模塊化C.函數(shù)可以減少代碼多次使用D.函數(shù)便于書寫
12.以下關(guān)于函數(shù)的定義與編寫的描述,錯誤的是()。
A.函數(shù)是代碼復(fù)用的一種方式
B.在Python中,使用關(guān)鍵字define定義函數(shù)
C.定義函數(shù)時,即使函數(shù)不需要接收任何參數(shù),也必須保留空的圓括號來表示這是一個函數(shù)
D.編寫函數(shù)時,一般建議先對參數(shù)進(jìn)行合法性檢查,然后再進(jìn)行編寫
13.下面關(guān)于遞歸函數(shù)的描述中,錯誤的是()。
A.遞歸函數(shù)必須有一個明確的結(jié)束條件
B.遞歸函數(shù)就是一個函數(shù)在內(nèi)部調(diào)用自身
C.遞歸效率不高,遞歸層次過多會導(dǎo)致棧溢出
D.每進(jìn)入更深一層的遞歸時,問題規(guī)模相對前一次遞歸是不變的
14.以下關(guān)于Python函數(shù)的描述中,錯誤的是()。
A.函數(shù)代碼是可以重復(fù)使用的
B.每次使用函數(shù)需要提供相同的參數(shù)作為輸入
C.函數(shù)通過函數(shù)名進(jìn)行調(diào)用
D.函數(shù)是一段具有特定功能的語句組
15.下列關(guān)于Python運(yùn)算符的使用描述正確的是()。
A.a=!b,比較a與b是否不相等
B.a=+b,等同于a=a+b
C.a==b,比較a與b是否相等
D.a//=b,等同于a=a/b
16.以下程序的輸出結(jié)果是()。t=”theWorldisSObig.Iwanttosee”S=t[20:21]+’love’+t[:9]print(S)
A.Ilovethe
B.IloveWodd
C.IlovetheWorld
D.IlovetheWod
17.在Python3下輸入100000000L,會得到()
A.100000000LB.100000000C.SyntaxError:invalidsyntaxD.1e8
18.以下選項(xiàng)中不是Python文件目錄操作方法的是()。
A.split()B.rename()C.getcwd()D.rmdir()
19.以下關(guān)于數(shù)據(jù)維度的描述,錯誤的是()。
A.—維數(shù)據(jù)由對等關(guān)系的有序或無序數(shù)據(jù)構(gòu)成,采用線性方式組織,對應(yīng)于數(shù)學(xué)中的集合或數(shù)組的概念
B.二維數(shù)據(jù)由關(guān)聯(lián)關(guān)系構(gòu)成,采用表格方式組織,對應(yīng)于數(shù)學(xué)中的矩陣
C.高維數(shù)據(jù)由鍵值對類型的數(shù)據(jù)組成,采用對象方式組織
D.—維數(shù)據(jù)由對等關(guān)系的有序數(shù)據(jù)構(gòu)成,無序數(shù)據(jù)不是一維數(shù)據(jù)
20.下面的d是一個字典變量,能夠輸出數(shù)字2的語句是()。d={‘food’:{‘cake’:1,‘egg’:5},’‘cake’:2,‘egg’:3}
A.print(d[‘food’][‘egg’])
B.print(d[‘cake’])
C.print(d[‘food’][-1])
D.print(d[‘cake’][1])
21.執(zhí)行以下代碼的結(jié)果是()A.4B.5C.8D.12
22.ls=[2,”apple”,[42,”yellow”,”misd”],1.2],表達(dá)式ls[2][一1][2]的結(jié)果是()。
A.mB.iC.sD.d
23.下列關(guān)于Python中復(fù)數(shù)類型的描述錯誤的是()。
A.復(fù)數(shù)由實(shí)數(shù)部分和虛數(shù)部分構(gòu)成
B.復(fù)數(shù)可以看作二元有序?qū)崝?shù)對(a,b)
C.虛數(shù)部分必須有后綴j,且為小寫
D.復(fù)數(shù)中的虛數(shù)部分不能單獨(dú)存在,必須有實(shí)數(shù)部分
24.以下關(guān)于Python分支的描述中,錯誤的是()。
A.Python分支結(jié)構(gòu)使用保留字if、elif及else來實(shí)現(xiàn),每個if后面必須有elif或else
B.if-elSe結(jié)構(gòu)是可以嵌套的
C.if語句會判斷if后面的邏輯表達(dá)式,當(dāng)表達(dá)式為真時,執(zhí)行if后的語句塊
D.縮進(jìn)是Python分支語句的語法部分,縮進(jìn)不正確會影響分支功能
25.關(guān)于以下代碼的描述中,正確的是()。defrune(a,b):c=a**2+bb=areturnca=10b=2c=func(b,a)+a
A.執(zhí)行該函數(shù)后,變量c的值為112
B.該函數(shù)名稱為fun
C.執(zhí)行該函數(shù)后,變量b的值為2
D.執(zhí)行該函數(shù)后,變量b的值為10
26.數(shù)據(jù)庫設(shè)計(jì)中反映用戶對數(shù)據(jù)要求的模式是()。
A.內(nèi)模式B.概念模式C.外模式D.設(shè)計(jì)模式
27.以下代碼的輸出結(jié)果是()。deffibRate(n):ifn<=0:return—1elifn==1:retum—1elifn==2:return1else:L=[1,5]foriinrange(2,n):L.a(chǎn)ppend(L[一1]+L[一2])returnL[一2]%L[一1]print(fibRate(7))
A.0.6B.28C.一1D.1
28.以下關(guān)于文件讀/寫的描述中,錯誤的是()。
A.對文件進(jìn)行讀/寫操作之后必須關(guān)閉文件以確保所有內(nèi)容都得到保存
B.以寫模式打開的文件無法進(jìn)行讀操作
C.文件對象的seek()方法用來返回文件指針的當(dāng)前位置
D.文件對象的readline()方法用來讀取一行字符串
29.以下不是Python語言關(guān)鍵字的選項(xiàng)是()。
A.classB.defC.defineD.elif
30.屬于Python讀取文件一行操作的是()。
A.readtextB.readlineC.readallD.read
二、判斷題(10題)31.正則表達(dá)式元字符“^”一般用來表示從字符串開始處進(jìn)行匹配,用在一對方括號中的時候則表示反向匹配,不匹配方括號中的字符。
A.是B.否
32.相同內(nèi)容的字符串使用不同的編碼格式進(jìn)行編碼得到的結(jié)果并不完全相同。
A.是B.否
33.同一個列表對象中所有元素必須為相同類型。A.是B.否
34.在調(diào)用函數(shù)時,可以通過關(guān)鍵參數(shù)的形式進(jìn)行傳值,從而避免必須記住函數(shù)形參順序的麻煩。
A.是B.否
35.lambda表達(dá)式中可以使用任意復(fù)雜的表達(dá)式,但是必須只編寫一個表達(dá)式。
A.是B.否
36.在Python中可以使用id作為變量名,但是不建議這樣做。
A.是B.否
37.Python標(biāo)準(zhǔn)庫os中的方法listdir()返回包含指定路徑中所有文件和文件夾名稱的列表。
A.是B.否
38.已知x為非空列表,那么執(zhí)行語句x[0]=3之后,列表對象x的內(nèi)存地址不變。
A.是B.否
39.Python變量名區(qū)分大小寫,所以student和Student不是同一個變量。
A.是B.否
40.在編寫應(yīng)用程序時,應(yīng)合理控制線程數(shù)量,線程并不是越多越好。
A.是B.否
三、填空題(10題)41.表達(dá)式[str(i)foriinrange(3)]的值為____________。
42.達(dá)式sorted([111,2,33],key=lambdax:-len(str(x)))的值為____________。
43.list(map(str,[1,2,3]))的執(zhí)行結(jié)果為_____________________。
44.表達(dá)式isinstance('abcdefg',object)的值為_____________。
45.以3為實(shí)部4為虛部,Python復(fù)數(shù)的表達(dá)形式為___________或________。
46.轉(zhuǎn)義字符’\n’的含義是___________________。
47.已知x=[[1,3,3],[2,3,1]],那么表達(dá)式sorted(x,key=lambdaitem:item[0]+item[2])的值為______________________________________。
48.已知x=[3,5,7],那么表達(dá)式x[10:]的值為____________。
49.表達(dá)式'%d,%c'%(65,65)的值為________。
50.列表、元組、字符串是Python的_________(有序?無序)序列。
四、操作題(3題)51.考生文件夾下存在一個文件PY101.py,請寫代碼替換橫線,不修改其他代碼,實(shí)現(xiàn)以下功能:隨機(jī)選擇一個手機(jī)品牌屏幕輸出。
試題程序:
#請?jiān)诔绦虻摹幨褂靡恍谢蚨嘈写a替換
#請?jiān)诔绦虻腳_____處使用一行代碼替換#注意:請不要修改其他已給出代碼
import________brandlist=[’三星’,’蘋果’,’vivo’,’OPPO’,’魅族’]random.seed(0)
……
print(name)
52.考生文件夾下存在一個文件PY103.py,請寫代碼替換橫線,不修改其他代碼,實(shí)現(xiàn)以下功能:使用循環(huán)輸出從1到50之間的奇數(shù)。
試題程序:
#請?jiān)赺____處使用一行代碼或表達(dá)式替換
#注意:請不要修改其他已給出代碼______whilecount<50:
ifcount%2==0:
print(count,end=”,”)
53.考生文件夾下存在一個文件“PY103.py”,請寫代碼替換橫線,不修改其他代碼,實(shí)現(xiàn)以下功能。用鍵盤輸入十進(jìn)制整數(shù),按要求將這個整數(shù)轉(zhuǎn)換為二進(jìn)制、八進(jìn)制及十六進(jìn)制(大寫)并輸出到屏幕。例如:輸入數(shù)字:425對應(yīng)的二進(jìn)制數(shù):110101001對應(yīng)的八進(jìn)制數(shù):651對應(yīng)的十六進(jìn)制數(shù):1A9試題程序:#請?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))
參考答案
1.A
2.B
3.A線性表的鏈?zhǔn)酱鎯Y(jié)構(gòu)稱為線性鏈表,線性鏈表可以是線性結(jié)構(gòu)也可以是非線性結(jié)構(gòu)??焖倥判蚝投址ú檎疫m用于順序存儲的線性表。本題選擇A選項(xiàng)。
4.D外層for第一次循環(huán)將字符‘想’賦給變量m,m=‘想’,內(nèi)層for第一次循環(huán)將‘家’賦給變量n,m+n連接字符,利用列表的append()方法將連接后的字符‘想家’加入列表ls中;內(nèi)層for第二次循環(huán)將‘人’賦給變量n,m+n連接字符,利用列表的append()方法將連接后的字符‘想人’加入列表ls中。外層for第二次循環(huán)將字符‘念’賦給變量m,m=‘念’,內(nèi)層for第一次循環(huán)將‘家’賦給變量n,m+n連接字符,利用列表的append()方法將連接后的字符‘念家’加入列表ls中;內(nèi)層for第二次循環(huán)將‘人’賦給變量n,m+n連接字符,利用列表的append()方法將連接后的字符‘念人’加入列表ls中。最后列表ls=[‘想家’,‘想人’,‘念家’,‘念人’],print(ls)輸出ls。本題選擇D選項(xiàng)。
5.Cwhile條件為真時進(jìn)入循環(huán)體,執(zhí)行循環(huán)體中的內(nèi)容。如果x的值為偶數(shù)則if條件為假,不執(zhí)行任何操作,為奇數(shù)則if條件為真,輸出該奇數(shù);進(jìn)入下一次循環(huán),判斷while條件,判斷是否進(jìn)入循環(huán)體,執(zhí)行循環(huán)體中的代碼。后面的操作類似,直到while條件不滿足。經(jīng)過一系列的運(yùn)算,輸出結(jié)果為:97531。
6.Crandom.randint(a,b)隨機(jī)生成[a,b](包括a、b)的整數(shù);random.uniform(a,b)隨機(jī)生成[a,b)(包括a,不包括b)的實(shí)數(shù)。本題選擇C選項(xiàng)。
7.D__init__()方法是一個特殊的方法,每當(dāng)根據(jù)類創(chuàng)建新實(shí)例時,Python就會自動運(yùn)行該方法。該方法的開頭和結(jié)尾各有兩個下劃線,這是一種約定,旨在避免Python的默認(rèn)方法和普通方法發(fā)生命名沖突。self、name、age都是__init__()方法的形參,所以共3個。本題選擇D選項(xiàng)。
8.Dturtle庫的home()函數(shù)用于設(shè)置當(dāng)前畫筆位置為原點(diǎn),朝向東。本題選擇D選項(xiàng)。
9.ABeautifulSoup4用于解析和處理HTML和XML。它的最大優(yōu)點(diǎn)是能根據(jù)HTML和XML語法建立解析樹,進(jìn)而高效解析其中的內(nèi)容。本題選擇A選項(xiàng)。
10.Crandom.randint(a,b)隨機(jī)生成[a,b](包括a、b)之間的整數(shù);random.uniform(a,b)隨機(jī)生成[a,b](包括a,不包括b)之間的實(shí)數(shù)。故答案為C項(xiàng)。
11.B函數(shù)定義:函數(shù)是指一組語句的集合通過一個名字(函數(shù)名)封裝起來,要想執(zhí)行這個函數(shù),只需要調(diào)用其函數(shù)名即可。函數(shù)能提高應(yīng)用的模塊性和代碼的重復(fù)利用率。本題選B選項(xiàng)。
12.B在Python中,使用關(guān)鍵字def定義函數(shù)。本題選擇B選項(xiàng)。
13.DA選項(xiàng)正確,遞歸函數(shù)必須有一個明確的結(jié)束條件作為遞歸的出口;B選項(xiàng)正是遞歸函數(shù)的含義,正確;C選項(xiàng)正確,在計(jì)算機(jī)中,函數(shù)調(diào)用是通過棧這種數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn)的,每當(dāng)進(jìn)入一個函數(shù)調(diào)用,棧就會加一層棧幀,每當(dāng)函數(shù)返回,棧就會減一層棧幀,由于棧的大小不是無限的,因此,遞歸調(diào)用的次數(shù)過多,會導(dǎo)致棧溢出;D選項(xiàng)錯誤,每當(dāng)進(jìn)入更深一層的遞歸時,問題規(guī)模顯然會相對前一次遞歸減小。本題選擇D選項(xiàng)。
14.B函數(shù)是一段具有特定功能的、可重用的語句組,通過函數(shù)名來表示和調(diào)用。經(jīng)過定義,一組語句等價于一個函數(shù),在需要使用這組語句的地方,直接調(diào)用函數(shù)名稱即可。采用參數(shù)名稱傳遞方式不需要保持參數(shù)傳遞的順序,參數(shù)之間的順序可以任意調(diào)整,只需要對每個必要參數(shù)賦予實(shí)際值即可,每次使用函數(shù)不需要提供相同的參數(shù)作為輸入。
15.C比較a與b是否不相等的運(yùn)算符是!=;a+=b等同于a=a+b;a//=b等同于a=a//b。
16.C字符串的索引序號從0開始,t[20:21]是指字符串中序號是20的元素I,t[:9]是從序號0到8元素,用“+”連接字符串,最后輸出IlovetheWorld。本題選擇C選項(xiàng)。
17.C
18.Arename():給文件重命名;getcwd():得到當(dāng)前工作目錄,即當(dāng)前Python腳本工作的目錄路徑;rmdir():刪除目錄。split():按給出的分隔符分隔字符串,返回的是列表類型。
19.D任何可以以序列或集合表示的內(nèi)容都可以看作一維數(shù)據(jù)。本題選擇D選項(xiàng)。
20.B在Python中,字典是存儲可變數(shù)量鍵值對的數(shù)據(jù)結(jié)構(gòu),鍵和值可以是任意數(shù)據(jù)類型,通過鍵索引值,并可以通過鍵修改值。因此,可以直接利用鍵值對關(guān)系索引元素。索引模式:<值>=<字典變量>[<鍵>]。故能夠正確索引字典并輸出數(shù)字2的語句是print(d[‘cake’])。本題選擇B選項(xiàng)。
21.B
22.C列表索引正向遞增索引從0開始,反向遞減索引從一1開始,ls[2][一1][2]指的是列表中下標(biāo)為2的元素下的下標(biāo)為一1元素下的下標(biāo)為2的元素,輸出結(jié)果是s。本題選擇C選項(xiàng)。
23.CPython中復(fù)數(shù)類型的虛數(shù)部分的后綴可以為j或者J;復(fù)數(shù)的實(shí)部可以單獨(dú)存在,但是虛部不可以單獨(dú)存在;復(fù)數(shù)由實(shí)部和虛部構(gòu)成,可以使用z.\nreal和z.imag分別獲得它的實(shí)部和虛部。本題選擇C選項(xiàng)。
24.APython分支結(jié)構(gòu)使用關(guān)鍵字if、elif及else來實(shí)現(xiàn),每個if后面不一定要有elif或else,A項(xiàng)錯誤;if-else結(jié)構(gòu)是可以嵌套的,B項(xiàng)正確;if語句會判斷if后面的邏輯表達(dá)式,當(dāng)表達(dá)式為真時,執(zhí)行if后的語句塊,C項(xiàng)正確;縮進(jìn)是Python分支語句的語法部分,縮進(jìn)不正確會影響分支功能,D選項(xiàng)正確。本題選擇A選項(xiàng)。
25.C程序中,將實(shí)參b的值傳給形參a,將實(shí)參a的值傳給形參b,則在函數(shù)體中c=2**2+10=14,函數(shù)返回14,則實(shí)參c=14+10=24;形參a和b在函數(shù)結(jié)束后會自動釋放,并沒有影響到實(shí)參a和b的值,故實(shí)參a仍然是10,實(shí)參b仍然是2。
26.C數(shù)據(jù)庫系統(tǒng)的三級模式是概念模式、外模式和內(nèi)模式。概念模式是數(shù)據(jù)庫系統(tǒng)中全局?jǐn)?shù)據(jù)邏輯結(jié)構(gòu)的描述,是全體用戶公共數(shù)據(jù)視圖。外模式也稱子模式或用戶模式,它是用戶的數(shù)據(jù)視圖,給出了每個用戶的局部數(shù)據(jù)描述,所以選擇C。內(nèi)模式又稱物理模式,它給出了數(shù)據(jù)庫物理存儲結(jié)構(gòu)與物理存取方法。
27.B將實(shí)參7傳遞給函數(shù)形參變量n,之后進(jìn)入多分支結(jié)構(gòu),依次判斷后,執(zhí)行else后面的語句。for語句為:foriinrange(2,7),i從2依次變化到6,循環(huán)5次,將L[一1]+L[一2]的值通過append()方法加入到列表L中。\n當(dāng)i=2時,L[一1]+L[一2]=5+1=6,將6添加到列表L中,此時L=[1,5,6];\n當(dāng)i=3時,L[一1]+L[一2]=6+5=11,將11添加到列表L中,此時L=[1,5,6,11];\n當(dāng)i=4時,L[一1]+L[一2]=11+6=17,將17添加到列表L中,此時L=[1,5,6,11,17];\n當(dāng)i=5時,L[一1]+L[一2]=17+ll=28,將28添加到列表L中,此時L=[1,5,6,11,17,28];\n當(dāng)i=6時,L[一1]+L[一2]=28+17=45,將45添加到列表L中,此時L=[1,5,6,11,17,28,45]。\n最后L[一2]%L[一1]=28%45=28,故程序輸出28。本題選擇B選項(xiàng)。
28.C文件對象的seek()方法用來定位文件的讀/寫位置,tell()方法用來返回文件指針的當(dāng)前位置。本題選擇C選項(xiàng)。
29.C保留字,也稱關(guān)鍵字,是指被編程語言內(nèi)部定義并保留使用的標(biāo)識符。Python3.x版本中有35個保留字,分別為:and,as,assert,async,await,break,class,continue,def,del,elif,else,excep!,F(xiàn)alse,finally,for,from,global,if,import,in,is,lambda,None,nonlocal,not,or.pass,raise,return,True,try,while,with,yield。define不是Python語言關(guān)鍵字。本題選擇C選項(xiàng)。
30.B在Python語言中,文件讀取方法有(設(shè)f代表文件變量):\nf.read():從文件中讀入整個文件內(nèi)容。\nf.readline():從文件中讀入一行內(nèi)容。\nf.readlines():從文件中讀人所有行,以每行為元素形成一個列表。\nf.seek():改變當(dāng)前文件操作指針的位置。本題選B選項(xiàng)。
31.Y
32.Y
33.N
34.Y
35.Y
36.Y
37.Y
38.Y
39.Y
40.Y
41.['0','1','2']
42.[111,33,2]
43.[‘1’,‘2’,‘3’]
44.True
45.3+4j、3+4J
46.回車換行
47.[[2,3,1],[1,3,3]]
48.[]
49.'65,A'
50.有序
51.importrandom\r\nbrandlist=[’三星’,’蘋果’,’vivo’,’OPPO’,’魅族’]\r\nrandom.seed(0)\r\nname=brandlist[random.randint(0,4)]
print(name)題目要求隨機(jī)輸出列表中的一個手機(jī)名稱,“隨機(jī)”需要用到Python的標(biāo)準(zhǔn)庫random,random.seed(0)的作用是設(shè)置初始化隨機(jī)數(shù)種子,設(shè)置種子的好處就是可以重復(fù)再現(xiàn)相同的隨機(jī)數(shù)序列。輸出列表中的元素可以使用索引的方法,分析代碼可知,列表中共有5個元素,所以元素的序號由0到4,需要用到random庫的randint()方法。random.randint(a,b)的作用是產(chǎn)生一個[a,b]之間的隨機(jī)整數(shù)。
52.count=0\r\n
whilecount<50:\r\n
count+=1\r\n
ifcount%2==0:\r\n
continue\r\n
print(count,end=”,”)判斷一個數(shù)是否為奇數(shù),即判斷這個數(shù)能否被2整除,可以被整除則為偶數(shù),結(jié)束本次循環(huán),使用continue語句;不可以被整除則為奇數(shù),輸出該數(shù)。while循環(huán)不具有自動計(jì)數(shù)的功能,所以需要定義一個變量,初始值為0,每經(jīng)過一次循環(huán),變量加1;當(dāng)變量超過50時,停止循環(huán)。
53.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個槽,即參數(shù)變量需要3個,但此時的參數(shù)只有一個,這里需要指定對應(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。河北省邯鄲市全國計(jì)算機(jī)等級考試Python語言程序設(shè)計(jì)學(xué)校:________班級:________姓名:________考號:________
一、單選題(30題)1.下面哪個語句能夠讓列表中的名字按行輸出?names=[‘Dick’,‘Nancy’,‘Roger’]A.print("\n".join(names))
B.print(names.join("\n"))
C.print(names.append("\n"))
D.print(names.join("%s\n",names))
2.執(zhí)行以下代碼的結(jié)果是()A.12B.24C.36D.48
3.下列敘述中正確的是()。
A.鏈表可以是線性結(jié)構(gòu)也可以是非線性結(jié)構(gòu)
B.鏈表只能是非線性結(jié)構(gòu)
C.快速排序也適用于線性鏈表
D.二分法查找也適用于有序鏈表
4.以下程序的輸出結(jié)果是()。ls=[]formin‘想念’:fornin‘家人’:ls.append(m+n)print(ls)A.想念家人B.想想念念家家人人C.想家想人念家念人D.[‘想家’,‘想人’,‘念家’,‘念人’]
5.下面代碼的輸出結(jié)果是()。x=10whilex:x一=1ifx%2:print(x,end=”)else:pass
A.86420B.975311C.97531D.864200
6.生成一個[1,99]的隨機(jī)整數(shù)的函數(shù)是()。
A.random.randint(1,100)
B.random,randint(0,99)
C.random.randint(1,99)
D.random,uniform.(1,99)
7.以下程序Dog類中的__init__()方法共包含幾個形參()。ClassDog(): def__init__(self,name,age) =name self.age=age
A.0個B.1個C.2個D.3個
8.以下關(guān)于turtle庫的描述,錯誤的是()。
A.在importturtle之后,可以用turtle.circle()語句畫一個圓圈
B.seth(x)是setheading(x)函數(shù)的別名,其作用是讓畫筆旋轉(zhuǎn)x角度
C.可以用importturtle來導(dǎo)入turtle庫函數(shù)
D.home()函數(shù)用于設(shè)置當(dāng)前畫筆位置為原點(diǎn),方向朝上
9.第三方庫BeautifulSoup4的功能是()。
A.解析和處理HTML和XMLB.支持Web應(yīng)用程序框架C.支持WebServices框架D.處理HTTP請求
10.生成一個[1,99]之間隨機(jī)整數(shù)的函數(shù)是()。
A.random.randint(1,100)
B.random.randint(0,99)
C.random.randint(1,99)
D.random.uniform(1,99)
11.以下關(guān)于函數(shù)優(yōu)點(diǎn)的描述中,正確的是()。
A.函數(shù)可以表現(xiàn)程序的復(fù)雜度B.函數(shù)可以使程序更加模塊化C.函數(shù)可以減少代碼多次使用D.函數(shù)便于書寫
12.以下關(guān)于函數(shù)的定義與編寫的描述,錯誤的是()。
A.函數(shù)是代碼復(fù)用的一種方式
B.在Python中,使用關(guān)鍵字define定義函數(shù)
C.定義函數(shù)時,即使函數(shù)不需要接收任何參數(shù),也必須保留空的圓括號來表示這是一個函數(shù)
D.編寫函數(shù)時,一般建議先對參數(shù)進(jìn)行合法性檢查,然后再進(jìn)行編寫
13.下面關(guān)于遞歸函數(shù)的描述中,錯誤的是()。
A.遞歸函數(shù)必須有一個明確的結(jié)束條件
B.遞歸函數(shù)就是一個函數(shù)在內(nèi)部調(diào)用自身
C.遞歸效率不高,遞歸層次過多會導(dǎo)致棧溢出
D.每進(jìn)入更深一層的遞歸時,問題規(guī)模相對前一次遞歸是不變的
14.以下關(guān)于Python函數(shù)的描述中,錯誤的是()。
A.函數(shù)代碼是可以重復(fù)使用的
B.每次使用函數(shù)需要提供相同的參數(shù)作為輸入
C.函數(shù)通過函數(shù)名進(jìn)行調(diào)用
D.函數(shù)是一段具有特定功能的語句組
15.下列關(guān)于Python運(yùn)算符的使用描述正確的是()。
A.a=!b,比較a與b是否不相等
B.a=+b,等同于a=a+b
C.a==b,比較a與b是否相等
D.a//=b,等同于a=a/b
16.以下程序的輸出結(jié)果是()。t=”theWorldisSObig.Iwanttosee”S=t[20:21]+’love’+t[:9]print(S)
A.Ilovethe
B.IloveWodd
C.IlovetheWorld
D.IlovetheWod
17.在Python3下輸入100000000L,會得到()
A.100000000LB.100000000C.SyntaxError:invalidsyntaxD.1e8
18.以下選項(xiàng)中不是Python文件目錄操作方法的是()。
A.split()B.rename()C.getcwd()D.rmdir()
19.以下關(guān)于數(shù)據(jù)維度的描述,錯誤的是()。
A.—維數(shù)據(jù)由對等關(guān)系的有序或無序數(shù)據(jù)構(gòu)成,采用線性方式組織,對應(yīng)于數(shù)學(xué)中的集合或數(shù)組的概念
B.二維數(shù)據(jù)由關(guān)聯(lián)關(guān)系構(gòu)成,采用表格方式組織,對應(yīng)于數(shù)學(xué)中的矩陣
C.高維數(shù)據(jù)由鍵值對類型的數(shù)據(jù)組成,采用對象方式組織
D.—維數(shù)據(jù)由對等關(guān)系的有序數(shù)據(jù)構(gòu)成,無序數(shù)據(jù)不是一維數(shù)據(jù)
20.下面的d是一個字典變量,能夠輸出數(shù)字2的語句是()。d={‘food’:{‘cake’:1,‘egg’:5},’‘cake’:2,‘egg’:3}
A.print(d[‘food’][‘egg’])
B.print(d[‘cake’])
C.print(d[‘food’][-1])
D.print(d[‘cake’][1])
21.執(zhí)行以下代碼的結(jié)果是()A.4B.5C.8D.12
22.ls=[2,”apple”,[42,”yellow”,”misd”],1.2],表達(dá)式ls[2][一1][2]的結(jié)果是()。
A.mB.iC.sD.d
23.下列關(guān)于Python中復(fù)數(shù)類型的描述錯誤的是()。
A.復(fù)數(shù)由實(shí)數(shù)部分和虛數(shù)部分構(gòu)成
B.復(fù)數(shù)可以看作二元有序?qū)崝?shù)對(a,b)
C.虛數(shù)部分必須有后綴j,且為小寫
D.復(fù)數(shù)中的虛數(shù)部分不能單獨(dú)存在,必須有實(shí)數(shù)部分
24.以下關(guān)于Python分支的描述中,錯誤的是()。
A.Python分支結(jié)構(gòu)使用保留字if、elif及else來實(shí)現(xiàn),每個if后面必須有elif或else
B.if-elSe結(jié)構(gòu)是可以嵌套的
C.if語句會判斷if后面的邏輯表達(dá)式,當(dāng)表達(dá)式為真時,執(zhí)行if后的語句塊
D.縮進(jìn)是Python分支語句的語法部分,縮進(jìn)不正確會影響分支功能
25.關(guān)于以下代碼的描述中,正確的是()。defrune(a,b):c=a**2+bb=areturnca=10b=2c=func(b,a)+a
A.執(zhí)行該函數(shù)后,變量c的值為112
B.該函數(shù)名稱為fun
C.執(zhí)行該函數(shù)后,變量b的值為2
D.執(zhí)行該函數(shù)后,變量b的值為10
26.數(shù)據(jù)庫設(shè)計(jì)中反映用戶對數(shù)據(jù)要求的模式是()。
A.內(nèi)模式B.概念模式C.外模式D.設(shè)計(jì)模式
27.以下代碼的輸出結(jié)果是()。deffibRate(n):ifn<=0:return—1elifn==1:retum—1elifn==2:return1else:L=[1,5]foriinrange(2,n):L.a(chǎn)ppend(L[一1]+L[一2])returnL[一2]%L[一1]print(fibRate(7))
A.0.6B.28C.一1D.1
28.以下關(guān)于文件讀/寫的描述中,錯誤的是()。
A.對文件進(jìn)行讀/寫操作之后必須關(guān)閉文件以確保所有內(nèi)容都得到保存
B.以寫模式打開的文件無法進(jìn)行讀操作
C.文件對象的seek()方法用來返回文件指針的當(dāng)前位置
D.文件對象的readline()方法用來讀取一行字符串
29.以下不是Python語言關(guān)鍵字的選項(xiàng)是()。
A.classB.defC.defineD.elif
30.屬于Python讀取文件一行操作的是()。
A.readtextB.readlineC.readallD.read
二、判斷題(10題)31.正則表達(dá)式元字符“^”一般用來表示從字符串開始處進(jìn)行匹配,用在一對方括號中的時候則表示反向匹配,不匹配方括號中的字符。
A.是B.否
32.相同內(nèi)容的字符串使用不同的編碼格式進(jìn)行編碼得到的結(jié)果并不完全相同。
A.是B.否
33.同一個列表對象中所有元素必須為相同類型。A.是B.否
34.在調(diào)用函數(shù)時,可以通過關(guān)鍵參數(shù)的形式進(jìn)行傳值,從而避免必須記住函數(shù)形參順序的麻煩。
A.是B.否
35.lambda表達(dá)式中可以使用任意復(fù)雜的表達(dá)式,但是必須只編寫一個表達(dá)式。
A.是B.否
36.在Python中可以使用id作為變量名,但是不建議這樣做。
A.是B.否
37.Python標(biāo)準(zhǔn)庫os中的方法listdir()返回包含指定路徑中所有文件和文件夾名稱的列表。
A.是B.否
38.已知x為非空列表,那么執(zhí)行語句x[0]=3之后,列表對象x的內(nèi)存地址不變。
A.是B.否
39.Python變量名區(qū)分大小寫,所以student和Student不是同一個變量。
A.是B.否
40.在編寫應(yīng)用程序時,應(yīng)合理控制線程數(shù)量,線程并不是越多越好。
A.是B.否
三、填空題(10題)41.表達(dá)式[str(i)foriinrange(3)]的值為____________。
42.達(dá)式sorted([111,2,33],key=lambdax:-len(str(x)))的值為____________。
43.list(map(str,[1,2,3]))的執(zhí)行結(jié)果為_____________________。
44.表達(dá)式isinstance('abcdefg',object)的值為_____________。
45.以3為實(shí)部4為虛部,Python復(fù)數(shù)的表達(dá)形式為___________或________。
46.轉(zhuǎn)義字符’\n’的含義是___________________。
47.已知x=[[1,3,3],[2,3,1]],那么表達(dá)式sorted(x,key=lambdaitem:item[0]+item[2])的值為______________________________________。
48.已知x=[3,5,7],那么表達(dá)式x[10:]的值為____________。
49.表達(dá)式'%d,%c'%(65,65)的值為________。
50.列表、元組、字符串是Python的_________(有序?無序)序列。
四、操作題(3題)51.考生文件夾下存在一個文件PY101.py,請寫代碼替換橫線,不修改其他代碼,實(shí)現(xiàn)以下功能:隨機(jī)選擇一個手機(jī)品牌屏幕輸出。
試題程序:
#請?jiān)诔绦虻摹幨褂靡恍谢蚨嘈写a替換
#請?jiān)诔绦虻腳_____處使用一行代碼替換#注意:請不要修改其他已給出代碼
import________brandlist=[’三星’,’蘋果’,’vivo’,’OPPO’,’魅族’]random.seed(0)
……
print(name)
52.考生文件夾下存在一個文件PY103.py,請寫代碼替換橫線,不修改其他代碼,實(shí)現(xiàn)以下功能:使用循環(huán)輸出從1到50之間的奇數(shù)。
試題程序:
#請?jiān)赺____處使用一行代碼或表達(dá)式替換
#注意:請不要修改其他已給出代碼______whilecount<50:
ifcount%2==0:
print(count,end=”,”)
53.考生文件夾下存在一個文件“PY103.py”,請寫代碼替換橫線,不修改其他代碼,實(shí)現(xiàn)以下功能。用鍵盤輸入十進(jìn)制整數(shù),按要求將這個整數(shù)轉(zhuǎn)換為二進(jìn)制、八進(jìn)制及十六進(jìn)制(大寫)并輸出到屏幕。例如:輸入數(shù)字:425對應(yīng)的二進(jìn)制數(shù):110101001對應(yīng)的八進(jìn)制數(shù):651對應(yīng)的十六進(jìn)制數(shù):1A9試題程序:#請?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))
參考答案
1.A
2.B
3.A線性表的鏈?zhǔn)酱鎯Y(jié)構(gòu)稱為線性鏈表,線性鏈表可以是線性結(jié)構(gòu)也可以是非線性結(jié)構(gòu)??焖倥判蚝投址ú檎疫m用于順序存儲的線性表。本題選擇A選項(xiàng)。
4.D外層for第一次循環(huán)將字符‘想’賦給變量m,m=‘想’,內(nèi)層for第一次循環(huán)將‘家’賦給變量n,m+n連接字符,利用列表的append()方法將連接后的字符‘想家’加入列表ls中;內(nèi)層for第二次循環(huán)將‘人’賦給變量n,m+n連接字符,利用列表的append()方法將連接后的字符‘想人’加入列表ls中。外層for第二次循環(huán)將字符‘念’賦給變量m,m=‘念’,內(nèi)層for第一次循環(huán)將‘家’賦給變量n,m+n連接字符,利用列表的append()方法將連接后的字符‘念家’加入列表ls中;內(nèi)層for第二次循環(huán)將‘人’賦給變量n,m+n連接字符,利用列表的append()方法將連接后的字符‘念人’加入列表ls中。最后列表ls=[‘想家’,‘想人’,‘念家’,‘念人’],print(ls)輸出ls。本題選擇D選項(xiàng)。
5.Cwhile條件為真時進(jìn)入循環(huán)體,執(zhí)行循環(huán)體中的內(nèi)容。如果x的值為偶數(shù)則if條件為假,不執(zhí)行任何操作,為奇數(shù)則if條件為真,輸出該奇數(shù);進(jìn)入下一次循環(huán),判斷while條件,判斷是否進(jìn)入循環(huán)體,執(zhí)行循環(huán)體中的代碼。后面的操作類似,直到while條件不滿足。經(jīng)過一系列的運(yùn)算,輸出結(jié)果為:97531。
6.Crandom.randint(a,b)隨機(jī)生成[a,b](包括a、b)的整數(shù);random.uniform(a,b)隨機(jī)生成[a,b)(包括a,不包括b)的實(shí)數(shù)。本題選擇C選項(xiàng)。
7.D__init__()方法是一個特殊的方法,每當(dāng)根據(jù)類創(chuàng)建新實(shí)例時,Python就會自動運(yùn)行該方法。該方法的開頭和結(jié)尾各有兩個下劃線,這是一種約定,旨在避免Python的默認(rèn)方法和普通方法發(fā)生命名沖突。self、name、age都是__init__()方法的形參,所以共3個。本題選擇D選項(xiàng)。
8.Dturtle庫的home()函數(shù)用于設(shè)置當(dāng)前畫筆位置為原點(diǎn),朝向東。本題選擇D選項(xiàng)。
9.ABeautifulSoup4用于解析和處理HTML和XML。它的最大優(yōu)點(diǎn)是能根據(jù)HTML和XML語法建立解析樹,進(jìn)而高效解析其中的內(nèi)容。本題選擇A選項(xiàng)。
10.Crandom.randint(a,b)隨機(jī)生成[a,b](包括a、b)之間的整數(shù);random.uniform(a,b)隨機(jī)生成[a,b](包括a,不包括b)之間的實(shí)數(shù)。故答案為C項(xiàng)。
11.B函數(shù)定義:函數(shù)是指一組語句的集合通過一個名字(函數(shù)名)封裝起來,要想執(zhí)行這個函數(shù),只需要調(diào)用其函數(shù)名即可。函數(shù)能提高應(yīng)用的模塊性和代碼的重復(fù)利用率。本題選B選項(xiàng)。
12.B在Python中,使用關(guān)鍵字def定義函數(shù)。本題選擇B選項(xiàng)。
13.DA選項(xiàng)正確,遞歸函數(shù)必須有一個明確的結(jié)束條件作為遞歸的出口;B選項(xiàng)正是遞歸函數(shù)的含義,正確;C選項(xiàng)正確,在計(jì)算機(jī)中,函數(shù)調(diào)用是通過棧這種數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn)的,每當(dāng)進(jìn)入一個函數(shù)調(diào)用,棧就會加一層棧幀,每當(dāng)函數(shù)返回,棧就會減一層棧幀,由于棧的大小不是無限的,因此,遞歸調(diào)用的次數(shù)過多,會導(dǎo)致棧溢出;D選項(xiàng)錯誤,每當(dāng)進(jìn)入更深一層的遞歸時,問題規(guī)模顯然會相對前一次遞歸減小。本題選擇D選項(xiàng)。
14.B函數(shù)是一段具有特定功能的、可重用的語句組,通過函數(shù)名來表示和調(diào)用。經(jīng)過定義,一組語句等價于一個函數(shù),在需要使用這組語句的地方,直接調(diào)用函數(shù)名稱即可。采用參數(shù)名稱傳遞方式不需要保持
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 四川省資陽市安岳中學(xué)2025-2026學(xué)年八年級上學(xué)期期末考試道德與法治試卷(含答案)
- 湖北省黃岡市黃梅縣育才高級中學(xué)2025-2026學(xué)年高二上學(xué)期1月月考地理試題(含答案)
- 高強(qiáng)鋼在鋼結(jié)構(gòu)中的應(yīng)用要點(diǎn)
- “十五五”系列研究報(bào)告:產(chǎn)業(yè)政策邁向2035年的關(guān)鍵密碼
- 2026山東聊城要素綜合服務(wù)有限公司招聘1人備考考試題庫及答案解析
- 2026年聊城市中醫(yī)醫(yī)院“水城優(yōu)才”青年人才引進(jìn)備考考試題庫及答案解析
- 2026廣東廣州市增城區(qū)華南師范大學(xué)附屬朱村實(shí)驗(yàn)小學(xué)臨聘教師招聘考試備考試題及答案解析
- 公廁專項(xiàng)施工方案(3篇)
- 愛心會員活動策劃方案(3篇)
- 廣場水電施工方案(3篇)
- 醫(yī)療器械生產(chǎn)質(zhì)量管理規(guī)范自查表(2026版)
- 銀行個人貸款風(fēng)險(xiǎn)評估管理辦法
- 生活委員培訓(xùn)
- 檔案館機(jī)房設(shè)施設(shè)備管理制度
- 2026年質(zhì)量員之土建質(zhì)量基礎(chǔ)知識考試題庫及答案(必刷)
- 2025年中國抑郁障礙防治指南
- FGR的基因檢測策略與臨床解讀
- 承壓管道焊接培訓(xùn)課件
- 搬家公司項(xiàng)目管理
- 簽字版離婚協(xié)議書范本
- 塑料倉儲年度工作總結(jié)
評論
0/150
提交評論