版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
安徽省宿州市全國(guó)計(jì)算機(jī)等級(jí)考試Python語(yǔ)言程序設(shè)計(jì)專項(xiàng)練習(xí)(含答案)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(30題)1.下面代碼的輸出結(jié)果是()。x=10whilex:x一=1ifx%2:print(x,end=”)else:pass
A.86420B.975311C.97531D.864200
2.以下程序的輸出結(jié)果是()。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
3.下列關(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ù)可以向列表添加元素
4.以下的函數(shù)定義中,錯(cuò)誤的是()。
A.defvfunc(s,a=1,*b):
B.defvfunc(a=3,b):
C.defvfunc(a,**b):
D.defvfunc(a,b=2):
5.time庫(kù)的time.time()函數(shù)的作用是()。
A.以數(shù)字形式返回當(dāng)前系統(tǒng)時(shí)間
B.以字符串形式返回當(dāng)前系統(tǒng)時(shí)間
C.以struct_time形式返回當(dāng)前系統(tǒng)時(shí)間
D.根據(jù)format格式定義返回當(dāng)前系統(tǒng)時(shí)間
6.以下程序的輸出結(jié)果是()。a=divmod(5,2)b=divmod(2,6)c=set(a+b)print(sum(c))
A.3B.5C.2D.0
7.以下代碼的輸出結(jié)果是()。deffibRate(n):ifn<=0:Return-1elifn==1:return-1elifn==2:return1else: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
8.下面代碼的輸出結(jié)果是()。a=10b=1try:c=b//(b/a)print(C)except(IOError,ZeroDivisionError):print(”calculationerror”)else:print(”noerror”)
A.calculationerrorB.noerrorC.9.0D.9.0noerror
9.在Python中,用于數(shù)據(jù)分析的第三方庫(kù)是()。
A.pandasB.PILC.DjangoD.Flask
10.以下哪種類型是Python的映射類型?()
A.strB.tupleC.listD.dict
11.以下關(guān)于語(yǔ)言類型的描述中,正確的是()。
A.靜態(tài)語(yǔ)言采用解釋方式執(zhí)行,腳本語(yǔ)言采用編譯方式執(zhí)行
B.C語(yǔ)言是靜態(tài)編譯語(yǔ)言,Python語(yǔ)言是腳本語(yǔ)言
C.編譯是將目標(biāo)代碼轉(zhuǎn)換成源代碼的過(guò)程
D.解釋是將源代碼一次性轉(zhuǎn)換成目標(biāo)代碼同時(shí)逐條運(yùn)行目標(biāo)代碼的過(guò)程
12.下面代碼中Dog這個(gè)類中的init方法共包含幾個(gè)形參?()ClassDog():def_______init________(self,name,age):self.name=nameSelf.a(chǎn)ge=age
A.0個(gè)B.1個(gè)C.2個(gè)D.3個(gè)
13.以下不是Python組合數(shù)據(jù)類型的是()。
A.元組類型B.字符串類型C.數(shù)組類型D.列表類型
14.層次型、網(wǎng)狀型和關(guān)系型數(shù)據(jù)庫(kù)劃分原則是()。
A.記錄長(zhǎng)度B.文件的大小C.聯(lián)系的復(fù)雜程度D.數(shù)據(jù)之間的聯(lián)系方式
15.以下程序的輸出結(jié)果是()。x=[90,87,93]y=(”Aele”,”Bob”,”lala”)z={}foriinrange(len(x)):z[i]=list(zip(x,y))print(z)
A.{0:[(90,’Aele’),(87,’Bob’),(93,’lala’)],1:[(90,’Aele’),(87,’Bob’),(93,’lala’)],2:[(90,’Aele’),(87,’Bob’),(93,’lala’)]}
B.{0:(90,’Aele’),1:(87,’Bob’),2:(93,’lala’)}
C.{0:[90,’Aele’],1:[87,’Bob’],2:[93,’lala’]}
D.{0:([90,87,93],(’Aele’,’Bob’,’lala’)),1:([90,87,93],(’Aele’,’Bob’,’lala’)),2:([90,87,93],(’Aele’,’Bob’,’lala’))}
16.以下代碼的輸出結(jié)果是()。CLis=list(range(5))print(5inCLis)
A.TrueB.FalseC.0D.-l
17.以下代碼的輸出結(jié)果是()。forsin"PythonNCRE":ifs=="N”:breakprint(s,end="")
A.PythonCREB.NC.PythonD.PythonNCRE
18.下列數(shù)據(jù)結(jié)構(gòu)中,屬于非線性結(jié)構(gòu)的是A.循環(huán)隊(duì)列B.帶鏈隊(duì)列C.二叉樹D.帶鏈棧
19.如果文件a.txt在目錄“C:\\A”下,執(zhí)行以下代碼會(huì)發(fā)生的操作是()。importosos.rmdir(r'C:\\A’)
A.刪除文件夾A,保留文件a.txt
B.刪除文件夾A和文件a.txt
C.刪除文件a.txt,保留文件夾A
D.OSError
20.以下關(guān)于二進(jìn)制數(shù)的定義,正確的是()。
A.0B1014B.0b1010C.0B1019D.0bC3F
21.執(zhí)行以下代碼的結(jié)果是()A.yesB.noC.unabletorunD.Anexceptionisthrown
22.下面代碼的輸出結(jié)果是()。a=divmod(5,2)b=divmod(2,6)c=set(a+b)print(sum(C))
A.3B.5C.2D.0
23.以下程序的輸出結(jié)果是()。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’]
24.數(shù)據(jù)字典(DD)的作用是()。
A.定義流程圖中各個(gè)成份的具體含義
B.定義數(shù)據(jù)流圖中各個(gè)成份的具體含義
C.定義系統(tǒng)結(jié)構(gòu)圖中各個(gè)成份的具體含義
D.定義功能結(jié)構(gòu)圖中各個(gè)成份的具體含義
25.在Python中,將二維數(shù)據(jù)寫入CSV文件,最可能使用的函數(shù)是()。
A.write()B.split()C.join()D.exists()
26.以下代碼的輸出結(jié)果是()。ls=[’book’,666,[2018,’python’,314],20]print(ls[2][1][一2])
A.nB.pythonC.oD.結(jié)果錯(cuò)誤
27.以下關(guān)于文件的描述中,正確的是()。
A.使用open()打開文件時(shí),必須要用r或w指定打開方式,不能省略
B.采用readlineS()可以讀入文件的全部?jī)?nèi)容,返回一個(gè)列表
C.文件打開后,可以用write()控制對(duì)文件內(nèi)容的讀寫位置
D.如果沒有采用close()關(guān)閉文件,Python程序退出時(shí)文件將不會(huì)自動(dòng)關(guān)閉
28.下面關(guān)于Python內(nèi)置函數(shù)的說(shuō)法錯(cuò)誤的是()。
A.內(nèi)置函數(shù)是不需要關(guān)鍵字import導(dǎo)人而可以直接使用的函數(shù)
B.求絕對(duì)值的函數(shù)abs(x)是Python的內(nèi)置函數(shù)
C.range(a,b,s)函數(shù)是Python的內(nèi)置函數(shù)
D.開平方函數(shù)Sqrt(x)是Python的內(nèi)置函數(shù)
29.下列關(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
30.以下關(guān)于文件讀寫的描述中,錯(cuò)誤的是()。
A.對(duì)文件進(jìn)行讀寫操作之后必須關(guān)閉文件以防文件丟失
B.以追加寫模式打開的文件,文件存在則在原文件最后追加內(nèi)容,不存在則創(chuàng)建
C.文件對(duì)象的seek()方法用來(lái)返回文件指針的當(dāng)前位置
D.文件對(duì)象的readlines()方法用來(lái)讀取文件中的所有行,以每行為元素形成一個(gè)列表
二、判斷題(10題)31.字符串屬于Python有序序列,和列表、元組一樣都支持雙向索引。
A.是B.否
32.已知x為非空列表,那么表達(dá)式sorted(x,reverse=True)==list(reversed(x))的值一定是True。
A.是B.否
33.生成器推導(dǎo)式比列表推導(dǎo)式具有更高的效率,推薦使用。
A.是B.否
34.為了讓代碼更加緊湊,編寫Python程序時(shí)應(yīng)盡量避免加入空格和空行。
A.是B.否
35.在函數(shù)中沒有任何辦法可以通過(guò)形參來(lái)影響實(shí)參的值。
A.是B.否
36.Python變量名必須以字母或下劃線開頭,并且區(qū)分字母大小寫。
A.是B.否
37.對(duì)于列表而言,在尾部追加元素比在中間位置插入元素速度更快一些,尤其是對(duì)于包含大量元素的列表。
A.是B.否
38.同一個(gè)列表對(duì)象中所有元素必須為相同類型。A.是B.否
39.定義函數(shù)時(shí),即使該函數(shù)不需要接收任何參數(shù),也必須保留一對(duì)空的圓括號(hào)來(lái)表示這是一個(gè)函數(shù)。
A.是B.否
40.Python字典中的“鍵”不允許重復(fù)。
A.是B.否
三、填空題(10題)41.已知x='a234b123c',并且re模塊已導(dǎo)入,則表達(dá)式re.split('\d+',x)的值為_________________。
42.簡(jiǎn)單解釋Python基于值的內(nèi)存管理模式。
43.表達(dá)式int('123',8)的值為_________。
44.語(yǔ)句x,y,z=[1,2,3]執(zhí)行后,變量y的值為__________。
45.表達(dá)式list(filter(None,[0,1,2,3,0,0]))的值為___________________。
46.已知列表x=list(range(5)),那么執(zhí)行語(yǔ)句x.remove(3)之后,表達(dá)式x.index(4)的值為________。
47.已知x=[1,2,3,4,5],那么執(zhí)行語(yǔ)句delx[:3]之后,x的值為__________。
48.表達(dá)式{1,2,3}<{1,2,4}的值為___________。
49.表達(dá)式not3的值為________________。
50.已知字典x={i:str(i+3)foriinrange(3)},那么表達(dá)式''.join(x.values())的值為____________。
四、操作題(3題)51.考生文件夾下存在一個(gè)文件“PY202.py”,該文件是本題目的代碼提示框架,其中代碼可以任意修改。請(qǐng)?jiān)谠撐募芯帉懘a,以實(shí)現(xiàn)如下功能。用鍵盤輸入兩個(gè)大于0的整數(shù),按要求輸出這兩個(gè)整數(shù)之間(不包括這兩個(gè)整數(shù))的所有素?cái)?shù)。素?cái)?shù)又稱質(zhì)數(shù),是指除了1和它本身以外不能被其他整數(shù)整除的數(shù)。試題程序:#以下代碼為提示框架#請(qǐng)?jiān)?..處使用一行或多行代碼替換#請(qǐng)?jiān)赺____處使用一行代碼替換#注意:提示框架的代碼可以任意修改,以完成程序功能為準(zhǔn)lower=int(input(‘輸入?yún)^(qū)間最小值:’))upper=int(inputs(‘輸入?yún)^(qū)間最大值:’))fornuminrange(_____,_____):
52.考生文件夾下存在兩個(gè)Python源文件,分別對(duì)應(yīng)兩個(gè)問(wèn)題,請(qǐng)按照文件內(nèi)說(shuō)明修改代碼,實(shí)現(xiàn)以下功能。馬和駱駝都是哺乳動(dòng)物,它們都有4只腳,體型也差不多大,我們將在這里為它們編寫屬于它們各自的類。問(wèn)題1:在“PY301-l.py”文件中修改代碼,代碼中編寫了一個(gè)馬(Horse)的類,在這個(gè)類中馬有3個(gè)屬性,分別是年齡(age)、品種(category)及性別(gender)。在每創(chuàng)建一個(gè)馬的對(duì)象時(shí),我們需要為其指定它的年齡、品種及性別。該類中還編寫一個(gè)get_descriptive()方法,能夠輸出馬的這3個(gè)屬性。每一匹馬都有自己的最快速度,所以類中有一個(gè)speed()方法,可以輸出馬的最快速度值。并且在馬的生命過(guò)程中,它的速度一直在變,類中還有一個(gè)update_Speed()方法用來(lái)更新馬當(dāng)前的最快速度值。例如:一匹12歲的阿拉伯公馬,在草原上奔跑的速度為50千米每小時(shí),要求調(diào)用get_descriptive()和up-date_speed()方法,將輸出的結(jié)果保存在考生文件夾下,文件命名為“PY301-1.txt”。試題程序:#以下代碼為提示框架#請(qǐng)?jiān)?..處使用一行或多行代碼替換#請(qǐng)?jiān)赺____處使用一行代碼替換#注意:提示框架的代碼可以任意修改,以完成程序功能為準(zhǔn)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()問(wèn)題2:在“PY301-2.py”文件中修改代碼,該代碼編寫了一個(gè)駱駝?lì)?Camel),這個(gè)類繼承自上一個(gè)文件中的馬類但是不對(duì)馬類中的屬性和方法進(jìn)行操作。因?yàn)槊總€(gè)駱駝的駝峰數(shù)量不一致,我們?cè)陬愔刑砑玉劮鍞?shù)目這個(gè)新屬性,并且添加一個(gè)輸出駱駝駝峰數(shù)目的方法。例如:一個(gè)20歲的雙峰母駱駝以每小時(shí)40千米的速度奔跑在沙漠中,調(diào)用父類的方法和Camel類本身的方法將結(jié)果保存在“PY301-2.txt”中,保存在考生文件夾下。試題程序:#以下代碼為提示框架#請(qǐng)?jiān)?..處使用一行或多行代碼替換#請(qǐng)?jiān)赺____處使用一行代碼替換#注意:提示框架的代碼可以任意修改,以完成程序功能為準(zhǔn)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()
53.考生文件夾下存在兩個(gè)Python源文件“PY30H.py”和“PY301-2.py”,分別對(duì)應(yīng)兩個(gè)問(wèn)題,請(qǐng)按照文件內(nèi)說(shuō)明修改代碼,實(shí)現(xiàn)以下功能?!栋谅c偏見》是史上最震撼人心的“世界文學(xué)十部最佳小說(shuō)之一”。第1章的內(nèi)容由考生文件夾下文件“arrogant,txt”給出。問(wèn)題1:請(qǐng)編寫程序,統(tǒng)計(jì)該篇文章的英文字符數(shù)(不統(tǒng)計(jì)換行符),字符與出現(xiàn)次數(shù)之間用冒號(hào)(:)分隔。結(jié)果保存在考生文件夾下,命名為“PY301-l.txt”。試題程序:#以下代碼為提示框架#請(qǐng)?jiān)诔绦虻?..處使用一行或多行代碼替換#請(qǐng)?jiān)诔绦虻腳____處使用一行代碼替換#注意:提示框架的代碼可以任意修改,以完成程序功能為準(zhǔn)…d={}Is=list(d.items())…fo.write("{}:{}\n".format(_____,_____))問(wèn)題2:在問(wèn)題1的前提下,將得到的字符次數(shù)進(jìn)行降序排列,并將排名前10的常用字符保存在“arrogant-sort,txt”文件中。試題程序:#以下代碼為提示框架#請(qǐng)?jiān)诔绦虻?..處使用一行或多行代碼替換#請(qǐng)?jiān)诔绦虻腳____處使用一行代碼替換#注意:提示框架的代碼可以任意修改,以完成程序功能為準(zhǔn)…d={}…Is=list(d.items())Is.sort(key=lambdax:x[1],reverse=True)…fo.write("{}:{}\n".format(_____,_____))
參考答案
1.Cwhile條件為真時(shí)進(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)過(guò)一系列的運(yùn)算,輸出結(jié)果為:97531。
2.B外層for循環(huán)是將a[0]=[1,2,3],a[1]=[4,5,6],a[2]=[7,8,9]依次賦給變量c;內(nèi)層for循環(huán)將變量j從0遞增到2,即累加c[1]+c[2]+c[3]的值。所以內(nèi)層循環(huán)加外層循環(huán)是計(jì)算1+2+3+4+5+6+7+8+9的值,即s=45。本題選擇B選項(xiàng)。
3.BB選項(xiàng)中正確的輸出應(yīng)為6+5,若print()函數(shù)圓括號(hào)內(nèi)的變量用引號(hào)標(biāo)注,則視為字符串。本題選擇B選項(xiàng)。
4.B函數(shù)定義時(shí)的語(yǔ)法如下:\ndef<函數(shù)名>(<非可選參數(shù)列表>,<可選參數(shù)>=<默認(rèn)值>):\n<函數(shù)體>\nreturn<返回值列表>\n可選參數(shù)一般放置在非可選參數(shù)的后面。B項(xiàng)錯(cuò)誤。
5.Atime.time()返回的是當(dāng)前時(shí)間的時(shí)間戳,是一個(gè)浮點(diǎn)數(shù),以秒為單位。本題選擇A選項(xiàng)。
6.Adivmod(a,b)函數(shù)返回的是兩個(gè)數(shù)值的商和余數(shù),那么a和b的值分別是(2,1)和(0,2),而c是把a(bǔ)、b相加后轉(zhuǎn)為集合型,那么a+b為(2,1,0,2),轉(zhuǎn)成集合后即{0,1,2},最后是取總和的sum()函數(shù),所以相加的總和為3。本題選擇A選項(xiàng)。
7.B將實(shí)參7傳遞給函數(shù)形參變量n,之后進(jìn)入多分支結(jié)構(gòu),依次判斷后,執(zhí)行else后面的語(yǔ)句。for語(yǔ)句為foriin\r\nrange(2,7),i從2依次變化到6,循環(huán)5次,將L[-1]+L[-2]的值通過(guò)append()方法加入列表L中。當(dāng)i=2時(shí),L[-1]+L[-2]=5+1=6,將6添加到列表[中,此時(shí)L=[1,5,6];當(dāng)i=3時(shí),L[-1]+L[-2]=6+5=11,將11添加到列表L中,此時(shí)L=[l,5,6,ll];當(dāng)i=4時(shí),L[-1]+L[-2]=11+6=17,將17添加到列表L中,此時(shí)L=[l,5,6,ll,17];當(dāng)i=5時(shí),L[-1]+L[-2]=17+11=28,將28添加到列表L中,此時(shí)L=\r\n[1,5,6,11,17,28];當(dāng)i=6時(shí),L[-1]+L[-2]=28+17=45,將45添加到列表L中,此時(shí)L=\r\n[1,5,6,11,17,28,45]。最后L[-2]%L[-1]=28%45=28,故程序輸出28。本題選擇B選項(xiàng)。
8.D只有當(dāng)程序未引發(fā)異常順利執(zhí)行完try中的代碼后,else語(yǔ)句塊內(nèi)的代碼才會(huì)執(zhí)行。本題中try中無(wú)異常,輸出變量C的值,再執(zhí)行else中的代碼。
9.A用于數(shù)據(jù)分析的第三方庫(kù)是pandas,PIL是Python在圖像處理方面的第三方庫(kù),Django和flask庫(kù)是Python在Web開發(fā)方向的第三方庫(kù)。本題選擇A選項(xiàng)。
10.D映射類型是“鍵一值”數(shù)據(jù)項(xiàng)的組合,每個(gè)元素是一個(gè)鍵值對(duì),即元素是(key,value),元素之間是無(wú)序的。鍵值對(duì)是一種二元關(guān)系,源于屬性和值的映射關(guān)系。str、tuple和list都是序列類型,diet,是映射類型。
11.B高級(jí)語(yǔ)言根據(jù)計(jì)算機(jī)執(zhí)行機(jī)制的不同可分為兩類:靜態(tài)語(yǔ)言和動(dòng)態(tài)語(yǔ)言。靜態(tài)語(yǔ)言采用編譯方式執(zhí)行,腳本語(yǔ)言采用解釋方式執(zhí)行。例如,C語(yǔ)言是靜態(tài)語(yǔ)言,Python是腳本語(yǔ)言。編譯是將源代碼轉(zhuǎn)換成目標(biāo)代碼的過(guò)程。解釋是將源代碼逐條轉(zhuǎn)換成目標(biāo)代碼同時(shí)逐條運(yùn)行目標(biāo)代碼的過(guò)程。本題選B選項(xiàng)。
12.D_init_()方法是一個(gè)特殊的方法,每當(dāng)根據(jù)類創(chuàng)建新實(shí)例時(shí),Python會(huì)自動(dòng)運(yùn)行該方法。該方法的開頭和結(jié)尾各有兩個(gè)下劃線,這是一種約定,旨在避免Python的默認(rèn)方法和普通方法發(fā)生命名沖突。self,name,age都是init方法的形參,所以共3個(gè)。
13.C能表示多個(gè)數(shù)據(jù)的類型稱為組合數(shù)據(jù)類型。Python中最常用的組合數(shù)據(jù)類型有3大類,分別是集合類型、序列類型(典型代表是字符串類型和列表類型)和映射類型(典型代表是字典類型)。Python的數(shù)據(jù)類型不包括數(shù)組類型,在Python中數(shù)組類型需要通過(guò)引用第三方庫(kù)如Numpy實(shí)現(xiàn)。故答案為C項(xiàng)。
14.D層次模型的基本結(jié)構(gòu)是樹形結(jié)構(gòu),網(wǎng)狀模型是一個(gè)不加任何條件限制的無(wú)向圖,關(guān)系模型采用二維表來(lái)表示,所以三種數(shù)據(jù)庫(kù)的劃分原則是數(shù)據(jù)之間的聯(lián)系方式。
15.Azip()是P)rthon的一個(gè)內(nèi)建函數(shù),它接受一系列可迭代的對(duì)象作為參數(shù),將對(duì)象中對(duì)應(yīng)的元素打包成一個(gè)個(gè)元組,然后返回由這些元組組成的列表。若傳入?yún)?shù)的長(zhǎng)度不等,則返回list的長(zhǎng)度和參數(shù)中長(zhǎng)度最短的對(duì)象相同。本題中,x為列表類型,y為元組類型,zip(x,y)返回的結(jié)果為[(90,’Aele’),(87,’Bob’),.(93,’lala,’)]。for循環(huán)中i的值依次為0、1、2,因此z(字典類型)的值為{0:[(90,’Aele’),(87,’Bob’),(93,’lala’)],1:[(90,’.Aele’),(87,’Bob’),(93,’lala’)],2:[(90,’Aele’),(87,’Bob’),(93,’lala’)]}
16.Brange()函數(shù)的語(yǔ)法為range(start,stop,\nstep),作用是生成一個(gè)從start參數(shù)的值開始,到stop參數(shù)的值結(jié)束的數(shù)字序列(注意不包含數(shù)參stop),step是步進(jìn)參數(shù)。CLis=\nlist(range(5)),生成一個(gè)列表,包含0、1、2、3、4。因?yàn)?不在CLis列表中,故返回False。本題選擇B選項(xiàng)。
17.Cfor循環(huán)將字符串PythonNCRE的字符依次賦給變量s,當(dāng)s==”\nN”時(shí),跳出for循環(huán),故輸出為Python。本題選擇C選項(xiàng)。
18.C根據(jù)數(shù)據(jù)結(jié)構(gòu)中各數(shù)據(jù)元素之間的前后件關(guān)系的復(fù)雜程度,一般將數(shù)據(jù)結(jié)構(gòu)分為兩大類:線性結(jié)構(gòu)和非線性結(jié)構(gòu)。循環(huán)隊(duì)列、帶鏈隊(duì)列和帶鏈棧都是線性結(jié)構(gòu),而二叉樹是非線性結(jié)構(gòu)。
19.D使用rmdir()刪除目錄之前要先清除其中所有的文件,否則會(huì)報(bào)OSError錯(cuò)誤。本題選擇D選項(xiàng)。
20.B二進(jìn)制數(shù)以0b或0B開頭,后面跟0和1。A、C、D這3個(gè)選項(xiàng)中有4、9、C、3、F,這些都不是二進(jìn)制數(shù)。本題選擇B選項(xiàng)。
21.A
22.Adivmod(a,b)函數(shù)返回的是兩個(gè)數(shù)值的商和余數(shù),那么a和b的值就分別是(2,1)和(0,2),而C是把a(bǔ)、b相加后轉(zhuǎn)為集合型,那么a\n+b為(2,1,0,2),轉(zhuǎn)成集合后即為{0,1,2},最后是取總和的sum()函數(shù),所以相加起來(lái)是的總和為3。本題選擇A選項(xiàng)。
23.B列表索引從0開始,lisl[1]=lis2是為列表lis2賦值并覆蓋lisl[1]位置上的元素,運(yùn)算后lis1=[1,[‘loves’],[‘python’]]。本題選擇B選項(xiàng)。
24.B數(shù)據(jù)字典(DataDictionary,DD)是對(duì)數(shù)據(jù)流圖中所有元素的精確、嚴(yán)格的定義和解釋,是一個(gè)有組織的列表,使得用戶和系統(tǒng)分析員對(duì)于輸入、輸出、存儲(chǔ)成分和中間計(jì)件結(jié)果有共同的理解,是結(jié)構(gòu)化分析的核心。
25.C在Python中,二維列表對(duì)象輸出CSV文件時(shí),采用遍歷循環(huán)和字符串的join()方法相結(jié)合的方法。方法如下:#ls代表二維列表,此處省略f=open('cpi.csv','w')forrowinIs£.write(“,'.join(row)\\n')f.close()本題選擇C選項(xiàng)。
26.C列表索引序號(hào)從0開始,列表遵循正向遞增索引和反向遞減索引,故ls[2][1][一2]是字符o。
27.B使用Open()打開文件時(shí),省略打開方式會(huì)默認(rèn)以只讀方式打開;文件打開后,可以用seek()控制對(duì)文件內(nèi)容的讀寫位置,write()方法只是向文件寫人一個(gè)字符串或是字節(jié)流;如果沒有采用close()關(guān)閉文件,有可能會(huì)導(dǎo)致數(shù)據(jù)丟失。Python程序退出時(shí)文件一般會(huì)自動(dòng)關(guān)閉。本題選擇B選項(xiàng)。
28.Dsqrt(X)是math庫(kù)中的一個(gè)函數(shù),并不是Python的內(nèi)置函數(shù)。本題選擇D選項(xiàng)。
29.C比較a與b是否不相等的運(yùn)算符是!=;a+=b等同于a=a+b;a//=b等同于a=a//b。
30.C文件對(duì)象的seek()方法用來(lái)定位文件的讀/寫位置,tell()方法用來(lái)返回文件指針的當(dāng)前位置。本題選擇C選項(xiàng)。
31.Y
32.N
33.Y
34.N
35.N
36.Y
37.Y
38.N
39.Y
40.Y
41.['a','b','c']
42.Python采用的是基于值得內(nèi)存管理方式,在Python中可以為不同變量賦值為相同值,這個(gè)值在內(nèi)存中只有一份,多個(gè)變量指向同一個(gè)內(nèi)存地址;Python具有自動(dòng)內(nèi)存管理功能,會(huì)自動(dòng)跟蹤內(nèi)存中所有的值,對(duì)于沒有任何變量指向的值,Python自動(dòng)將其刪除。
43.83
44.2
45.[1,2,3]
46.3
47.[4,5]
48.False
49.False
50.'345'
51.lower=int(input(‘輸入?yún)^(qū)間最小值:’))upper=int(inputs(‘輸入?yún)^(qū)間最大值:’))fornuminrange(lower+1,upper):Ifnum>1:Foriin染個(gè)(2,num):If(num%i)==0:BreakElse:Print(num)題目要求輸出兩個(gè)整數(shù)之間(不包括這兩個(gè)整數(shù))的所有素?cái)?shù),因此mnge()函數(shù)的參數(shù)應(yīng)為lower+1和upper。for循環(huán)遍歷range(lower\r\n+l,upper)返回的每個(gè)整數(shù)num,判斷該數(shù)是否為素?cái)?shù)。如果num大于1(1既不是素?cái)?shù)也不是合數(shù)),且該數(shù)能被取值范圍為[2,num-1\r\n]的任何一個(gè)整數(shù)整除,那么該數(shù)一定不是素?cái)?shù),否則一定是素?cái)?shù)。
52.(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)文件的操作需要調(diào)用open()函數(shù)以寫模式打開文件。Python定義類使用的關(guān)鍵字是class,且類的名稱首字母要大寫。_init_()是類的特殊方法,當(dāng)根據(jù)Horse類創(chuàng)建新實(shí)例時(shí),Python都會(huì)自動(dòng)運(yùn)行它。在這個(gè)方法中,開頭和結(jié)尾各有兩個(gè)下劃線,這是一種約定。_init_()方法中定義了四個(gè)形參:self、category、gender和age。在這個(gè)方法定義中形參self必不可少,且必須位于其他形參前面。每個(gè)定義的變量都要以self為前綴,以self為前綴的變量都可供類中的所有方法使用。調(diào)用方法需要?jiǎng)?chuàng)建實(shí)例,然后使用點(diǎn)號(hào)表示法來(lái)調(diào)用Horse類中定義的任何方法。使用write()方法將結(jié)果寫入到文件“PY301一1.txt”中,操作完成之后,調(diào)用close()方法關(guān)閉文件。(2)在“問(wèn)題1”的基礎(chǔ)上又添加了一個(gè)Camel類,super。()是一個(gè)特殊函數(shù),幫助Python將父類和子類關(guān)聯(lián)起來(lái)。創(chuàng)建子類時(shí),父類必須包含在當(dāng)前文件中,且位于子類前面。定義子類時(shí),必須在括號(hào)內(nèi)指定父類的名稱。
53.考生文件夾下存在兩個(gè)Python源文件“PY301.py”和“PY301-2.py”,分別對(duì)應(yīng)兩個(gè)問(wèn)題,請(qǐng)按照文件內(nèi)說(shuō)明修改代碼,實(shí)現(xiàn)以下功能?!栋谅c偏見》是史上最震撼人心的“世界文學(xué)十部最佳小說(shuō)之一”。第1章的內(nèi)容由考生文件夾下
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 老年糖尿病患者多重用藥的真實(shí)世界研究
- 真空冶煉工班組建設(shè)考核試卷含答案
- 我國(guó)上市公司現(xiàn)金持有量決定因素的實(shí)證剖析:理論、模型與策略
- 我國(guó)上市公司控股股東掏空行為剖析與治理路徑探究
- 水族造景工誠(chéng)信模擬考核試卷含答案
- 老年糖尿病β細(xì)胞自噬特點(diǎn)與個(gè)體化治療策略
- 碳排放管理員創(chuàng)新應(yīng)用評(píng)優(yōu)考核試卷含答案
- 出版物發(fā)行員變革管理考核試卷含答案
- 粗鎢酸鈉溶液制備工操作強(qiáng)化考核試卷含答案
- 2026內(nèi)蒙古鄂爾多斯市城投商業(yè)運(yùn)營(yíng)管理有限公司招聘46人備考題庫(kù)及參考答案詳解1套
- 2019-2020學(xué)年貴州省貴陽(yáng)市八年級(jí)下學(xué)期期末考試物理試卷及答案解析
- 培訓(xùn)機(jī)構(gòu)轉(zhuǎn)課協(xié)議
- 河道治理、拓寬工程 投標(biāo)方案(技術(shù)方案)
- 創(chuàng)客教室建設(shè)方案
- 政治審查表(模板)
- (完整版)南京市房屋租賃合同
- 《最奇妙的蛋》完整版
- SEMI S1-1107原版完整文檔
- 內(nèi)蒙古衛(wèi)生健康委員會(huì)綜合保障中心公開招聘8人模擬預(yù)測(cè)(共1000題)筆試備考題庫(kù)及答案解析
- 2023年中級(jí)財(cái)務(wù)會(huì)計(jì)各章作業(yè)練習(xí)題
- 金屬罐三片罐成型方法與罐型
評(píng)論
0/150
提交評(píng)論