資源簡介 登錄二一教育在線組卷平臺 助您教考全無憂2023年3月電子學(xué)會青少年軟件編程(Python)等級考試五級試題一、單選題(共25題,共50分)1.已知一個列表lst = [2,3,4,5,6],lst.append(20),print(lst)的結(jié)果是?( )A.[10,2,3,4,5,6,20] B.[20,2,10,3,4,5,6]C.[2,3,4,5,6,20] D.[2,3,4,5,6,10,20]2.水果店管理員現(xiàn)有列表 fruits = ['apple', 'orange', 'banana', 'peach'] ,當(dāng)前賣出蘋果('apple'),需要刪去列表元素'apple',正確的操作是?( )A.del fruits[0] B.del fruits['apple']C.del fruits[1] D.del fruits[apple]3.科技小組4位同學(xué)分別在Python中定義了一個列表,正確的是?( )A.list1 = ['power'; 'sensor'; 'control']B.list2 = [power, sensor, control]C.list3 = ['power', 'sensor', 'control']D.list4 = ['power'、 'sensor'、'control']4.下列語句正確的輸出是?( )lis= [4 * c for c in "draw"]print(tuple(lis))A.('4*d', '4*r', '4*a', '4*w') B.('dddd', 'rrrr', 'aaaa', 'wwww')C.('draw', 'draw', 'draw', 'draw') D.(4*d, 4*r, 4*a, 4*w)5.Python中 print('十六進(jìn)制{0:x}'.format(100)) 正確的輸出結(jié)果是?( )A.十六進(jìn)制0:x64 B.十六進(jìn)制64C.十六進(jìn)制0x100 D.十六進(jìn)制1006.下面可以正確輸出 號稱"世界屋脊"的青藏高原 字符的Python語句是?( )A.print('號稱\"世界屋脊\"的青藏高原')B.print(號稱\"世界屋脊\"的青藏高原)C.print('號稱'\"世界屋脊\"的青藏高原)D.print("號稱\"世界屋脊\"的青藏高原)7.Python使用range可以創(chuàng)建數(shù)值列表。下面可以正確輸出不超過1000的10的倍數(shù)正整數(shù)的語句是?( )A.print(list(range(1, 1000, 10)))B.print(list(range(0, 1000, 10)))C.print(list(range(10, 1001, 10)))D.print(list(range(10, 1000, 10)))8.學(xué)生機(jī)器人比賽的時候經(jīng)常會用到倒計時程序。下面可以正確倒序輸出5以內(nèi)正整數(shù)的語句是?( )A.print(list(range(5, -1, 1))) B.print(list(range(-1, 5, 1)))C.print(list(range(5, 0, -1))) D.print(list(range(5, 1, -1)))9.有一個字典內(nèi)容如下,它的元素數(shù)量有幾個?( )info = {'Id': 12, 'Num': 4, 'height': 9 }A.12 B.3 C.4 D.910.現(xiàn)有集合 items = set(("height", "width", "color", "align")) ,需要在集合中添加元素"text",正確的是?( )A.items.add("text") B.items.insert("text")C.items.pop("text") D.items.set("text")11.計算三位完全平方數(shù)(100-999范圍內(nèi)),正確的生成器推導(dǎo)式是?( )A.square = (x**2 for x in range(10,32))B.square = (x**2 for x in range(32))C.square = (x**2 for x in range(10,31))D.square = [x**2 for x in range(31)]12.下列Python序列解包,正確的輸出是?( )fruit=['apple','peach','orange']weight=[65,77,68]for i, j in zip(fruit,weight):print(i,j,end=' ')A.'apple','peach','orange',65,77,68B.a(chǎn)pple peach orange 65 77 68C.a(chǎn)pple 65 peach 77 orange 68D.a(chǎn)pple 65 , peach 77 , orange 6813.下列哪個選項是Python math庫的數(shù)字常數(shù)?( )A.math.log B.math.inf C.math.rnd D.math.exp14.Python中詞云主要有WordCloud庫,在創(chuàng)建好詞云對象后,可以使用什么方法生成詞云,并使用to_file方法將詞云圖像保存在文件中?( )A.WCloud B.generate C.random D.jieba15.有列表li= [‘a(chǎn)’,’b’,’c’,’d’],執(zhí)行l(wèi)i=li + [‘d’,’e’,’f’] 后,print(li)的結(jié)果是?( )A.[‘a(chǎn)’,’b’,’c’,’d’], [‘d’,’e’,’f’]B.[‘a(chǎn)’,’b’,’c’,’d’,’e’,’f’]C.(‘a(chǎn)’,’b’,’c’,’d’,‘d’,’e’,’f’)D.[‘a(chǎn)’,’b’,’c’,’d’,‘d’,’e’,’f’]16.已知有元組tup1=('a','b'),tup2=(1,2,3),tup3=tup1+tup2,執(zhí)行print(len(tup3))后結(jié)果是?( )A.5 B.3 C.2 D.017.現(xiàn)在有str1="day day up up .",請問str1[5]的值是?( )A.d B.a(chǎn) C.day d D.p18.下面哪個選項不可以輸出語句"我要考python,今年考5級。"?( )A.print("我要考{},今年考{}級。".format("python",5))B.print("我要考{str},今年考{grade}級。".format(grade=5,str="python"))C.print("我要考%s,今年考%s級。"%(5,"python"))D.print("我要考%s,今年考%d級。"%("python",5))19.下面程序要輸出1~10,則在①處應(yīng)填入?( )x = list(range( ① ))t = 1**2for i in x:print(i+t)A.5 B.0,10,2 C.10 D.0:10:220.>>> range(9,2,-2)[0]執(zhí)行后的結(jié)果是?( )A.0 B.-2 C.9 D.221.字典中多個元素之間使用_____分隔開,每個元素的“鍵”與“值”之間使用_____分隔開。下列選項中正確的填空選項是?( )A.逗號 冒號 B.逗號 分號 C.冒號 句號 D.分號 圓點號22.下列哪一個選項可以輸出內(nèi)容:{'World', 'e', 'H', 'l', 'o'}?( )A.s=set("Hello")s.append("World")print(s)B.s=set("Hello")s.add("World")print(s)C.s=set("Hello")s.update("World")print(s)D.s=set("Hello")s.insert("World")print(s)23.根據(jù)下列代碼及運行結(jié)果判斷字典推導(dǎo)公式實現(xiàn)的功能?( )a ={'x ': 6,'y ': 9}a_change= {v: k for k, v in a.items( )}print(a_change)A.創(chuàng)建字典并輸出 B.交換字典的key和valueC.輸出字典key和value D.遍歷字典24.下列代碼運行后的正確選項是?( )import timea=time.gmtime()print(time.strftime('%Y-%m-%d %a %h:%M:%S %p',a))A.2023-02-01 Wed Feb:08:04 PMB.Wed Feb: 2023-02-01 08:04 PMC.Wed Feb:08:04 PM 2023-02-01D.2023-02-01 Wed Feb:08:0425.Python的random庫中,random.choice()命令的功能是?( )A.返回時間值 B.返回隨機(jī)產(chǎn)生的一個字符串C.獲取隨機(jī)整數(shù) D.隨機(jī)獲取一個元素并返回二、判斷題(共10題,共20分)26.在Python中設(shè)定字符串str="Happy new year",則str.rfind('y')返回值為4。( )27.樂器社團(tuán)活動,小明用Python進(jìn)行信息匯總,為了便于操作,他使用了各個元素之間沒有先后順序的集合類型。( )28.已知元組tup1='a','b','cd',執(zhí)行print(tup1.count('cd'))后的結(jié)果是3。( )29.在python中使用雙重轉(zhuǎn)義(用兩個斜杠)輸出文件路徑,如:"d:\test\text\file1.txt",在字符串中這樣表示:l="d:\\test\\text\\file1.txt",print(l)。( )30.執(zhí)行下列兩段代碼的結(jié)果是一致的。( )代碼1:for i in range(9,2):print("i=",i)代碼2:for j in range(2,9,-2):print("j=",j)31.字典對象的items()方法是返回字典中的“鍵-值對”對象。( )32.集合類型是一個包含0個或多個數(shù)據(jù)項的無序的、不重復(fù)的數(shù)據(jù)組合。其中,元素類型只能是固定數(shù)據(jù)類型,如整數(shù)、浮點數(shù)、字符串、元組等。( )33.使用生成器對象的元素時,不可以將其根據(jù)需要轉(zhuǎn)化為列表或者元組。( )34.wordcloud庫生成詞云有文本生成和頻率生成兩種方法。( )35.在Python的列表數(shù)據(jù)結(jié)構(gòu)中,通過insert ()方法可以在指定位置插入元素。( )三、編程題(共3題,共30分)36.體育社團(tuán)活動,老師首先讓社團(tuán)小組成員按從低到高順序排成一隊站好,小明站在隊中,發(fā)現(xiàn)和他同樣身高的有3人,他想知道,當(dāng)前社團(tuán)小組的隊列中,具有相同身高的最多人數(shù)。給出社團(tuán)小組的每個成員身高信息,請你幫忙編寫程序輸出相同身高的最多人數(shù)。輸入格式:輸入共1行,若干個有序數(shù)值(從小到大),互相之間以空格隔開。輸出格式:輸出共1行,1個整數(shù),表示相同身高的最多人數(shù)。輸入樣例:120 123 123 125 125 125 126 126 126 126 127 127 129 130輸出樣例:4a=[int(i) for i in input(). ]n=len(a)k,maxn=1,1for i in range(1,n):if a[i] == :k+=1else: maxn=max( )print(maxn)37.文學(xué)社團(tuán)組織一次英語實踐活動,每個參與活動的同學(xué)都分發(fā)到一個英文字符串,所有字符為小寫字母,活動任務(wù)是找出字符串中的最長回文子串。如果有多個相同長度的回文子串,輸出其中任意一個即可。例如:“aykkyu”中最長回文子串是“ykky”。“helloacmcbjbky”中最長回文子串有2個“cmc”“bjb”。輸入格式:共1行,1個字符串,長度不超過50。輸出格式:共1行,1個字符串,最長回文子串。輸入樣例:aykkyu輸出樣例:ykkys=input()n= flag=1for j in range(n,0, ):for i in range(0,n-j+1):x=s[i:i+j]y= if(x== ):print(x)flag=0breakif(flag==0):breakbreak38.假設(shè)字典dic_city存放每個人想去旅游的城市,小明想去廈門、成都、大理。小李想去大理、廣州。小張想去三亞、大理、青島、上海。⑴統(tǒng)計每個人想去旅游的城市數(shù)目。⑵統(tǒng)計想去大理的人數(shù)以及名單。根據(jù)上述算法思想,補(bǔ)全下列代碼。dic_city={"小明":["廈門","成都","大理"],"小李":["大理","廣州"],"小張":["三亞","大理","青島","上海"]}for k,v in :print("{}想去{}個城市旅游". )name=[]for k,v in dic_city.items():if "大理" in :name. append(k)print("想去大理旅游的有{}人,他們是{}".format(len(name) ,"、". ))答案解析部分1.【答案】C【知識點】常見的數(shù)據(jù)結(jié)構(gòu);Python常用內(nèi)置函數(shù)【解析】【解答】lst.append(20)是將數(shù)字 20 添加到列表 lst 的末尾。因此,最終的結(jié)果是 [2, 3, 4, 5, 6, 20]。故答案選:【分析】本題考查了對列表的操作和 append() 方法。列表(List)是Python中常用的數(shù)據(jù)結(jié)構(gòu),用于存儲多個元素。列表是可變(Mutable)的,可以通過添加、刪除和修改元素來改變列表的內(nèi)容。append() 是列表對象的方法,用于在列表的末尾添加一個元素。2.【答案】A【知識點】常見的數(shù)據(jù)結(jié)構(gòu);Python常用內(nèi)置函數(shù)【解析】【解答】要刪除列表中的元素,可以使用 del 語句。語法是 del 列表名[索引],其中索引是要刪除的元素在列表中的位置。給定的列表 fruits = ['apple', 'orange', 'banana', 'peach'],要刪除蘋果('apple'),它在列表中的索引位置是 0。因此,正確的操作是 del fruits[0]。故答案選:A。【分析】本題考查了對列表元素刪除的操作。列表是有序的可變序列,元素可以根據(jù)索引進(jìn)行訪問和操作。列表的索引從 0 開始,所以第一個元素的索引是 0,第二個元素的索引是 1,以此類推。使用 del 語句可以刪除列表中的元素,也可以刪除整個列表。除了 del 語句,還可以使用列表的方法 remove() 來刪除指定的元素,該方法會根據(jù)元素的值進(jìn)行刪除而不需要指定索引位置。例如,可以使用 fruits.remove('apple') 刪除列表中的蘋果。3.【答案】C【知識點】常見的數(shù)據(jù)結(jié)構(gòu)【解析】【解答】在Python中,要定義一個列表,需要使用方括號 [],并用逗號 , 將元素分隔開。給定的選項如下:A:list1 = ['power'; 'sensor'; 'control'] 使用了分號 ; 來分隔元素,而在Python中應(yīng)該使用逗號 ,。B:list2 = [power, sensor, control] 沒有將元素用引號括起來,導(dǎo)致被解釋為變量名,應(yīng)該使用引號括起來表示字符串。C:list3 = ['power', 'sensor', 'control'] 使用了正確的語法,將元素用引號括起來,并使用逗號進(jìn)行分隔。D:list4 = ['power'、 'sensor'、'control'] 使用了中文全角逗號 、,而在Python中應(yīng)該使用英文半角逗號 ,。因此,選項 C:list3 = ['power', 'sensor', 'control'] 是正確的。故答案選:C。【分析】本題考查了對列表定義的語法。列表是Python中常用的數(shù)據(jù)結(jié)構(gòu),用于存儲多個元素。列表中的元素可以是任意類型的對象,包括整數(shù)、浮點數(shù)、字符串等。定義列表時,需要使用方括號 [] 將元素括起來,并使用逗號 , 將各個元素分隔開。元素可以是字符串,在定義字符串時需要使用引號(單引號或雙引號)將字符串括起來。分隔元素的符號應(yīng)該使用英文半角逗號 ,,而不是中文全角逗號 、 或其他符號。4.【答案】A【知識點】常見的數(shù)據(jù)結(jié)構(gòu)【解析】【解答】lis 是通過對字符串 "draw" 的每個字符進(jìn)行操作生成的列表。對于每個字符 c,表達(dá)式 4 * c 將字符重復(fù)四次。因此,列表 lis 的元素為:['4d', '4r', '4a', '4w']。將 lis 轉(zhuǎn)換為元組(tuple)后,輸出結(jié)果為 ('4*d', '4*r', '4*a', '4*w')。故答案選:A。【分析】本題考查了對列表推導(dǎo)式和字符串操作。列表推導(dǎo)式是一種用于創(chuàng)建新列表的簡潔方式。它可以根據(jù)一個表達(dá)式和一個迭代器生成列表,并可以包含條件語句。在列表推導(dǎo)式中,可以對迭代器中的每個元素進(jìn)行操作,并根據(jù)定義的規(guī)則生成新的元素。字符串可以被視為一個可迭代對象,可以按照字符進(jìn)行遍歷。在給定的代碼中,字符串 "draw" 被遍歷,每個字符被乘以 4,生成了新的字符串元素。最終,列表 lis 包含了四個字符串元素:['4d', '4r', '4a', '4w']。tuple() 函數(shù)用于將一個可迭代對象轉(zhuǎn)換為元組。5.【答案】B【知識點】Python常用內(nèi)置函數(shù)【解析】【解答】{0:x} 是格式化字符串中的占位符,用于將第一個參數(shù)(100)格式化為十六進(jìn)制形式。0 表示第一個參數(shù)。:x 是格式化說明符,表示將參數(shù)格式化為十六進(jìn)制形式。因此,{0:x} 將 100 格式化為十六進(jìn)制,結(jié)果是 '64'。最終的輸出結(jié)果是 十六進(jìn)制64。故答案選:B。【分析】本題考查了對格式化字符串和格式化說明符。在Python中,可以使用字符串的 format() 方法來進(jìn)行格式化輸出。格式化字符串使用大括號 {} 作為占位符,可以通過指定索引或關(guān)鍵字來引用參數(shù)。格式化字符串中的冒號 : 后面可以加上格式化說明符,用于指定參數(shù)的顯示格式。x 是格式化說明符之一,用于將整數(shù)參數(shù)格式化為十六進(jìn)制形式。6.【答案】D【知識點】Python常用內(nèi)置函數(shù)【解析】【解答】A:print('號稱\"世界屋脊\"的青藏高原') 在字符串中使用轉(zhuǎn)義字符 \ 來表示引號的轉(zhuǎn)義,可以正確輸出。B:print(號稱\"世界屋脊\"的青藏高原) 缺少引號,應(yīng)該使用引號將字符串括起來。C:print('號稱'\"世界屋脊\"的青藏高原) 引號的位置不正確,應(yīng)該將引號放在整個字符串的外面。D:print("號稱\"世界屋脊\"的青藏高原) 使用雙引號括起整個字符串,可以正確輸出。因此,選項 D:print("號稱\"世界屋脊\"的青藏高原") 是正確的Python語句。故答案選:D。【分析】本題考查了對字符串中引號的轉(zhuǎn)義。在字符串中,如果要包含與字符串本身相同類型的引號,可以使用轉(zhuǎn)義字符 \ 來表示引號的轉(zhuǎn)義。在給定的選項中,字符串中的雙引號 "號稱\"世界屋脊\"的青藏高原" 被轉(zhuǎn)義為 \",表示字符串中的雙引號是作為引號的一部分,而不是表示字符串的結(jié)束。使用單引號括起字符串 '號稱\"世界屋脊\"的青藏高原' 也可以達(dá)到相同的效果,不需要進(jìn)行轉(zhuǎn)義。在Python中,字符串可以使用單引號或雙引號括起來,兩者的效果是相同的。使用轉(zhuǎn)義字符 \ 可以表示特殊字符,如引號、換行符等。7.【答案】B【知識點】Python常用內(nèi)置函數(shù)【解析】【解答】A:print(list(range(1, 1000, 10))) 從1開始,每次增加10,直到1000。這將輸出從1到991的10的倍數(shù),不符合題目要求。B:print(list(range(0, 1000, 10))) 從0開始,每次增加10,直到1000。這將輸出不超過1000的10的倍數(shù)整數(shù),但該項中包含0,不符合題目要求。C:print(list(range(10, 1001, 10))) 從10開始,每次增加10,直到1001。這將輸出從10到1000的10的倍數(shù),符合題目要求。D:print(list(range(10, 1000, 10))) 從10開始,每次增加10,直到1000。這將輸出從10到990的10的倍數(shù),不符合題目要求。因此,選項 C:print(list(range(10, 1001, 10))) 是可以正確輸出不超過1000的10的倍數(shù)正整數(shù)的語句。故答案選:C。【分析】本題考查 range() 函數(shù)創(chuàng)建數(shù)值列表。在Python中,可以使用 range() 函數(shù)創(chuàng)建一個指定范圍內(nèi)的數(shù)值列表。range() 函數(shù)的三個參數(shù)分別是起始值、結(jié)束值和步長。range(start, stop, step) 會生成一個從起始值到結(jié)束值之間,以指定步長遞增或遞減的整數(shù)序列。范圍是左閉右開的,即起始值包含在序列中,但結(jié)束值不包含在序列中。8.【答案】C【知識點】常見的數(shù)據(jù)結(jié)構(gòu)【解析】【解答】A:print(list(range(5, -1, 1))) 從5開始,每次增加1,直到-1。這將生成一個空的列表,不符合題目要求。B:print(list(range(-1, 5, 1))) 從-1開始,每次增加1,直到5。這將輸出從-1到4的正整數(shù),不符合題目要求。C:print(list(range(5, 0, -1))) 從5開始,每次減少1,直到1。這將倒序輸出從5到1的正整數(shù),符合題目要求。D:print(list(range(5, 1, -1))) 從5開始,每次減少1,直到2。這將輸出從5到2的正整數(shù),不符合題目要求。因此,選項 C:print(list(range(5, 0, -1))) 是可以正確倒序輸出5以內(nèi)正整數(shù)的語句。故答案選:C。【分析】本題考查 range() 函數(shù)創(chuàng)建倒序數(shù)值列表。在Python中,可以使用 range() 函數(shù)創(chuàng)建一個指定范圍內(nèi)的數(shù)值列表。range() 函數(shù)的三個參數(shù)分別是起始值、結(jié)束值和步長。range(start, stop, step) 會生成一個從起始值到結(jié)束值之間,以指定步長遞增或遞減的整數(shù)序列。范圍是左閉右開的,即起始值包含在序列中,但結(jié)束值不包含在序列中。9.【答案】B【知識點】常見的數(shù)據(jù)結(jié)構(gòu)【解析】【解答】給定的字典info包含以下鍵值對:{'Id': 12, 'Num': 4, 'height': 9}元素數(shù)量指的是字典中鍵值對的個數(shù)。在這個字典中,有3個鍵值對。故答案選:B。【分析】本題考查字典數(shù)據(jù)類型。字典是Python中的一種數(shù)據(jù)類型,用于存儲鍵值對。字典由花括號 {} 包圍,鍵值對之間用冒號 : 分隔,每個鍵值對之間用逗號 , 分隔。字典中的鍵是唯一的,且通常為不可變的數(shù)據(jù)類型(如字符串、整數(shù)、元組),值可以是任意數(shù)據(jù)類型。字典中的元素數(shù)量指的是鍵值對的個數(shù)。可以使用 len() 函數(shù)來獲取字典的元素數(shù)量。10.【答案】A【知識點】常見的數(shù)據(jù)結(jié)構(gòu);Python常用內(nèi)置函數(shù)【解析】【解答】選項 A 使用 add 方法將元素 "text" 添加到集合中。這是正確的方式。選項 B 中的 insert 方法是用于列表的,在集合中無效。選項 C 中的 pop 方法用于移除集合中的元素,但是它需要指定一個已存在的元素作為參數(shù),而不是添加新元素。選項 D 中沒有 set 方法可以用于集合。故答案選:A。【分析】本題考查了對集合的基本操作。集合是 Python 中的一種內(nèi)置數(shù)據(jù)類型,用于存儲多個唯一的元素。集合的特點包括無序性(元素沒有固定順序)和唯一性(不允許重復(fù)元素)。可以使用 add 方法向集合添加單個元素,使用 update 方法向集合添加多個元素。可以使用 remove 方法或 discard 方法從集合中移除元素。使用 in 關(guān)鍵字可以檢查元素是否存在于集合中。集合還支持交集、并集、差集等操作,可以使用相應(yīng)的方法或運算符進(jìn)行操作。11.【答案】A【知識點】運算符與表達(dá)式【解析】【解答】選項 A (x**2 for x in range(10, 32)) 會生成從 10 到 31 的平方數(shù),滿足三位數(shù)的完全平方數(shù)的要求。選項 B (x**2 for x in range(32)) 會生成從 0 到 31 的平方數(shù),不滿足三位數(shù)的完全平方數(shù)的要求。選項 C (x**2 for x in range(10, 31)) 會生成從 10 到 30 的平方數(shù),不滿足所有三位數(shù)的完全平方數(shù)的要求。選項 D [x**2 for x in range(31)] 會生成從 0 到 30 的平方數(shù),不滿足三位數(shù)的完全平方數(shù)的要求。故答案選:A。【分析】本題考查了生成器推導(dǎo)式的使用。生成器推導(dǎo)式(Generator comprehensions)是一種快速創(chuàng)建生成器對象的方式,類似于列表推導(dǎo)式(List comprehensions)。生成器推導(dǎo)式使用圓括號括起來,并在內(nèi)部使用類似于列表推導(dǎo)式的語法。生成器對象是一種可迭代對象,每次迭代時生成一個值,而不是一次性生成所有值。生成器推導(dǎo)式在處理大量數(shù)據(jù)時具有高效性能,因為它們按需生成值,而不是一次性生成所有值。12.【答案】C【知識點】分支結(jié)構(gòu)程序設(shè)計與分析;常見的數(shù)據(jù)結(jié)構(gòu);Python常用內(nèi)置函數(shù)【解析】【解答】代碼中使用了 zip 函數(shù)將兩個列表 fruit 和 weight 按索引位置進(jìn)行配對。在 for 循環(huán)中,使用序列解包將配對的元素分別賦值給變量 i 和 j。print(i, j, end=' ') 將每個元素以空格分隔打印出來。輸出結(jié)果為 apple 65 peach 77 orange 68,每個水果與其對應(yīng)的重量以及空格按順序打印出來。故答案選:C。【分析】本題考查了對序列解包和 zip 函數(shù)。序列解包(Sequence unpacking)是一種將序列(如列表、元組)中的元素分配給多個變量的操作。在序列解包中,變量的數(shù)量應(yīng)與序列中的元素數(shù)量相等,否則會引發(fā) ValueError 異常。zip 函數(shù)接受多個序列作為參數(shù),返回一個將相同位置的元素配對的迭代器。當(dāng)傳遞給 zip 函數(shù)的序列長度不同時,返回的迭代器長度將與最短的序列相同。可以在 for 循環(huán)中使用序列解包和 zip 函數(shù)一次迭代多個序列,并對每個元素進(jìn)行操作。13.【答案】B【知識點】常量、變量與賦值語句【解析】【解答】選項 A math.log 是 math 模塊中的一個函數(shù),用于計算對數(shù)。選項 B math.inf 是 math 模塊中的一個常數(shù),表示正無窮大。選項 C math.rnd 不是 math 模塊中的有效函數(shù)或常數(shù)。選項 D math.exp 是 math 模塊中的一個函數(shù),用于計算指數(shù)。故答案選:B。【分析】本題考查了對math 模塊中數(shù)字常數(shù)。math 是 Python 的數(shù)學(xué)函數(shù)庫,提供了執(zhí)行數(shù)學(xué)運算的函數(shù)和常數(shù)。14.【答案】B【知識點】常用基本函數(shù)【解析】【解答】在使用 WordCloud 庫創(chuàng)建詞云對象后,可以使用 generate 方法生成詞云。generate 方法會根據(jù)輸入的文本數(shù)據(jù)生成詞云圖像,根據(jù)詞頻等信息確定詞語的大小、顏色等展示效果。生成的詞云圖像可以通過 to_file 方法保存在文件中。選項 A:WCloud 并不是 WordCloud 庫中的方法或?qū)傩浴_x項 C:random 是用于生成隨機(jī)數(shù)的庫,并不與詞云生成直接相關(guān)。選項 D:jieba 是用于中文分詞的庫,與詞云生成過程中的文本預(yù)處理相關(guān),但不直接用于生成詞云圖像。故答案選:B。【分析】本題考查 WordCloud 庫中生成詞云和保存詞云圖像的方法。WordCloud 是一個用于生成詞云的 Python 庫,可以根據(jù)文本數(shù)據(jù)創(chuàng)建詞云圖像。使用 WordCloud 庫可以根據(jù)詞頻等信息將詞語以不同的大小、顏色等形式展示在圖像上,形成具有藝術(shù)效果的詞云圖像。在創(chuàng)建詞云對象后,可以使用 generate 方法根據(jù)輸入的文本數(shù)據(jù)生成詞云圖像。生成的詞云圖像可以通過 to_file 方法保存為圖像文件,常見的文件格式包括 PNG、JPEG 等。在生成詞云之前,通常需要對文本數(shù)據(jù)進(jìn)行預(yù)處理,例如分詞、去除停用詞等,以便生成更加準(zhǔn)確的詞云圖像。WordCloud 庫還提供了其他的配置選項,例如設(shè)置背景顏色、字體樣式、詞語形狀等,可以根據(jù)需求進(jìn)行調(diào)整。15.【答案】D【知識點】常見的數(shù)據(jù)結(jié)構(gòu)【解析】【解答】初始列表 li 包含元素 'a', 'b', 'c', 'd'。執(zhí)行 li = li + ['d', 'e', 'f'] 將列表 ['d', 'e', 'f'] 添加到 li 中。運算符 + 在列表中表示連接操作,將兩個列表連接成一個新的列表。因此,li 的結(jié)果是 ['a', 'b', 'c', 'd', 'd', 'e', 'f']。故答案選:D。【分析】本題考查列表連接操作。列表是 Python 中常用的數(shù)據(jù)類型之一,可以存儲多個元素,并按順序訪問。使用 + 運算符可以將兩個列表連接成一個新的列表。在執(zhí)行連接操作時,會將第一個列表的元素和第二個列表的元素按順序合并到新列表中。連接操作不會改變原始列表,而是生成一個新的列表。16.【答案】A【知識點】常見的數(shù)據(jù)結(jié)構(gòu);Python常用內(nèi)置函數(shù)【解析】【解答】給定元組 tup1 為 ('a', 'b'),元組 tup2 為 (1, 2, 3)。執(zhí)行 tup3 = tup1 + tup2 將 tup1 和 tup2 進(jìn)行連接操作,生成新的元組 tup3。tup3 包含了 tup1 和 tup2 中的所有元素,即 ('a', 'b', 1, 2, 3)。使用 len(tup3) 計算元組 tup3 的長度,即元素的個數(shù)。因此,打印結(jié)果為 5,表示元組 tup3 包含了 5 個元素。故答案選:A。【分析】本題考查了對元組的連接操作。元組是 Python 中的一種不可變序列類型,可以存儲多個元素,并按順序訪問。使用 + 運算符可以將兩個元組連接成一個新的元組。在執(zhí)行連接操作時,會將第一個元組的元素和第二個元組的元素按順序合并到新元組中。連接操作不會改變原始元組,而是生成一個新的元組。可以使用 len() 函數(shù)計算元組的長度,即元素的個數(shù)。17.【答案】B【知識點】常見的數(shù)據(jù)結(jié)構(gòu)【解析】【解答】給定字符串 str1 為 "day day up up ."。字符串的索引從 0 開始,表示字符串中的位置。str1[5] 表示索引為 5 的字符,即第六個字符。在字符串 "day day up up ." 中,第六個字符是字母 'a'。因此,str1[5] 的值為 'a'。故答案選:B。【分析】本題考查字符串索引。字符串是 Python 中的一種不可變序列類型,表示一串字符。使用方括號和索引值可以訪問字符串中特定位置的字符。字符串的索引從 0 開始,表示字符串中的位置。18.【答案】D【知識點】Python常用內(nèi)置函數(shù)【解析】【解答】選項 A:print("我要考{},今年考{}級。".format("python",5)) 使用了格式化字符串中的 {} 占位符,并通過 format 方法傳入相應(yīng)的值,可以正確輸出所需的語句。選項 B:print("我要考{str},今年考{grade}級。".format(grade=5,str="python")) 使用了命名占位符 {} 并通過 format 方法的關(guān)鍵字參數(shù)傳入相應(yīng)的值,可以正確輸出所需的語句。選項 C:print("我要考%s,今年考%s級。"%(5,"python")) 使用了 % 格式化字符串的方式,并通過 % 運算符傳入相應(yīng)的值,可以正確輸出所需的語句。選項 D:print("我要考%s,今年考%d級。"%("python",5)) 使用了 % 格式化字符串的方式,但占位符的類型與提供的值類型不匹配。第一個占位符使用了 %s 表示字符串,而實際提供的是整數(shù)值 "python";第二個占位符使用了 %d 表示整數(shù),而實際提供的是字符串值 5。這樣的格式不匹配會導(dǎo)致輸出錯誤。故答案選:D。【分析】本題考查格式化字符串。格式化字符串是一種在輸出文本時將值插入到字符串中的方法。Python 提供了多種格式化字符串的方式,包括使用 {} 占位符和 format 方法,以及使用 % 運算符。{} 占位符可以按順序接收值,也可以使用關(guān)鍵字參數(shù)指定值的順序。% 運算符可以使用不同的占位符表示不同的值類型,如 %s 表示字符串,%d 表示整數(shù),%f 表示浮點數(shù)等。在使用格式化字符串時,占位符的類型和提供的值的類型需要匹配,否則可能導(dǎo)致輸出錯誤。19.【答案】C【知識點】循環(huán)結(jié)構(gòu)程序設(shè)計與分析;常見的數(shù)據(jù)結(jié)構(gòu)【解析】【解答】在程序中,x被賦值為range(10),它生成了一個包含從0到9的整數(shù)的列表。因此,循環(huán)將迭代10次,依次將0到9賦值給變量i。在每次迭代中,打印i加上t的結(jié)果,其中t等于1的平方,即1。因此,程序輸出的結(jié)果是1到10。故答案選:C。【分析】本題考查range函數(shù)。range(start, stop, step)是一個內(nèi)置函數(shù),用于生成一個整數(shù)序列。它接受三個參數(shù):起始值start(默認(rèn)為0),結(jié)束值stop(不包含在序列中),步長step(默認(rèn)為1)。當(dāng)只提供一個參數(shù)時,該參數(shù)被視為結(jié)束值,起始值默認(rèn)為0,步長默認(rèn)為1。20.【答案】C【知識點】Python常用內(nèi)置函數(shù)【解析】【解答】執(zhí)行range(9,2,-2)會生成一個逆向的整數(shù)序列,從9開始,步長為-2,直到大于2停止。根據(jù)range函數(shù)的規(guī)則,序列中的第一個元素是起始值9。因此,執(zhí)行range(9,2,-2)[0]的結(jié)果是9。故答案選:C。【分析】本題考查range函數(shù)。range函數(shù)可以生成一個整數(shù)序列,包括起始值和結(jié)束值之間的整數(shù)。當(dāng)提供了步長參數(shù)時,序列中的元素之間的間隔由步長決定。如果步長是正數(shù),則序列是遞增的;如果步長是負(fù)數(shù),則序列是遞減的。21.【答案】A【知識點】常見的數(shù)據(jù)結(jié)構(gòu)【解析】【解答】字典中多個元素之間使用逗號進(jìn)行分隔,每個元素的鍵與值之間使用冒號進(jìn)行分隔。故答案選:A。【分析】本題考查字典中元素分隔符。字典是Python中的一種數(shù)據(jù)結(jié)構(gòu),用于存儲鍵-值對。每個鍵值對都由一個鍵和與之相關(guān)聯(lián)的值組成。在字典中,多個元素之間使用逗號進(jìn)行分隔,以表示每個鍵值對。鍵和值之間使用冒號進(jìn)行分隔。逗號用于分隔不同的鍵值對,冒號用于分隔鍵和值。22.【答案】B【知識點】順序結(jié)構(gòu)程序設(shè)計與分析;Python常用內(nèi)置函數(shù)【解析】【解答】選項A中,set類型沒有append方法,因此會導(dǎo)致錯誤。選項B中,使用add方法向集合中添加元素,正確地將"World"添加到集合中,輸出{'World', 'e', 'H', 'l', 'o'}。選項C中,使用update方法向集合中添加元素,但它會將字符串"World"視為可迭代對象,將其拆分為單個字符進(jìn)行添加,輸出結(jié)果為{'W', 'r', 'l', 'e', 'o', 'H'}。選項D中,set類型沒有insert方法,因此會導(dǎo)致錯誤。故答案選:B。【分析】本題考查集合類型(set)的操作方法。在Python中,集合(set)是一種無序且不重復(fù)的數(shù)據(jù)集合。它支持添加、刪除和查詢操作。使用set()函數(shù)或使用花括號{}創(chuàng)建一個空集合。要創(chuàng)建一個包含初始元素的集合,可以使用set()函數(shù)并將可迭代對象作為參數(shù),或者直接使用花括號包裹元素。使用add()方法可以向集合中添加單個元素。使用update()方法可以向集合中添加多個元素,它接受一個可迭代對象作為參數(shù)。23.【答案】B【知識點】順序結(jié)構(gòu)程序設(shè)計與分析;常見的數(shù)據(jù)結(jié)構(gòu)【解析】【解答】在代碼中,使用字典推導(dǎo)公式{v: k for k, v in a.items()}來創(chuàng)建新的字典a_change。a.items()返回原始字典a中的鍵值對組成的可迭代對象。在推導(dǎo)公式中,使用了k和v分別表示原始字典a中的鍵和值。推導(dǎo)公式的結(jié)果是創(chuàng)建一個新的字典,其中原始字典a中的鍵變?yōu)樾伦值涞闹担甲值鋋中的值變?yōu)樾伦值涞逆I。因此,運行結(jié)果為{'6': 'x ', '9': 'y '},即鍵值對被交換了。這意味著字典推導(dǎo)公式實現(xiàn)了將字典的鍵和值互換的功能。故答案選:B。【分析】本題考查字典推導(dǎo)公式。字典推導(dǎo)是一種快速創(chuàng)建字典的方法,類似于列表推導(dǎo)和集合推導(dǎo)。字典推導(dǎo)的一般形式是{expression for item in iterable},其中expression定義了新字典中鍵和值的計算方式。24.【答案】C【知識點】Python常用內(nèi)置函數(shù)【解析】【解答】在給定的代碼中,time.strftime('%Y-%m-%d %a %h:%M:%S %p', a)將時間結(jié)構(gòu)a按照指定的格式進(jìn)行轉(zhuǎn)換,并打印輸出結(jié)果。%Y表示年份,%m表示月份,%d表示日期,%a表示星期幾,%h表示小時(12小時制),%M表示分鐘,%S表示秒,%p表示上午/下午。因此,運行結(jié)果為Wed Feb:08:04 PM 2023-02-01。故答案選:C。【分析】本題考查時間格式化。Python的time模塊提供了處理時間相關(guān)操作的函數(shù)。time.gmtime()函數(shù)返回當(dāng)前時間的UTC時間結(jié)構(gòu),即一個包含年、月、日、時、分、秒等信息的元組。time.strftime(format, time_struct)函數(shù)將時間結(jié)構(gòu)按照指定的格式轉(zhuǎn)換為字符串,其中format是格式化字符串,time_struct是時間結(jié)構(gòu)。格式化字符串中的占位符(如%Y、%m等)表示需要插入相應(yīng)時間信息的位置,通過這些占位符可以控制時間的輸出格式。25.【答案】D【知識點】Python常用內(nèi)置函數(shù)【解析】【解答】random.choice()命令的功能是D:隨機(jī)獲取一個元素并返回。故答案選:D。【分析】本題考查random庫中random.choice()函數(shù)。random是Python中的一個標(biāo)準(zhǔn)庫,用于生成隨機(jī)數(shù)。random庫提供了多個隨機(jī)數(shù)生成函數(shù),包括生成隨機(jī)整數(shù)、浮點數(shù)、隨機(jī)選擇元素等功能。random.choice(sequence)函數(shù)用于從給定序列中隨機(jī)選擇一個元素并返回。序列可以是列表、元組、字符串等可迭代對象。random.choice()函數(shù)的返回值是序列中的一個元素,每個元素被選中的概率是相等的。通過調(diào)用random.choice()函數(shù),可以實現(xiàn)從給定序列中隨機(jī)選擇一個元素的操作。26.【答案】(1)錯誤【知識點】Python常用內(nèi)置函數(shù)【解析】【解答】str.rfind('y')是字符串對象的一個方法,用于返回指定字符(子字符串)在字符串中最后一次出現(xiàn)的索引。在給定的字符串"Happy new year"中,最后一次出現(xiàn)字符'y'的位置是索引11,而不是索引4。str.rfind('y')會從字符串的右側(cè)開始搜索字符'y',找到最后一次出現(xiàn)的位置并返回對應(yīng)的索引。在本題中,str.rfind('y')返回值為11。故答案為:錯誤。【分析】本題考查字符串方法str.rfind()。在Python中,字符串對象有一個名為rfind()的方法,用于查找指定字符(子字符串)在字符串中最后一次出現(xiàn)的位置。rfind()方法返回找到的字符最后一次出現(xiàn)的索引值,如果未找到則返回-1。rfind()方法從字符串的右側(cè)開始搜索指定字符,向左逐個字符地檢查,直到找到目標(biāo)字符或搜索完整個字符串。27.【答案】(1)正確【知識點】常見的數(shù)據(jù)結(jié)構(gòu)【解析】【解答】集合(Set)是Python中的一種無序、可變的數(shù)據(jù)類型,用于存儲不重復(fù)的元素。集合中的元素之間沒有確定的順序,即元素的存儲順序與添加順序無關(guān)。集合類型在處理數(shù)據(jù)時具有去重的功能,適合用于存儲和操作一組不重復(fù)的元素。小明在樂器社團(tuán)活動中使用集合類型進(jìn)行信息匯總,可以方便地對活動參與者、樂器種類等進(jìn)行去重和操作。故答案為:正確。【分析】本題考查集合類型。在Python中,集合(Set)是一種無序、可變的數(shù)據(jù)類型,用于存儲不重復(fù)的元素。集合中的元素之間沒有確定的順序,元素的存儲順序與添加順序無關(guān)。集合類型支持添加、刪除和查詢操作,并且對元素進(jìn)行自動去重。可以使用集合類型進(jìn)行集合之間的交集、并集、差集等操作。集合類型在處理需要去重的數(shù)據(jù)和對集合操作的場景中非常有用,例如在本題中進(jìn)行信息匯總的場景。28.【答案】(1)錯誤【知識點】常見的數(shù)據(jù)結(jié)構(gòu);Python常用內(nèi)置函數(shù)【解析】【解答】元組類型提供了count()方法,用于統(tǒng)計指定元素在元組中出現(xiàn)的次數(shù)。在給定的元組tup1='a','b','cd'中,元素'cd'只出現(xiàn)了一次,因此tup1.count('cd')的結(jié)果是1,而不是3。故答案為:錯誤。【分析】本題考查元組類型和元組方法count()。在Python中,元組(Tuple)是一種有序、不可變的數(shù)據(jù)類型,用于存儲多個元素的集合。元組使用圓括號 () 或者沒有括號進(jìn)行定義,元素之間使用逗號進(jìn)行分隔。元組中的元素按照定義的順序進(jìn)行存儲,且不可修改。29.【答案】(1)正確【知識點】運算符與表達(dá)式【解析】【解答】在給定的字符串路徑中,要表示 "d:\test\text\file1.txt",可以使用雙重轉(zhuǎn)義,即 "d:\test\text\file1.txt"。使用雙重轉(zhuǎn)義后,字符串中的每個反斜杠字符都會被正確地解析為一個反斜杠字符。執(zhí)行 print(l) 會輸出 "d:\test\text\file1.txt",其中每個反斜杠字符都會被正確地顯示。故答案為:正確。【分析】本題考查字符串中特殊字符和轉(zhuǎn)義字符。在Python中,反斜杠(\)被用作轉(zhuǎn)義字符,用于表示特殊字符或者在字符串中插入一些特殊的字符。如果要在字符串中表示一個反斜杠字符(\)本身,需要使用雙重轉(zhuǎn)義,即兩個反斜杠(\)表示一個反斜杠字符。30.【答案】(1)正確【知識點】循環(huán)結(jié)構(gòu)程序設(shè)計與分析;Python常用內(nèi)置函數(shù)【解析】【解答】代碼1中的for循環(huán)使用range(9,2)作為迭代范圍,這意味著從9開始遞增,直到2之前停止。但是由于起始值9已經(jīng)大于終止值2,所以循環(huán)體不會執(zhí)行。因此,代碼1不會輸出任何內(nèi)容。代碼2中的for循環(huán)使用range(2,9,-2)作為迭代范圍,步長為-2。然而,由于起始值2并不小于終止值9,且步長為負(fù)數(shù),循環(huán)無法正常執(zhí)行。因此,代碼2也不會輸出任何內(nèi)容。故答案為:正確。【分析】本題考查range函數(shù)。range函數(shù)用于生成一個指定范圍內(nèi)的整數(shù)序列,常用于for循環(huán)中的迭代。range函數(shù)的常用形式為range(start, stop, step),其中start為起始值(包含),stop為終止值(不包含),step為步長(默認(rèn)為1)。31.【答案】(1)正確【知識點】常見的數(shù)據(jù)結(jié)構(gòu);Python常用內(nèi)置函數(shù)【解析】【解答】字典對象的items()方法返回一個包含字典中所有鍵值對的可迭代對象,每個鍵值對以元組的形式表示。故答案為:正確。【分析】本題考查字典對象的items()方法。字典是Python中的一種數(shù)據(jù)結(jié)構(gòu),用于存儲鍵值對。字典中的每個鍵都是唯一的,它們與相應(yīng)的值一一對應(yīng)。字典對象的items()方法可以返回一個可迭代對象,該對象包含字典中的所有鍵值對。每個鍵值對以元組的形式表示,元組的第一個元素是鍵,第二個元素是對應(yīng)的值。通過items()方法可以方便地遍歷字典中的所有鍵值對,或者進(jìn)行其他操作,如查找、篩選等。32.【答案】(1)錯誤【知識點】常見的數(shù)據(jù)結(jié)構(gòu)【解析】【解答】集合類型是Python中的一種數(shù)據(jù)類型,它是一個無序的、不重復(fù)的數(shù)據(jù)集合。集合中的元素可以是任意類型的,包括整數(shù)、浮點數(shù)、字符串、元組等,沒有固定的數(shù)據(jù)類型限制。故答案為:錯誤。【分析】本題考查集合類型。集合類型是Python中的一種數(shù)據(jù)類型,用于存儲無序、不重復(fù)的數(shù)據(jù)集合。集合類型的特點是元素之間無序且不重復(fù)。集合類型可以通過大括號 {} 或者使用 set() 函數(shù)進(jìn)行創(chuàng)建。集合中的元素可以是任意類型的,包括整數(shù)、浮點數(shù)、字符串、元組等,沒有固定的數(shù)據(jù)類型限制。集合類型支持集合運算,如并集、交集、差集等操作。33.【答案】(1)錯誤【知識點】常見的數(shù)據(jù)結(jié)構(gòu)【解析】【解答】雖然生成器對象可以按需生成數(shù)據(jù)項,但是它也可以通過轉(zhuǎn)化為列表或元組的方式來獲取所有數(shù)據(jù)項。可以使用 list() 或 tuple() 函數(shù)將生成器對象轉(zhuǎn)化為列表或元組,這樣就可以一次性獲取所有數(shù)據(jù)項進(jìn)行使用。故答案為:錯誤。【分析】本題考查生成器對象。生成器對象是一種特殊的迭代器,它按需生成數(shù)據(jù)項,而不是一次性生成所有數(shù)據(jù)項。生成器對象可以通過函數(shù)中使用 yield 關(guān)鍵字來創(chuàng)建。生成器對象的特點是節(jié)省內(nèi)存空間,適用于處理大量數(shù)據(jù)或者無需一次性生成全部數(shù)據(jù)的場景。生成器對象可以通過轉(zhuǎn)化為列表或元組的方式獲取所有數(shù)據(jù)項,可以使用 list() 或 tuple() 函數(shù)進(jìn)行轉(zhuǎn)化。34.【答案】(1)錯誤【知識點】常用基本函數(shù)【解析】【解答】在wordcloud庫中,生成詞云的方法主要有兩種:基于文本生成和基于詞頻生成。故答案為:錯誤。【分析】本題考查wordcloud庫中生成詞云的方法。基于文本生成的方法是將文本作為輸入,根據(jù)文本中單詞的出現(xiàn)情況生成詞云。這種方法會根據(jù)文本中單詞的頻率和位置等信息進(jìn)行繪制,以展示文本的特征和重要內(nèi)容。基于詞頻生成的方法是根據(jù)給定的詞頻信息生成詞云。用戶可以提供單詞及其對應(yīng)的頻率信息,詞云會根據(jù)頻率大小來確定單詞在詞云中的大小和顯示效果。35.【答案】(1)正確【知識點】常見的數(shù)據(jù)結(jié)構(gòu);Python常用內(nèi)置函數(shù)【解析】【解答】在Python的列表數(shù)據(jù)結(jié)構(gòu)中,可以使用insert()方法在指定位置插入元素。該方法的語法為:list.insert(index, element)。其中,index表示要插入的位置,element表示要插入的元素。插入后,原位置及其后面的元素都會向后移動。故答案為:正確。【分析】本題考查列表數(shù)據(jù)結(jié)構(gòu)中插入元素的操作方法。列表是Python中常用的數(shù)據(jù)結(jié)構(gòu),可以存儲多個元素,并且可以根據(jù)需要進(jìn)行動態(tài)調(diào)整。insert()方法是列表對象的一個內(nèi)置方法,用于在指定位置插入元素。插入元素后,原位置及其后面的元素會向后移動,列表的長度會增加。36.【答案】split();a[i+1];k=1;max_count, k【知識點】循環(huán)結(jié)構(gòu)程序設(shè)計與分析;常見的數(shù)據(jù)結(jié)構(gòu);Python常用內(nèi)置函數(shù)【解析】【解答】(1)split() 函數(shù)用于按照指定的分隔符將輸入的字符串切分成多個部分,并返回切分后的部分作為列表。在這個問題中,我們需要將輸入的一行身高信息按空格進(jìn)行切分,得到每個成員的身高作為列表元素。故答案為:split()。(2)這里的條件判斷用于判斷當(dāng)前身高a[i]是否與前一個身高a[i-1]相同。如果當(dāng)前身高與前一個身高相同,則將計數(shù)器k加1,表示當(dāng)前連續(xù)相同身高的人數(shù)增加了。故答案為:a[i+1]。(3)如果當(dāng)前身高與前一個身高不相同,則將計數(shù)器k重置為1,表示重新開始統(tǒng)計連續(xù)相同身高的人數(shù)。故答案為:k=1。(4)在每次更新計數(shù)器k的同時,更新最大連續(xù)相同身高人數(shù)max_count。使用max()函數(shù)比較當(dāng)前連續(xù)相同身高人數(shù)k和已經(jīng)統(tǒng)計的最大連續(xù)相同身高人數(shù)max_count,取其中較大的值作為新的max_count。故答案為:max_count, k。【分析】本題考查列表的遍歷和條件判斷的使用,以及對變量的更新和比較。本題可以通過遍歷列表并使用條件判斷來解決。在遍歷過程中,使用一個變量記錄當(dāng)前連續(xù)相同身高的人數(shù),并使用另一個變量記錄最大的連續(xù)相同身高人數(shù)。利用條件判斷來判斷當(dāng)前身高是否與前一個身高相同,根據(jù)情況更新計數(shù)器變量。使用max()函數(shù)來比較并更新最大值。37.【答案】len(s);-1;x[::-1];y【知識點】循環(huán)結(jié)構(gòu)程序設(shè)計與分析;常見的數(shù)據(jù)結(jié)構(gòu);Python常用內(nèi)置函數(shù)【解析】【解答】(1)這是為了獲取字符串的長度,用于后續(xù)循環(huán)的范圍。我們可以使用 len() 函數(shù)獲取字符串的長度。故答案為:len(s)。(2)這是為了控制子串的長度,我們從最長的子串開始查找,循環(huán)變量的值從n開始,每次遞減1,,到0為止。故答案為:-1。(3)該處y的值為反轉(zhuǎn)后的子串x,用于與原子串比較是否相等。故答案為:x[::-1]。(4)該處判斷原字符串和反轉(zhuǎn)后的字符串是否相等,從而確定是否是回文子串。故答案為:y。【分析】本題考查了字符串的基本操作和回文子串的查找。回文子串是指正序和倒序相同的字符串,可以通過遍歷所有可能的子串,并判斷是否是回文子串來解決問題。在這個問題中,我們通過不斷調(diào)整子串的長度和起始位置,逐個比較子串和反轉(zhuǎn)后的子串來確定最長回文子串。38.【答案】dic_city.items();format(k, len(v));dic_city.items();join(name)【知識點】分支結(jié)構(gòu)程序設(shè)計與分析;循環(huán)結(jié)構(gòu)程序設(shè)計與分析;常見的數(shù)據(jù)結(jié)構(gòu);Python常用內(nèi)置函數(shù)【解析】【解答】(1)使用items()方法遍歷字典dic_city的鍵值對,其中k代表每個人的姓名,v代表他們想去旅游的城市列表。故答案為:dic_city.items()。(2)通過len(v)可以獲取每個人想去旅游的城市數(shù)目,然后使用format()函數(shù)進(jìn)行格式化輸出。故答案為:format(k, len(v))。(3)通過遍歷字典dic_city的鍵值對,判斷每個人的旅游城市列表v中是否包含"大理"。如果包含,則將該人的姓名k添加到name列表中。故答案為:dic_city.items()。(4)最后使用len(name)獲取想去大理旅游的人數(shù),使用"、".join(name)將姓名列表轉(zhuǎn)換為逗號分隔的字符串。故答案為:join(name)。【分析】本題考查了字典的遍歷和列表的操作。通過遍歷字典的鍵值對可以獲取每個人的姓名和對應(yīng)的旅游城市列表。使用列表的append()方法可以將滿足條件的人的姓名添加到列表中,使用len()函數(shù)可以獲取列表的長度,使用"、".join()方法可以將列表中的元素用逗號連接成字符串。二一教育在線組卷平臺(zujuan.21cnjy.com)自動生成 1 / 1登錄二一教育在線組卷平臺 助您教考全無憂2023年3月電子學(xué)會青少年軟件編程(Python)等級考試五級試題一、單選題(共25題,共50分)1.已知一個列表lst = [2,3,4,5,6],lst.append(20),print(lst)的結(jié)果是?( )A.[10,2,3,4,5,6,20] B.[20,2,10,3,4,5,6]C.[2,3,4,5,6,20] D.[2,3,4,5,6,10,20]【答案】C【知識點】常見的數(shù)據(jù)結(jié)構(gòu);Python常用內(nèi)置函數(shù)【解析】【解答】lst.append(20)是將數(shù)字 20 添加到列表 lst 的末尾。因此,最終的結(jié)果是 [2, 3, 4, 5, 6, 20]。故答案選:【分析】本題考查了對列表的操作和 append() 方法。列表(List)是Python中常用的數(shù)據(jù)結(jié)構(gòu),用于存儲多個元素。列表是可變(Mutable)的,可以通過添加、刪除和修改元素來改變列表的內(nèi)容。append() 是列表對象的方法,用于在列表的末尾添加一個元素。2.水果店管理員現(xiàn)有列表 fruits = ['apple', 'orange', 'banana', 'peach'] ,當(dāng)前賣出蘋果('apple'),需要刪去列表元素'apple',正確的操作是?( )A.del fruits[0] B.del fruits['apple']C.del fruits[1] D.del fruits[apple]【答案】A【知識點】常見的數(shù)據(jù)結(jié)構(gòu);Python常用內(nèi)置函數(shù)【解析】【解答】要刪除列表中的元素,可以使用 del 語句。語法是 del 列表名[索引],其中索引是要刪除的元素在列表中的位置。給定的列表 fruits = ['apple', 'orange', 'banana', 'peach'],要刪除蘋果('apple'),它在列表中的索引位置是 0。因此,正確的操作是 del fruits[0]。故答案選:A。【分析】本題考查了對列表元素刪除的操作。列表是有序的可變序列,元素可以根據(jù)索引進(jìn)行訪問和操作。列表的索引從 0 開始,所以第一個元素的索引是 0,第二個元素的索引是 1,以此類推。使用 del 語句可以刪除列表中的元素,也可以刪除整個列表。除了 del 語句,還可以使用列表的方法 remove() 來刪除指定的元素,該方法會根據(jù)元素的值進(jìn)行刪除而不需要指定索引位置。例如,可以使用 fruits.remove('apple') 刪除列表中的蘋果。3.科技小組4位同學(xué)分別在Python中定義了一個列表,正確的是?( )A.list1 = ['power'; 'sensor'; 'control']B.list2 = [power, sensor, control]C.list3 = ['power', 'sensor', 'control']D.list4 = ['power'、 'sensor'、'control']【答案】C【知識點】常見的數(shù)據(jù)結(jié)構(gòu)【解析】【解答】在Python中,要定義一個列表,需要使用方括號 [],并用逗號 , 將元素分隔開。給定的選項如下:A:list1 = ['power'; 'sensor'; 'control'] 使用了分號 ; 來分隔元素,而在Python中應(yīng)該使用逗號 ,。B:list2 = [power, sensor, control] 沒有將元素用引號括起來,導(dǎo)致被解釋為變量名,應(yīng)該使用引號括起來表示字符串。C:list3 = ['power', 'sensor', 'control'] 使用了正確的語法,將元素用引號括起來,并使用逗號進(jìn)行分隔。D:list4 = ['power'、 'sensor'、'control'] 使用了中文全角逗號 、,而在Python中應(yīng)該使用英文半角逗號 ,。因此,選項 C:list3 = ['power', 'sensor', 'control'] 是正確的。故答案選:C。【分析】本題考查了對列表定義的語法。列表是Python中常用的數(shù)據(jù)結(jié)構(gòu),用于存儲多個元素。列表中的元素可以是任意類型的對象,包括整數(shù)、浮點數(shù)、字符串等。定義列表時,需要使用方括號 [] 將元素括起來,并使用逗號 , 將各個元素分隔開。元素可以是字符串,在定義字符串時需要使用引號(單引號或雙引號)將字符串括起來。分隔元素的符號應(yīng)該使用英文半角逗號 ,,而不是中文全角逗號 、 或其他符號。4.下列語句正確的輸出是?( )lis= [4 * c for c in "draw"]print(tuple(lis))A.('4*d', '4*r', '4*a', '4*w') B.('dddd', 'rrrr', 'aaaa', 'wwww')C.('draw', 'draw', 'draw', 'draw') D.(4*d, 4*r, 4*a, 4*w)【答案】A【知識點】常見的數(shù)據(jù)結(jié)構(gòu)【解析】【解答】lis 是通過對字符串 "draw" 的每個字符進(jìn)行操作生成的列表。對于每個字符 c,表達(dá)式 4 * c 將字符重復(fù)四次。因此,列表 lis 的元素為:['4d', '4r', '4a', '4w']。將 lis 轉(zhuǎn)換為元組(tuple)后,輸出結(jié)果為 ('4*d', '4*r', '4*a', '4*w')。故答案選:A。【分析】本題考查了對列表推導(dǎo)式和字符串操作。列表推導(dǎo)式是一種用于創(chuàng)建新列表的簡潔方式。它可以根據(jù)一個表達(dá)式和一個迭代器生成列表,并可以包含條件語句。在列表推導(dǎo)式中,可以對迭代器中的每個元素進(jìn)行操作,并根據(jù)定義的規(guī)則生成新的元素。字符串可以被視為一個可迭代對象,可以按照字符進(jìn)行遍歷。在給定的代碼中,字符串 "draw" 被遍歷,每個字符被乘以 4,生成了新的字符串元素。最終,列表 lis 包含了四個字符串元素:['4d', '4r', '4a', '4w']。tuple() 函數(shù)用于將一個可迭代對象轉(zhuǎn)換為元組。5.Python中 print('十六進(jìn)制{0:x}'.format(100)) 正確的輸出結(jié)果是?( )A.十六進(jìn)制0:x64 B.十六進(jìn)制64C.十六進(jìn)制0x100 D.十六進(jìn)制100【答案】B【知識點】Python常用內(nèi)置函數(shù)【解析】【解答】{0:x} 是格式化字符串中的占位符,用于將第一個參數(shù)(100)格式化為十六進(jìn)制形式。0 表示第一個參數(shù)。:x 是格式化說明符,表示將參數(shù)格式化為十六進(jìn)制形式。因此,{0:x} 將 100 格式化為十六進(jìn)制,結(jié)果是 '64'。最終的輸出結(jié)果是 十六進(jìn)制64。故答案選:B。【分析】本題考查了對格式化字符串和格式化說明符。在Python中,可以使用字符串的 format() 方法來進(jìn)行格式化輸出。格式化字符串使用大括號 {} 作為占位符,可以通過指定索引或關(guān)鍵字來引用參數(shù)。格式化字符串中的冒號 : 后面可以加上格式化說明符,用于指定參數(shù)的顯示格式。x 是格式化說明符之一,用于將整數(shù)參數(shù)格式化為十六進(jìn)制形式。6.下面可以正確輸出 號稱"世界屋脊"的青藏高原 字符的Python語句是?( )A.print('號稱\"世界屋脊\"的青藏高原')B.print(號稱\"世界屋脊\"的青藏高原)C.print('號稱'\"世界屋脊\"的青藏高原)D.print("號稱\"世界屋脊\"的青藏高原)【答案】D【知識點】Python常用內(nèi)置函數(shù)【解析】【解答】A:print('號稱\"世界屋脊\"的青藏高原') 在字符串中使用轉(zhuǎn)義字符 \ 來表示引號的轉(zhuǎn)義,可以正確輸出。B:print(號稱\"世界屋脊\"的青藏高原) 缺少引號,應(yīng)該使用引號將字符串括起來。C:print('號稱'\"世界屋脊\"的青藏高原) 引號的位置不正確,應(yīng)該將引號放在整個字符串的外面。D:print("號稱\"世界屋脊\"的青藏高原) 使用雙引號括起整個字符串,可以正確輸出。因此,選項 D:print("號稱\"世界屋脊\"的青藏高原") 是正確的Python語句。故答案選:D。【分析】本題考查了對字符串中引號的轉(zhuǎn)義。在字符串中,如果要包含與字符串本身相同類型的引號,可以使用轉(zhuǎn)義字符 \ 來表示引號的轉(zhuǎn)義。在給定的選項中,字符串中的雙引號 "號稱\"世界屋脊\"的青藏高原" 被轉(zhuǎn)義為 \",表示字符串中的雙引號是作為引號的一部分,而不是表示字符串的結(jié)束。使用單引號括起字符串 '號稱\"世界屋脊\"的青藏高原' 也可以達(dá)到相同的效果,不需要進(jìn)行轉(zhuǎn)義。在Python中,字符串可以使用單引號或雙引號括起來,兩者的效果是相同的。使用轉(zhuǎn)義字符 \ 可以表示特殊字符,如引號、換行符等。7.Python使用range可以創(chuàng)建數(shù)值列表。下面可以正確輸出不超過1000的10的倍數(shù)正整數(shù)的語句是?( )A.print(list(range(1, 1000, 10)))B.print(list(range(0, 1000, 10)))C.print(list(range(10, 1001, 10)))D.print(list(range(10, 1000, 10)))【答案】B【知識點】Python常用內(nèi)置函數(shù)【解析】【解答】A:print(list(range(1, 1000, 10))) 從1開始,每次增加10,直到1000。這將輸出從1到991的10的倍數(shù),不符合題目要求。B:print(list(range(0, 1000, 10))) 從0開始,每次增加10,直到1000。這將輸出不超過1000的10的倍數(shù)整數(shù),但該項中包含0,不符合題目要求。C:print(list(range(10, 1001, 10))) 從10開始,每次增加10,直到1001。這將輸出從10到1000的10的倍數(shù),符合題目要求。D:print(list(range(10, 1000, 10))) 從10開始,每次增加10,直到1000。這將輸出從10到990的10的倍數(shù),不符合題目要求。因此,選項 C:print(list(range(10, 1001, 10))) 是可以正確輸出不超過1000的10的倍數(shù)正整數(shù)的語句。故答案選:C。【分析】本題考查 range() 函數(shù)創(chuàng)建數(shù)值列表。在Python中,可以使用 range() 函數(shù)創(chuàng)建一個指定范圍內(nèi)的數(shù)值列表。range() 函數(shù)的三個參數(shù)分別是起始值、結(jié)束值和步長。range(start, stop, step) 會生成一個從起始值到結(jié)束值之間,以指定步長遞增或遞減的整數(shù)序列。范圍是左閉右開的,即起始值包含在序列中,但結(jié)束值不包含在序列中。8.學(xué)生機(jī)器人比賽的時候經(jīng)常會用到倒計時程序。下面可以正確倒序輸出5以內(nèi)正整數(shù)的語句是?( )A.print(list(range(5, -1, 1))) B.print(list(range(-1, 5, 1)))C.print(list(range(5, 0, -1))) D.print(list(range(5, 1, -1)))【答案】C【知識點】常見的數(shù)據(jù)結(jié)構(gòu)【解析】【解答】A:print(list(range(5, -1, 1))) 從5開始,每次增加1,直到-1。這將生成一個空的列表,不符合題目要求。B:print(list(range(-1, 5, 1))) 從-1開始,每次增加1,直到5。這將輸出從-1到4的正整數(shù),不符合題目要求。C:print(list(range(5, 0, -1))) 從5開始,每次減少1,直到1。這將倒序輸出從5到1的正整數(shù),符合題目要求。D:print(list(range(5, 1, -1))) 從5開始,每次減少1,直到2。這將輸出從5到2的正整數(shù),不符合題目要求。因此,選項 C:print(list(range(5, 0, -1))) 是可以正確倒序輸出5以內(nèi)正整數(shù)的語句。故答案選:C。【分析】本題考查 range() 函數(shù)創(chuàng)建倒序數(shù)值列表。在Python中,可以使用 range() 函數(shù)創(chuàng)建一個指定范圍內(nèi)的數(shù)值列表。range() 函數(shù)的三個參數(shù)分別是起始值、結(jié)束值和步長。range(start, stop, step) 會生成一個從起始值到結(jié)束值之間,以指定步長遞增或遞減的整數(shù)序列。范圍是左閉右開的,即起始值包含在序列中,但結(jié)束值不包含在序列中。9.有一個字典內(nèi)容如下,它的元素數(shù)量有幾個?( )info = {'Id': 12, 'Num': 4, 'height': 9 }A.12 B.3 C.4 D.9【答案】B【知識點】常見的數(shù)據(jù)結(jié)構(gòu)【解析】【解答】給定的字典info包含以下鍵值對:{'Id': 12, 'Num': 4, 'height': 9}元素數(shù)量指的是字典中鍵值對的個數(shù)。在這個字典中,有3個鍵值對。故答案選:B。【分析】本題考查字典數(shù)據(jù)類型。字典是Python中的一種數(shù)據(jù)類型,用于存儲鍵值對。字典由花括號 {} 包圍,鍵值對之間用冒號 : 分隔,每個鍵值對之間用逗號 , 分隔。字典中的鍵是唯一的,且通常為不可變的數(shù)據(jù)類型(如字符串、整數(shù)、元組),值可以是任意數(shù)據(jù)類型。字典中的元素數(shù)量指的是鍵值對的個數(shù)。可以使用 len() 函數(shù)來獲取字典的元素數(shù)量。10.現(xiàn)有集合 items = set(("height", "width", "color", "align")) ,需要在集合中添加元素"text",正確的是?( )A.items.add("text") B.items.insert("text")C.items.pop("text") D.items.set("text")【答案】A【知識點】常見的數(shù)據(jù)結(jié)構(gòu);Python常用內(nèi)置函數(shù)【解析】【解答】選項 A 使用 add 方法將元素 "text" 添加到集合中。這是正確的方式。選項 B 中的 insert 方法是用于列表的,在集合中無效。選項 C 中的 pop 方法用于移除集合中的元素,但是它需要指定一個已存在的元素作為參數(shù),而不是添加新元素。選項 D 中沒有 set 方法可以用于集合。故答案選:A。【分析】本題考查了對集合的基本操作。集合是 Python 中的一種內(nèi)置數(shù)據(jù)類型,用于存儲多個唯一的元素。集合的特點包括無序性(元素沒有固定順序)和唯一性(不允許重復(fù)元素)。可以使用 add 方法向集合添加單個元素,使用 update 方法向集合添加多個元素。可以使用 remove 方法或 discard 方法從集合中移除元素。使用 in 關(guān)鍵字可以檢查元素是否存在于集合中。集合還支持交集、并集、差集等操作,可以使用相應(yīng)的方法或運算符進(jìn)行操作。11.計算三位完全平方數(shù)(100-999范圍內(nèi)),正確的生成器推導(dǎo)式是?( )A.square = (x**2 for x in range(10,32))B.square = (x**2 for x in range(32))C.square = (x**2 for x in range(10,31))D.square = [x**2 for x in range(31)]【答案】A【知識點】運算符與表達(dá)式【解析】【解答】選項 A (x**2 for x in range(10, 32)) 會生成從 10 到 31 的平方數(shù),滿足三位數(shù)的完全平方數(shù)的要求。選項 B (x**2 for x in range(32)) 會生成從 0 到 31 的平方數(shù),不滿足三位數(shù)的完全平方數(shù)的要求。選項 C (x**2 for x in range(10, 31)) 會生成從 10 到 30 的平方數(shù),不滿足所有三位數(shù)的完全平方數(shù)的要求。選項 D [x**2 for x in range(31)] 會生成從 0 到 30 的平方數(shù),不滿足三位數(shù)的完全平方數(shù)的要求。故答案選:A。【分析】本題考查了生成器推導(dǎo)式的使用。生成器推導(dǎo)式(Generator comprehensions)是一種快速創(chuàng)建生成器對象的方式,類似于列表推導(dǎo)式(List comprehensions)。生成器推導(dǎo)式使用圓括號括起來,并在內(nèi)部使用類似于列表推導(dǎo)式的語法。生成器對象是一種可迭代對象,每次迭代時生成一個值,而不是一次性生成所有值。生成器推導(dǎo)式在處理大量數(shù)據(jù)時具有高效性能,因為它們按需生成值,而不是一次性生成所有值。12.下列Python序列解包,正確的輸出是?( )fruit=['apple','peach','orange']weight=[65,77,68]for i, j in zip(fruit,weight):print(i,j,end=' ')A.'apple','peach','orange',65,77,68B.a(chǎn)pple peach orange 65 77 68C.a(chǎn)pple 65 peach 77 orange 68D.a(chǎn)pple 65 , peach 77 , orange 68【答案】C【知識點】分支結(jié)構(gòu)程序設(shè)計與分析;常見的數(shù)據(jù)結(jié)構(gòu);Python常用內(nèi)置函數(shù)【解析】【解答】代碼中使用了 zip 函數(shù)將兩個列表 fruit 和 weight 按索引位置進(jìn)行配對。在 for 循環(huán)中,使用序列解包將配對的元素分別賦值給變量 i 和 j。print(i, j, end=' ') 將每個元素以空格分隔打印出來。輸出結(jié)果為 apple 65 peach 77 orange 68,每個水果與其對應(yīng)的重量以及空格按順序打印出來。故答案選:C。【分析】本題考查了對序列解包和 zip 函數(shù)。序列解包(Sequence unpacking)是一種將序列(如列表、元組)中的元素分配給多個變量的操作。在序列解包中,變量的數(shù)量應(yīng)與序列中的元素數(shù)量相等,否則會引發(fā) ValueError 異常。zip 函數(shù)接受多個序列作為參數(shù),返回一個將相同位置的元素配對的迭代器。當(dāng)傳遞給 zip 函數(shù)的序列長度不同時,返回的迭代器長度將與最短的序列相同。可以在 for 循環(huán)中使用序列解包和 zip 函數(shù)一次迭代多個序列,并對每個元素進(jìn)行操作。13.下列哪個選項是Python math庫的數(shù)字常數(shù)?( )A.math.log B.math.inf C.math.rnd D.math.exp【答案】B【知識點】常量、變量與賦值語句【解析】【解答】選項 A math.log 是 math 模塊中的一個函數(shù),用于計算對數(shù)。選項 B math.inf 是 math 模塊中的一個常數(shù),表示正無窮大。選項 C math.rnd 不是 math 模塊中的有效函數(shù)或常數(shù)。選項 D math.exp 是 math 模塊中的一個函數(shù),用于計算指數(shù)。故答案選:B。【分析】本題考查了對math 模塊中數(shù)字常數(shù)。math 是 Python 的數(shù)學(xué)函數(shù)庫,提供了執(zhí)行數(shù)學(xué)運算的函數(shù)和常數(shù)。14.Python中詞云主要有WordCloud庫,在創(chuàng)建好詞云對象后,可以使用什么方法生成詞云,并使用to_file方法將詞云圖像保存在文件中?( )A.WCloud B.generate C.random D.jieba【答案】B【知識點】常用基本函數(shù)【解析】【解答】在使用 WordCloud 庫創(chuàng)建詞云對象后,可以使用 generate 方法生成詞云。generate 方法會根據(jù)輸入的文本數(shù)據(jù)生成詞云圖像,根據(jù)詞頻等信息確定詞語的大小、顏色等展示效果。生成的詞云圖像可以通過 to_file 方法保存在文件中。選項 A:WCloud 并不是 WordCloud 庫中的方法或?qū)傩浴_x項 C:random 是用于生成隨機(jī)數(shù)的庫,并不與詞云生成直接相關(guān)。選項 D:jieba 是用于中文分詞的庫,與詞云生成過程中的文本預(yù)處理相關(guān),但不直接用于生成詞云圖像。故答案選:B。【分析】本題考查 WordCloud 庫中生成詞云和保存詞云圖像的方法。WordCloud 是一個用于生成詞云的 Python 庫,可以根據(jù)文本數(shù)據(jù)創(chuàng)建詞云圖像。使用 WordCloud 庫可以根據(jù)詞頻等信息將詞語以不同的大小、顏色等形式展示在圖像上,形成具有藝術(shù)效果的詞云圖像。在創(chuàng)建詞云對象后,可以使用 generate 方法根據(jù)輸入的文本數(shù)據(jù)生成詞云圖像。生成的詞云圖像可以通過 to_file 方法保存為圖像文件,常見的文件格式包括 PNG、JPEG 等。在生成詞云之前,通常需要對文本數(shù)據(jù)進(jìn)行預(yù)處理,例如分詞、去除停用詞等,以便生成更加準(zhǔn)確的詞云圖像。WordCloud 庫還提供了其他的配置選項,例如設(shè)置背景顏色、字體樣式、詞語形狀等,可以根據(jù)需求進(jìn)行調(diào)整。15.有列表li= [‘a(chǎn)’,’b’,’c’,’d’],執(zhí)行l(wèi)i=li + [‘d’,’e’,’f’] 后,print(li)的結(jié)果是?( )A.[‘a(chǎn)’,’b’,’c’,’d’], [‘d’,’e’,’f’]B.[‘a(chǎn)’,’b’,’c’,’d’,’e’,’f’]C.(‘a(chǎn)’,’b’,’c’,’d’,‘d’,’e’,’f’)D.[‘a(chǎn)’,’b’,’c’,’d’,‘d’,’e’,’f’]【答案】D【知識點】常見的數(shù)據(jù)結(jié)構(gòu)【解析】【解答】初始列表 li 包含元素 'a', 'b', 'c', 'd'。執(zhí)行 li = li + ['d', 'e', 'f'] 將列表 ['d', 'e', 'f'] 添加到 li 中。運算符 + 在列表中表示連接操作,將兩個列表連接成一個新的列表。因此,li 的結(jié)果是 ['a', 'b', 'c', 'd', 'd', 'e', 'f']。故答案選:D。【分析】本題考查列表連接操作。列表是 Python 中常用的數(shù)據(jù)類型之一,可以存儲多個元素,并按順序訪問。使用 + 運算符可以將兩個列表連接成一個新的列表。在執(zhí)行連接操作時,會將第一個列表的元素和第二個列表的元素按順序合并到新列表中。連接操作不會改變原始列表,而是生成一個新的列表。16.已知有元組tup1=('a','b'),tup2=(1,2,3),tup3=tup1+tup2,執(zhí)行print(len(tup3))后結(jié)果是?( )A.5 B.3 C.2 D.0【答案】A【知識點】常見的數(shù)據(jù)結(jié)構(gòu);Python常用內(nèi)置函數(shù)【解析】【解答】給定元組 tup1 為 ('a', 'b'),元組 tup2 為 (1, 2, 3)。執(zhí)行 tup3 = tup1 + tup2 將 tup1 和 tup2 進(jìn)行連接操作,生成新的元組 tup3。tup3 包含了 tup1 和 tup2 中的所有元素,即 ('a', 'b', 1, 2, 3)。使用 len(tup3) 計算元組 tup3 的長度,即元素的個數(shù)。因此,打印結(jié)果為 5,表示元組 tup3 包含了 5 個元素。故答案選:A。【分析】本題考查了對元組的連接操作。元組是 Python 中的一種不可變序列類型,可以存儲多個元素,并按順序訪問。使用 + 運算符可以將兩個元組連接成一個新的元組。在執(zhí)行連接操作時,會將第一個元組的元素和第二個元組的元素按順序合并到新元組中。連接操作不會改變原始元組,而是生成一個新的元組。可以使用 len() 函數(shù)計算元組的長度,即元素的個數(shù)。17.現(xiàn)在有str1="day day up up .",請問str1[5]的值是?( )A.d B.a(chǎn) C.day d D.p【答案】B【知識點】常見的數(shù)據(jù)結(jié)構(gòu)【解析】【解答】給定字符串 str1 為 "day day up up ."。字符串的索引從 0 開始,表示字符串中的位置。str1[5] 表示索引為 5 的字符,即第六個字符。在字符串 "day day up up ." 中,第六個字符是字母 'a'。因此,str1[5] 的值為 'a'。故答案選:B。【分析】本題考查字符串索引。字符串是 Python 中的一種不可變序列類型,表示一串字符。使用方括號和索引值可以訪問字符串中特定位置的字符。字符串的索引從 0 開始,表示字符串中的位置。18.下面哪個選項不可以輸出語句"我要考python,今年考5級。"?( )A.print("我要考{},今年考{}級。".format("python",5))B.print("我要考{str},今年考{grade}級。".format(grade=5,str="python"))C.print("我要考%s,今年考%s級。"%(5,"python"))D.print("我要考%s,今年考%d級。"%("python",5))【答案】D【知識點】Python常用內(nèi)置函數(shù)【解析】【解答】選項 A:print("我要考{},今年考{}級。".format("python",5)) 使用了格式化字符串中的 {} 占位符,并通過 format 方法傳入相應(yīng)的值,可以正確輸出所需的語句。選項 B:print("我要考{str},今年考{grade}級。".format(grade=5,str="python")) 使用了命名占位符 {} 并通過 format 方法的關(guān)鍵字參數(shù)傳入相應(yīng)的值,可以正確輸出所需的語句。選項 C:print("我要考%s,今年考%s級。"%(5,"python")) 使用了 % 格式化字符串的方式,并通過 % 運算符傳入相應(yīng)的值,可以正確輸出所需的語句。選項 D:print("我要考%s,今年考%d級。"%("python",5)) 使用了 % 格式化字符串的方式,但占位符的類型與提供的值類型不匹配。第一個占位符使用了 %s 表示字符串,而實際提供的是整數(shù)值 "python";第二個占位符使用了 %d 表示整數(shù),而實際提供的是字符串值 5。這樣的格式不匹配會導(dǎo)致輸出錯誤。故答案選:D。【分析】本題考查格式化字符串。格式化字符串是一種在輸出文本時將值插入到字符串中的方法。Python 提供了多種格式化字符串的方式,包括使用 {} 占位符和 format 方法,以及使用 % 運算符。{} 占位符可以按順序接收值,也可以使用關(guān)鍵字參數(shù)指定值的順序。% 運算符可以使用不同的占位符表示不同的值類型,如 %s 表示字符串,%d 表示整數(shù),%f 表示浮點數(shù)等。在使用格式化字符串時,占位符的類型和提供的值的類型需要匹配,否則可能導(dǎo)致輸出錯誤。19.下面程序要輸出1~10,則在①處應(yīng)填入?( )x = list(range( ① ))t = 1**2for i in x:print(i+t)A.5 B.0,10,2 C.10 D.0:10:2【答案】C【知識點】循環(huán)結(jié)構(gòu)程序設(shè)計與分析;常見的數(shù)據(jù)結(jié)構(gòu)【解析】【解答】在程序中,x被賦值為range(10),它生成了一個包含從0到9的整數(shù)的列表。因此,循環(huán)將迭代10次,依次將0到9賦值給變量i。在每次迭代中,打印i加上t的結(jié)果,其中t等于1的平方,即1。因此,程序輸出的結(jié)果是1到10。故答案選:C。【分析】本題考查range函數(shù)。range(start, stop, step)是一個內(nèi)置函數(shù),用于生成一個整數(shù)序列。它接受三個參數(shù):起始值start(默認(rèn)為0),結(jié)束值stop(不包含在序列中),步長step(默認(rèn)為1)。當(dāng)只提供一個參數(shù)時,該參數(shù)被視為結(jié)束值,起始值默認(rèn)為0,步長默認(rèn)為1。20.>>> range(9,2,-2)[0]執(zhí)行后的結(jié)果是?( )A.0 B.-2 C.9 D.2【答案】C【知識點】Python常用內(nèi)置函數(shù)【解析】【解答】執(zhí)行range(9,2,-2)會生成一個逆向的整數(shù)序列,從9開始,步長為-2,直到大于2停止。根據(jù)range函數(shù)的規(guī)則,序列中的第一個元素是起始值9。因此,執(zhí)行range(9,2,-2)[0]的結(jié)果是9。故答案選:C。【分析】本題考查range函數(shù)。range函數(shù)可以生成一個整數(shù)序列,包括起始值和結(jié)束值之間的整數(shù)。當(dāng)提供了步長參數(shù)時,序列中的元素之間的間隔由步長決定。如果步長是正數(shù),則序列是遞增的;如果步長是負(fù)數(shù),則序列是遞減的。21.字典中多個元素之間使用_____分隔開,每個元素的“鍵”與“值”之間使用_____分隔開。下列選項中正確的填空選項是?( )A.逗號 冒號 B.逗號 分號 C.冒號 句號 D.分號 圓點號【答案】A【知識點】常見的數(shù)據(jù)結(jié)構(gòu)【解析】【解答】字典中多個元素之間使用逗號進(jìn)行分隔,每個元素的鍵與值之間使用冒號進(jìn)行分隔。故答案選:A。【分析】本題考查字典中元素分隔符。字典是Python中的一種數(shù)據(jù)結(jié)構(gòu),用于存儲鍵-值對。每個鍵值對都由一個鍵和與之相關(guān)聯(lián)的值組成。在字典中,多個元素之間使用逗號進(jìn)行分隔,以表示每個鍵值對。鍵和值之間使用冒號進(jìn)行分隔。逗號用于分隔不同的鍵值對,冒號用于分隔鍵和值。22.下列哪一個選項可以輸出內(nèi)容:{'World', 'e', 'H', 'l', 'o'}?( )A.s=set("Hello")s.append("World")print(s)B.s=set("Hello")s.add("World")print(s)C.s=set("Hello")s.update("World")print(s)D.s=set("Hello")s.insert("World")print(s)【答案】B【知識點】順序結(jié)構(gòu)程序設(shè)計與分析;Python常用內(nèi)置函數(shù)【解析】【解答】選項A中,set類型沒有append方法,因此會導(dǎo)致錯誤。選項B中,使用add方法向集合中添加元素,正確地將"World"添加到集合中,輸出{'World', 'e', 'H', 'l', 'o'}。選項C中,使用update方法向集合中添加元素,但它會將字符串"World"視為可迭代對象,將其拆分為單個字符進(jìn)行添加,輸出結(jié)果為{'W', 'r', 'l', 'e', 'o', 'H'}。選項D中,set類型沒有insert方法,因此會導(dǎo)致錯誤。故答案選:B。【分析】本題考查集合類型(set)的操作方法。在Python中,集合(set)是一種無序且不重復(fù)的數(shù)據(jù)集合。它支持添加、刪除和查詢操作。使用set()函數(shù)或使用花括號{}創(chuàng)建一個空集合。要創(chuàng)建一個包含初始元素的集合,可以使用set()函數(shù)并將可迭代對象作為參數(shù),或者直接使用花括號包裹元素。使用add()方法可以向集合中添加單個元素。使用update()方法可以向集合中添加多個元素,它接受一個可迭代對象作為參數(shù)。23.根據(jù)下列代碼及運行結(jié)果判斷字典推導(dǎo)公式實現(xiàn)的功能?( )a ={'x ': 6,'y ': 9}a_change= {v: k for k, v in a.items( )}print(a_change)A.創(chuàng)建字典并輸出 B.交換字典的key和valueC.輸出字典key和value D.遍歷字典【答案】B【知識點】順序結(jié)構(gòu)程序設(shè)計與分析;常見的數(shù)據(jù)結(jié)構(gòu)【解析】【解答】在代碼中,使用字典推導(dǎo)公式{v: k for k, v in a.items()}來創(chuàng)建新的字典a_change。a.items()返回原始字典a中的鍵值對組成的可迭代對象。在推導(dǎo)公式中,使用了k和v分別表示原始字典a中的鍵和值。推導(dǎo)公式的結(jié)果是創(chuàng)建一個新的字典,其中原始字典a中的鍵變?yōu)樾伦值涞闹担甲值鋋中的值變?yōu)樾伦值涞逆I。因此,運行結(jié)果為{'6': 'x ', '9': 'y '},即鍵值對被交換了。這意味著字典推導(dǎo)公式實現(xiàn)了將字典的鍵和值互換的功能。故答案選:B。【分析】本題考查字典推導(dǎo)公式。字典推導(dǎo)是一種快速創(chuàng)建字典的方法,類似于列表推導(dǎo)和集合推導(dǎo)。字典推導(dǎo)的一般形式是{expression for item in iterable},其中expression定義了新字典中鍵和值的計算方式。24.下列代碼運行后的正確選項是?( )import timea=time.gmtime()print(time.strftime('%Y-%m-%d %a %h:%M:%S %p',a))A.2023-02-01 Wed Feb:08:04 PMB.Wed Feb: 2023-02-01 08:04 PMC.Wed Feb:08:04 PM 2023-02-01D.2023-02-01 Wed Feb:08:04【答案】C【知識點】Python常用內(nèi)置函數(shù)【解析】【解答】在給定的代碼中,time.strftime('%Y-%m-%d %a %h:%M:%S %p', a)將時間結(jié)構(gòu)a按照指定的格式進(jìn)行轉(zhuǎn)換,并打印輸出結(jié)果。%Y表示年份,%m表示月份,%d表示日期,%a表示星期幾,%h表示小時(12小時制),%M表示分鐘,%S表示秒,%p表示上午/下午。因此,運行結(jié)果為Wed Feb:08:04 PM 2023-02-01。故答案選:C。【分析】本題考查時間格式化。Python的time模塊提供了處理時間相關(guān)操作的函數(shù)。time.gmtime()函數(shù)返回當(dāng)前時間的UTC時間結(jié)構(gòu),即一個包含年、月、日、時、分、秒等信息的元組。time.strftime(format, time_struct)函數(shù)將時間結(jié)構(gòu)按照指定的格式轉(zhuǎn)換為字符串,其中format是格式化字符串,time_struct是時間結(jié)構(gòu)。格式化字符串中的占位符(如%Y、%m等)表示需要插入相應(yīng)時間信息的位置,通過這些占位符可以控制時間的輸出格式。25.Python的random庫中,random.choice()命令的功能是?( )A.返回時間值 B.返回隨機(jī)產(chǎn)生的一個字符串C.獲取隨機(jī)整數(shù) D.隨機(jī)獲取一個元素并返回【答案】D【知識點】Python常用內(nèi)置函數(shù)【解析】【解答】random.choice()命令的功能是D:隨機(jī)獲取一個元素并返回。故答案選:D。【分析】本題考查random庫中random.choice()函數(shù)。random是Python中的一個標(biāo)準(zhǔn)庫,用于生成隨機(jī)數(shù)。random庫提供了多個隨機(jī)數(shù)生成函數(shù),包括生成隨機(jī)整數(shù)、浮點數(shù)、隨機(jī)選擇元素等功能。random.choice(sequence)函數(shù)用于從給定序列中隨機(jī)選擇一個元素并返回。序列可以是列表、元組、字符串等可迭代對象。random.choice()函數(shù)的返回值是序列中的一個元素,每個元素被選中的概率是相等的。通過調(diào)用random.choice()函數(shù),可以實現(xiàn)從給定序列中隨機(jī)選擇一個元素的操作。二、判斷題(共10題,共20分)26.在Python中設(shè)定字符串str="Happy new year",則str.rfind('y')返回值為4。( )【答案】(1)錯誤【知識點】Python常用內(nèi)置函數(shù)【解析】【解答】str.rfind('y')是字符串對象的一個方法,用于返回指定字符(子字符串)在字符串中最后一次出現(xiàn)的索引。在給定的字符串"Happy new year"中,最后一次出現(xiàn)字符'y'的位置是索引11,而不是索引4。str.rfind('y')會從字符串的右側(cè)開始搜索字符'y',找到最后一次出現(xiàn)的位置并返回對應(yīng)的索引。在本題中,str.rfind('y')返回值為11。故答案為:錯誤。【分析】本題考查字符串方法str.rfind()。在Python中,字符串對象有一個名為rfind()的方法,用于查找指定字符(子字符串)在字符串中最后一次出現(xiàn)的位置。rfind()方法返回找到的字符最后一次出現(xiàn)的索引值,如果未找到則返回-1。rfind()方法從字符串的右側(cè)開始搜索指定字符,向左逐個字符地檢查,直到找到目標(biāo)字符或搜索完整個字符串。27.樂器社團(tuán)活動,小明用Python進(jìn)行信息匯總,為了便于操作,他使用了各個元素之間沒有先后順序的集合類型。( )【答案】(1)正確【知識點】常見的數(shù)據(jù)結(jié)構(gòu)【解析】【解答】集合(Set)是Python中的一種無序、可變的數(shù)據(jù)類型,用于存儲不重復(fù)的元素。集合中的元素之間沒有確定的順序,即元素的存儲順序與添加順序無關(guān)。集合類型在處理數(shù)據(jù)時具有去重的功能,適合用于存儲和操作一組不重復(fù)的元素。小明在樂器社團(tuán)活動中使用集合類型進(jìn)行信息匯總,可以方便地對活動參與者、樂器種類等進(jìn)行去重和操作。故答案為:正確。【分析】本題考查集合類型。在Python中,集合(Set)是一種無序、可變的數(shù)據(jù)類型,用于存儲不重復(fù)的元素。集合中的元素之間沒有確定的順序,元素的存儲順序與添加順序無關(guān)。集合類型支持添加、刪除和查詢操作,并且對元素進(jìn)行自動去重。可以使用集合類型進(jìn)行集合之間的交集、并集、差集等操作。集合類型在處理需要去重的數(shù)據(jù)和對集合操作的場景中非常有用,例如在本題中進(jìn)行信息匯總的場景。28.已知元組tup1='a','b','cd',執(zhí)行print(tup1.count('cd'))后的結(jié)果是3。( )【答案】(1)錯誤【知識點】常見的數(shù)據(jù)結(jié)構(gòu);Python常用內(nèi)置函數(shù)【解析】【解答】元組類型提供了count()方法,用于統(tǒng)計指定元素在元組中出現(xiàn)的次數(shù)。在給定的元組tup1='a','b','cd'中,元素'cd'只出現(xiàn)了一次,因此tup1.count('cd')的結(jié)果是1,而不是3。故答案為:錯誤。【分析】本題考查元組類型和元組方法count()。在Python中,元組(Tuple)是一種有序、不可變的數(shù)據(jù)類型,用于存儲多個元素的集合。元組使用圓括號 () 或者沒有括號進(jìn)行定義,元素之間使用逗號進(jìn)行分隔。元組中的元素按照定義的順序進(jìn)行存儲,且不可修改。29.在python中使用雙重轉(zhuǎn)義(用兩個斜杠)輸出文件路徑,如:"d:\test\text\file1.txt",在字符串中這樣表示:l="d:\\test\\text\\file1.txt",print(l)。( )【答案】(1)正確【知識點】運算符與表達(dá)式【解析】【解答】在給定的字符串路徑中,要表示 "d:\test\text\file1.txt",可以使用雙重轉(zhuǎn)義,即 "d:\test\text\file1.txt"。使用雙重轉(zhuǎn)義后,字符串中的每個反斜杠字符都會被正確地解析為一個反斜杠字符。執(zhí)行 print(l) 會輸出 "d:\test\text\file1.txt",其中每個反斜杠字符都會被正確地顯示。故答案為:正確。【分析】本題考查字符串中特殊字符和轉(zhuǎn)義字符。在Python中,反斜杠(\)被用作轉(zhuǎn)義字符,用于表示特殊字符或者在字符串中插入一些特殊的字符。如果要在字符串中表示一個反斜杠字符(\)本身,需要使用雙重轉(zhuǎn)義,即兩個反斜杠(\)表示一個反斜杠字符。30.執(zhí)行下列兩段代碼的結(jié)果是一致的。( )代碼1:for i in range(9,2):print("i=",i)代碼2:for j in range(2,9,-2):print("j=",j)【答案】(1)正確【知識點】循環(huán)結(jié)構(gòu)程序設(shè)計與分析;Python常用內(nèi)置函數(shù)【解析】【解答】代碼1中的for循環(huán)使用range(9,2)作為迭代范圍,這意味著從9開始遞增,直到2之前停止。但是由于起始值9已經(jīng)大于終止值2,所以循環(huán)體不會執(zhí)行。因此,代碼1不會輸出任何內(nèi)容。代碼2中的for循環(huán)使用range(2,9,-2)作為迭代范圍,步長為-2。然而,由于起始值2并不小于終止值9,且步長為負(fù)數(shù),循環(huán)無法正常執(zhí)行。因此,代碼2也不會輸出任何內(nèi)容。故答案為:正確。【分析】本題考查range函數(shù)。range函數(shù)用于生成一個指定范圍內(nèi)的整數(shù)序列,常用于for循環(huán)中的迭代。range函數(shù)的常用形式為range(start, stop, step),其中start為起始值(包含),stop為終止值(不包含),step為步長(默認(rèn)為1)。31.字典對象的items()方法是返回字典中的“鍵-值對”對象。( )【答案】(1)正確【知識點】常見的數(shù)據(jù)結(jié)構(gòu);Python常用內(nèi)置函數(shù)【解析】【解答】字典對象的items()方法返回一個包含字典中所有鍵值對的可迭代對象,每個鍵值對以元組的形式表示。故答案為:正確。【分析】本題考查字典對象的items()方法。字典是Python中的一種數(shù)據(jù)結(jié)構(gòu),用于存儲鍵值對。字典中的每個鍵都是唯一的,它們與相應(yīng)的值一一對應(yīng)。字典對象的items()方法可以返回一個可迭代對象,該對象包含字典中的所有鍵值對。每個鍵值對以元組的形式表示,元組的第一個元素是鍵,第二個元素是對應(yīng)的值。通過items()方法可以方便地遍歷字典中的所有鍵值對,或者進(jìn)行其他操作,如查找、篩選等。32.集合類型是一個包含0個或多個數(shù)據(jù)項的無序的、不重復(fù)的數(shù)據(jù)組合。其中,元素類型只能是固定數(shù)據(jù)類型,如整數(shù)、浮點數(shù)、字符串、元組等。( )【答案】(1)錯誤【知識點】常見的數(shù)據(jù)結(jié)構(gòu)【解析】【解答】集合類型是Python中的一種數(shù)據(jù)類型,它是一個無序的、不重復(fù)的數(shù)據(jù)集合。集合中的元素可以是任意類型的,包括整數(shù)、浮點數(shù)、字符串、元組等,沒有固定的數(shù)據(jù)類型限制。故答案為:錯誤。【分析】本題考查集合類型。集合類型是Python中的一種數(shù)據(jù)類型,用于存儲無序、不重復(fù)的數(shù)據(jù)集合。集合類型的特點是元素之間無序且不重復(fù)。集合類型可以通過大括號 {} 或者使用 set() 函數(shù)進(jìn)行創(chuàng)建。集合中的元素可以是任意類型的,包括整數(shù)、浮點數(shù)、字符串、元組等,沒有固定的數(shù)據(jù)類型限制。集合類型支持集合運算,如并集、交集、差集等操作。33.使用生成器對象的元素時,不可以將其根據(jù)需要轉(zhuǎn)化為列表或者元組。( )【答案】(1)錯誤【知識點】常見的數(shù)據(jù)結(jié)構(gòu)【解析】【解答】雖然生成器對象可以按需生成數(shù)據(jù)項,但是它也可以通過轉(zhuǎn)化為列表或元組的方式來獲取所有數(shù)據(jù)項。可以使用 list() 或 tuple() 函數(shù)將生成器對象轉(zhuǎn)化為列表或元組,這樣就可以一次性獲取所有數(shù)據(jù)項進(jìn)行使用。故答案為:錯誤。【分析】本題考查生成器對象。生成器對象是一種特殊的迭代器,它按需生成數(shù)據(jù)項,而不是一次性生成所有數(shù)據(jù)項。生成器對象可以通過函數(shù)中使用 yield 關(guān)鍵字來創(chuàng)建。生成器對象的特點是節(jié)省內(nèi)存空間,適用于處理大量數(shù)據(jù)或者無需一次性生成全部數(shù)據(jù)的場景。生成器對象可以通過轉(zhuǎn)化為列表或元組的方式獲取所有數(shù)據(jù)項,可以使用 list() 或 tuple() 函數(shù)進(jìn)行轉(zhuǎn)化。34.wordcloud庫生成詞云有文本生成和頻率生成兩種方法。( )【答案】(1)錯誤【知識點】常用基本函數(shù)【解析】【解答】在wordcloud庫中,生成詞云的方法主要有兩種:基于文本生成和基于詞頻生成。故答案為:錯誤。【分析】本題考查wordcloud庫中生成詞云的方法。基于文本生成的方法是將文本作為輸入,根據(jù)文本中單詞的出現(xiàn)情況生成詞云。這種方法會根據(jù)文本中單詞的頻率和位置等信息進(jìn)行繪制,以展示文本的特征和重要內(nèi)容。基于詞頻生成的方法是根據(jù)給定的詞頻信息生成詞云。用戶可以提供單詞及其對應(yīng)的頻率信息,詞云會根據(jù)頻率大小來確定單詞在詞云中的大小和顯示效果。35.在Python的列表數(shù)據(jù)結(jié)構(gòu)中,通過insert ()方法可以在指定位置插入元素。( )【答案】(1)正確【知識點】常見的數(shù)據(jù)結(jié)構(gòu);Python常用內(nèi)置函數(shù)【解析】【解答】在Python的列表數(shù)據(jù)結(jié)構(gòu)中,可以使用insert()方法在指定位置插入元素。該方法的語法為:list.insert(index, element)。其中,index表示要插入的位置,element表示要插入的元素。插入后,原位置及其后面的元素都會向后移動。故答案為:正確。【分析】本題考查列表數(shù)據(jù)結(jié)構(gòu)中插入元素的操作方法。列表是Python中常用的數(shù)據(jù)結(jié)構(gòu),可以存儲多個元素,并且可以根據(jù)需要進(jìn)行動態(tài)調(diào)整。insert()方法是列表對象的一個內(nèi)置方法,用于在指定位置插入元素。插入元素后,原位置及其后面的元素會向后移動,列表的長度會增加。三、編程題(共3題,共30分)36.體育社團(tuán)活動,老師首先讓社團(tuán)小組成員按從低到高順序排成一隊站好,小明站在隊中,發(fā)現(xiàn)和他同樣身高的有3人,他想知道,當(dāng)前社團(tuán)小組的隊列中,具有相同身高的最多人數(shù)。給出社團(tuán)小組的每個成員身高信息,請你幫忙編寫程序輸出相同身高的最多人數(shù)。輸入格式:輸入共1行,若干個有序數(shù)值(從小到大),互相之間以空格隔開。輸出格式:輸出共1行,1個整數(shù),表示相同身高的最多人數(shù)。輸入樣例:120 123 123 125 125 125 126 126 126 126 127 127 129 130輸出樣例:4a=[int(i) for i in input(). ]n=len(a)k,maxn=1,1for i in range(1,n):if a[i] == :k+=1else: maxn=max( )print(maxn)【答案】split();a[i+1];k=1;max_count, k【知識點】循環(huán)結(jié)構(gòu)程序設(shè)計與分析;常見的數(shù)據(jù)結(jié)構(gòu);Python常用內(nèi)置函數(shù)【解析】【解答】(1)split() 函數(shù)用于按照指定的分隔符將輸入的字符串切分成多個部分,并返回切分后的部分作為列表。在這個問題中,我們需要將輸入的一行身高信息按空格進(jìn)行切分,得到每個成員的身高作為列表元素。故答案為:split()。(2)這里的條件判斷用于判斷當(dāng)前身高a[i]是否與前一個身高a[i-1]相同。如果當(dāng)前身高與前一個身高相同,則將計數(shù)器k加1,表示當(dāng)前連續(xù)相同身高的人數(shù)增加了。故答案為:a[i+1]。(3)如果當(dāng)前身高與前一個身高不相同,則將計數(shù)器k重置為1,表示重新開始統(tǒng)計連續(xù)相同身高的人數(shù)。故答案為:k=1。(4)在每次更新計數(shù)器k的同時,更新最大連續(xù)相同身高人數(shù)max_count。使用max()函數(shù)比較當(dāng)前連續(xù)相同身高人數(shù)k和已經(jīng)統(tǒng)計的最大連續(xù)相同身高人數(shù)max_count,取其中較大的值作為新的max_count。故答案為:max_count, k。【分析】本題考查列表的遍歷和條件判斷的使用,以及對變量的更新和比較。本題可以通過遍歷列表并使用條件判斷來解決。在遍歷過程中,使用一個變量記錄當(dāng)前連續(xù)相同身高的人數(shù),并使用另一個變量記錄最大的連續(xù)相同身高人數(shù)。利用條件判斷來判斷當(dāng)前身高是否與前一個身高相同,根據(jù)情況更新計數(shù)器變量。使用max()函數(shù)來比較并更新最大值。37.文學(xué)社團(tuán)組織一次英語實踐活動,每個參與活動的同學(xué)都分發(fā)到一個英文字符串,所有字符為小寫字母,活動任務(wù)是找出字符串中的最長回文子串。如果有多個相同長度的回文子串,輸出其中任意一個即可。例如:“aykkyu”中最長回文子串是“ykky”。“helloacmcbjbky”中最長回文子串有2個“cmc”“bjb”。輸入格式:共1行,1個字符串,長度不超過50。輸出格式:共1行,1個字符串,最長回文子串。輸入樣例:aykkyu輸出樣例:ykkys=input()n= flag=1for j in range(n,0, ):for i in range(0,n-j+1):x=s[i:i+j]y= if(x== ):print(x)flag=0breakif(flag==0):breakbreak【答案】len(s);-1;x[::-1];y【知識點】循環(huán)結(jié)構(gòu)程序設(shè)計與分析;常見的數(shù)據(jù)結(jié)構(gòu);Python常用內(nèi)置函數(shù)【解析】【解答】(1)這是為了獲取字符串的長度,用于后續(xù)循環(huán)的范圍。我們可以使用 len() 函數(shù)獲取字符串的長度。故答案為:len(s)。(2)這是為了控制子串的長度,我們從最長的子串開始查找,循環(huán)變量的值從n開始,每次遞減1,,到0為止。故答案為:-1。(3)該處y的值為反轉(zhuǎn)后的子串x,用于與原子串比較是否相等。故答案為:x[::-1]。(4)該處判斷原字符串和反轉(zhuǎn)后的字符串是否相等,從而確定是否是回文子串。故答案為:y。【分析】本題考查了字符串的基本操作和回文子串的查找。回文子串是指正序和倒序相同的字符串,可以通過遍歷所有可能的子串,并判斷是否是回文子串來解決問題。在這個問題中,我們通過不斷調(diào)整子串的長度和起始位置,逐個比較子串和反轉(zhuǎn)后的子串來確定最長回文子串。38.假設(shè)字典dic_city存放每個人想去旅游的城市,小明想去廈門、成都、大理。小李想去大理、廣州。小張想去三亞、大理、青島、上海。⑴統(tǒng)計每個人想去旅游的城市數(shù)目。⑵統(tǒng)計想去大理的人數(shù)以及名單。根據(jù)上述算法思想,補(bǔ)全下列代碼。dic_city={"小明":["廈門","成都","大理"],"小李":["大理","廣州"],"小張":["三亞","大理","青島","上海"]}for k,v in :print("{}想去{}個城市旅游". )name=[]for k,v in dic_city.items():if "大理" in :name. append(k)print("想去大理旅游的有{}人,他們是{}".format(len(name) ,"、". ))【答案】dic_city.items();format(k, len(v));dic_city.items();join(name)【知識點】分支結(jié)構(gòu)程序設(shè)計與分析;循環(huán)結(jié)構(gòu)程序設(shè)計與分析;常見的數(shù)據(jù)結(jié)構(gòu);Python常用內(nèi)置函數(shù)【解析】【解答】(1)使用items()方法遍歷字典dic_city的鍵值對,其中k代表每個人的姓名,v代表他們想去旅游的城市列表。故答案為:dic_city.items()。(2)通過len(v)可以獲取每個人想去旅游的城市數(shù)目,然后使用format()函數(shù)進(jìn)行格式化輸出。故答案為:format(k, len(v))。(3)通過遍歷字典dic_city的鍵值對,判斷每個人的旅游城市列表v中是否包含"大理"。如果包含,則將該人的姓名k添加到name列表中。故答案為:dic_city.items()。(4)最后使用len(name)獲取想去大理旅游的人數(shù),使用"、".join(name)將姓名列表轉(zhuǎn)換為逗號分隔的字符串。故答案為:join(name)。【分析】本題考查了字典的遍歷和列表的操作。通過遍歷字典的鍵值對可以獲取每個人的姓名和對應(yīng)的旅游城市列表。使用列表的append()方法可以將滿足條件的人的姓名添加到列表中,使用len()函數(shù)可以獲取列表的長度,使用"、".join()方法可以將列表中的元素用逗號連接成字符串。二一教育在線組卷平臺(zujuan.21cnjy.com)自動生成 1 / 1 展開更多...... 收起↑ 資源列表 2023年3月電子學(xué)會青少年軟件編程(Python)等級考試五級試題(學(xué)生版).docx 2023年3月電子學(xué)會青少年軟件編程(Python)等級考試五級試題(教師版).docx 縮略圖、資源來源于二一教育資源庫