下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第頁大數(shù)據(jù)-編程練習(xí)試題簡(jiǎn)答題1.本題中我們會(huì)提供兩個(gè)字符串str_1和str_2,我們已經(jīng)在solution.py中幫你聲明好了replace_string函數(shù),該函數(shù)的初始str_1和str_2代表初始字符串,你需要:1.將str_1中的所有*替換成career;2.將str_2中的第一個(gè)*替換成career。Python的re模塊提供了re.sub方法用于替換字符串中的匹配項(xiàng)。語法為:re.sub(pattern,repl,string,count=0,flags=0)其中的參數(shù)pattern代表正則中的模式字符串,repl表示替換的字符串,也可為一個(gè)函數(shù),string表示要被查找替換的原始字符串,count表示模式匹配后替換的最大次數(shù),默認(rèn)為0,表示替換所有的匹配,參數(shù)flags表示編譯時(shí)用的匹配模式,數(shù)字形式。其中前三個(gè)為必選參數(shù),后兩個(gè)為可選參數(shù)。importrestr_1='his*isteacherandher*isdoctor,my*isbasketballplayer'str_2='Nomatterwhat*youdointhefuture,youmustberesponsibleforyour*'defreplace_string(str_1,str_2):#--writeyourcodehere--【正確答案】:importrestr_1='his*isteacherandher*isdoctor,my*isbasketballplayer'str_2='Nomatterwhat*youdointhefuture,youmustberesponsibleforyour*'defreplace_string(str_1,str_2):print(re.sub('\*','career',str_1))print(re.sub('\*','career',str_2,1))replace_string(str_1,str_2)2.給定一個(gè)列表list_1,里面嵌套了多個(gè)列表,請(qǐng)你計(jì)算出每個(gè)嵌套列表的最大值,并輸出所有最大值的平均值。list_1=[[54,28,88,99,77],[99,6,37,68,83],[90,52,36,4,53],[85,66,11,11,61],[20,52,9,81,61],[23,67,37,39,18],[21,36,66,80,30],[74,80,5,7,96],[30,35,71,73,4],[40,67,67,11,71]]#writeyourcodehere【正確答案】:list_1=[[54,28,88,99,77],[99,6,37,68,83],[90,52,36,4,53],[85,66,11,11,61],[20,52,9,81,61],[23,67,37,39,18],[21,36,66,80,30],[74,80,5,7,96],[30,35,71,73,4],[40,67,67,11,71]]#Pleaseyourcodehereans=0fornuminlist_1:ans+=max(num)print(f'{ans/len(list_1):0.2f}')3.使用python實(shí)現(xiàn)斐波那契數(shù)列斐波那契數(shù)列(Fibonaccisequence),又稱黃金分割數(shù)列,指的是這樣一個(gè)數(shù)列:0.1.1.2.3.5.8.13.21.34.……請(qǐng)使用遞歸的方式實(shí)現(xiàn),,參考如下:F0=0(n=0)F1=1(n=1)Fn=F[n-1]+F[n-2](n=>2)【正確答案】:deffib(n):a,b=1,1foriinrange(n-1):a,b=b,a+breturna4.本題有一個(gè)字符串date_time。請(qǐng)實(shí)現(xiàn)一下邏輯:從標(biāo)準(zhǔn)輸入流(控制臺(tái))獲取輸入的字符串date_time,從字符串中提取出日期的月份,并將其加一來替換原來字符串的月份,然后將新的字符串打印。data_time為YYYYMMDD格式的日期字符串,例如20181113【正確答案】:#readdatafromconsoledate_time=str(input())#Pleasewriteyourcodeheremonth=date_time[4:6]month=int(month)+1print(date_time[:4]+str(month)+date_time[6:])5.本題中我們會(huì)提供兩個(gè)列表list_1和list_2,我們已經(jīng)在list.py中幫你聲明好了sorting_connection函數(shù),該函數(shù)的list_1和list_2代表初始列表,你需要將list_2和list_1合并,將其進(jìn)行排序并返回。list_1=[5,6,9,8]list_2=[1,0,7,6]defsorting_connection(list_1,list_2):#--writeyourcodehere--【正確答案】:list_1=[5,6,9,8]list_2=[1,0,7,6]defsorting_connection(list_1,list_2):foriinlist_2:list_1.append(i)a=sorted(list_1)returnasorting_connection(list_1,list_2)6.給定一個(gè)列表list_1,和另外一個(gè)列表list_2,list_1嵌套在list_2中,我們將分別使用淺拷貝,深拷貝list_2列表,生成淺拷貝列表list_3和深拷貝列表list_4,請(qǐng)你依次打印出五個(gè)布爾值:1.列表list_1和列表list_2中嵌套的列表是否是同一個(gè)對(duì)象。2.列表list_1和列表list_3中嵌套的列表是否是同一個(gè)對(duì)象。3.列表list_1和列表list_4中嵌套的列表是否是同一個(gè)對(duì)象。4.列表list_2中嵌套的列表和列表list_3中嵌套的列表是否是同一個(gè)對(duì)象。5.列表list_2中嵌套的列表和列表list_4中嵌套的列表是否是同一個(gè)對(duì)象。importcopylist_1=[1,2,3]list_2=[list_1]#writeyourcodehere【正確答案】:importcopylist_1=[1,2,3]list_2=[list_1]list_3=copy.copy(list_2)list_4=copy.deepcopy(list_2)print(list_1islist_2[0])print(list_1islist_3[0])print(list_1islist_4[0])print(list_2[0]islist_3[0])print(list_2[0]islist_4[0])7.給定一個(gè)包含紅色、白色和藍(lán)色、共n個(gè)元素的數(shù)組nums,原地對(duì)它們進(jìn)行排序,使得相同顏色的元素相鄰,并按照紅色、白色、藍(lán)色順序排列。我們使用整數(shù)0、1和2分別表示紅色、白色和藍(lán)色。必須在不使用庫的sort函數(shù)的情況下解決這個(gè)問題?!菊_答案】:defsortColors(self,nums:List[int])->None:n=len(nums)ptr=0foriinrange(n):ifnums[i]==0:nums[i],nums[ptr]=nums[ptr],nums[i]ptr+=1foriinrange(ptr,n):ifnums[i]==1:nums[i],nums[ptr]=nums[ptr],nums[i]ptr+=18.店鋪周年慶,給定一個(gè)所有商品列表,商品名以j、z、d、f和h開頭的將會(huì)打折扣,請(qǐng)你統(tǒng)計(jì)一下打折扣的商品,并以列表的方式打印到控制臺(tái)。list_1為商品列表list_1=['jiu','zhangyu','luosifen']#writeyourcodehere【正確答案】:list_1=['jiu','zhangyu','luosifen']discount=[]foriinlist_1:ifi[0]in('j','z','d','f','h'):discount.append(i)print(discount)9.請(qǐng)實(shí)現(xiàn)get_sum函數(shù)功能。get_sum函數(shù)接收一個(gè)數(shù)組參數(shù)nums。請(qǐng)用lambda函數(shù)為get_sum函數(shù)傳入兩個(gè)未知數(shù)x和y,并將這個(gè)lambda函數(shù)作為get_sum函數(shù)的返回值,對(duì)于get_sum接收的參數(shù)nums,如果數(shù)組nums的長度為偶數(shù),則返回x倍的nums元素總和,如果數(shù)組nums的長度為奇數(shù),則返回-y倍的nums元素總和。nums=[1,2,3,4]x=2y=3defget_sum(nums):#writeyourcodehere.【正確答案】:nums=[1,2,3,4]x=2y=3defget_sum(nums):#Writeyourcodehere.n=sum(nums)returnlambdax,y:n*xiflen(nums)%2==0else-y*nget_sum(nums)(x,y)10.請(qǐng)完善代碼,實(shí)現(xiàn)change_str函數(shù)功能,change_str函數(shù)有三個(gè)參數(shù)分別為字符串txt、整數(shù)k和字符串s,將字符串txt的第k個(gè)字符修改成字符串s并返回修改后的字符串。txt='Mr.Green'k=2s='ab'defchange_str(txt,k,s):#writeyourcodehere【正確答案】:txt='Mr.Green'k=2s='ab'defchange_str(txt,k,s):returntxt[:k]+s+txt[k+1:]change_str(txt,k,s)11.商店里新推出了一種商品,普通顧客需要按照原價(jià)購買,而會(huì)員可以享受七折優(yōu)惠。如果是在黑名單上的顧客,那么商店將不會(huì)出售商品給他?,F(xiàn)有一個(gè)會(huì)員列表,和一個(gè)黑名單。此時(shí)來了一名顧客,請(qǐng)你打印出這名顧客最終需要付款的價(jià)格。如果是在黑名單上的顧客,你需要打印-1。price=100customer='Jack'vip=['coco','wowo','mick','Jack']blacklist=['Telang','pupu']【正確答案】:#GetVariablesprice=100customer='Jack'vip=['coco','wowo','mick','Jack']blacklist=['Telang','pupu']#pleasewriteyourcodehereifcustomerinvip:print(f'{price*0.7:.2f}')elifcustomerinblacklist:print(-1)else:print(price)12.輸入兩棵二叉樹A和B,判斷B是不是A的子結(jié)構(gòu)(約定空樹不是任意一個(gè)樹的子結(jié)構(gòu))【正確答案】:defisSubStructure(A,B):ifnotBornotA:returnFalsedefdfs(a,b):ifnotb:returnTrueifnota:returnFalseifa.val==b.val:returndfs(a.left,b.left)anddfs(a.right,b.right)else:returnFalsereturnisSubStructure(A.left,B)orisSubStructure(A.right,B)ordfs(A,B)13.給定一個(gè)包含電話號(hào)碼列表(一行一個(gè)電話號(hào)碼)的文本文件file.txt,寫一個(gè)單行bash腳本輸出所有有效的電話號(hào)碼?!菊_答案】:grep-P'^((\(\d{3}\))|(\d{3}-))\d{3}-\d{4}$'file.txt14.一個(gè)n*m的二維數(shù)組,每一行從左到右遞增,每一列從上到下遞增。輸入一個(gè)整數(shù),判斷該數(shù)組中是否含有該整數(shù)?!菊_答案】:deffindNumberIn2DArray(matrix,target):iflen(matrix)<1:returnFalsen,m=len(matrix),len(matrix[0])i,j=n-1,0whilei>=0andj<=m-1:ifmatrix[i][j]==target:returnTrueelifmatrix[i][j]>target:i-=1else:#matrix[i][j]<target:j+=1returnFalse15.給你一個(gè)整數(shù)集合my_set={2,100,-20,-9,-10},輸出集合中絕對(duì)值小于10的元素之和。【正確答案】:my_set={2,100,-20,-9,-10}sum=0foriinmy_set:ifabs(i)<10:sum+=iprint(sum)16.給定一個(gè)直角三角形的斜邊c和它其中的一條直角邊a,請(qǐng)你打印出它的另外一條直角邊(結(jié)果只保留整數(shù)位)。【正確答案】:importmath#Geta,ca=3c=5#Pleasewriteyourcodehereprint(int(math.sqrt(c**2-a**2)))17.給定列表arr=[6,7,8,9],返回元素值是元素下標(biāo)的倍數(shù)的元素個(gè)數(shù)。列表的下標(biāo)從0開始。例輸入[4,5,6,7]輸出2,解釋:5是1的倍數(shù),6是2的倍數(shù)?!菊_答案】:arr=[6,7,8,9]count=0ifarr[0]==0:count+=1foriinrange(1,len(arr)):ifarr[i]==0:count+=1elifarr[i]%i==0:count+=1print(count)18.最長回文子串給出一個(gè)字符串(假設(shè)長度最長為1000),求出它的最長回文子串,你可以假定只有一個(gè)滿足條件的最長回文串。樣例1:輸入:"abcdzdcab"輸出:"cdzdc"樣例2:輸入:"aba"輸出:"aba"【正確答案】:deflongestPalindrome(s):ifnots:return""answer=(0,0)formidinrange(len(s)):answer=max(answer,get_palindrom_from(s,mid,mid))answer=max(answer,get_palindrom_from(s,mid,mid+1))returns[answer[1]:answer[0]+answer[1]]defget_palindrom_from(s,left,right):whileleft>=0andright<len(s)ands[left]==s[right]:left-=1right+=1return(right-left-1,left+1)19.現(xiàn)在我們有一張表teachers,要求基于te
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024版建筑工程材料采購合同標(biāo)準(zhǔn)
- 浙江商業(yè)職業(yè)技術(shù)學(xué)院《高等數(shù)學(xué)Ⅱ(1)》2023-2024學(xué)年第一學(xué)期期末試卷
- 唐山海運(yùn)職業(yè)學(xué)院《數(shù)值計(jì)算基礎(chǔ)實(shí)驗(yàn)》2023-2024學(xué)年第一學(xué)期期末試卷
- 2025年度智能門禁系統(tǒng)行業(yè)標(biāo)準(zhǔn)制定與實(shí)施合同3篇
- 二零二五年度白灰行業(yè)風(fēng)險(xiǎn)管理合作協(xié)議2篇
- 二零二五年度教育機(jī)構(gòu)代理商合作協(xié)議3篇
- 鄭州電力職業(yè)技術(shù)學(xué)院《初等代數(shù)》2023-2024學(xué)年第一學(xué)期期末試卷
- 二零二五年度學(xué)校教育設(shè)施精裝修外包協(xié)議3篇
- 二零二五年度智能家電家具個(gè)人租賃服務(wù)合同6篇
- 二零二五年度環(huán)保設(shè)備銷售與安裝合同13篇
- 數(shù)字信號(hào)處理(課件)
- 出院小結(jié)模板
- HITACHI (日立)存儲(chǔ)操作說明書
- 公路自然災(zāi)害防治對(duì)策課件
- (新版教材)蘇教版二年級(jí)下冊(cè)科學(xué)全冊(cè)教案(教學(xué)設(shè)計(jì))
- 61850基礎(chǔ)技術(shù)介紹0001
- 電鏡基本知識(shí)培訓(xùn)
- 耳鳴中醫(yī)臨床路徑
- 圍堰高噴防滲墻工程監(jiān)理實(shí)施細(xì)則
- (精心整理)系動(dòng)詞練習(xí)題
- 婚戀觀教育--保持軍人本色樹立正確婚戀觀
評(píng)論
0/150
提交評(píng)論