摘要:面試題解析我們知道網(wǎng)上有非常多面試題的解析,但是其中往往是前幾年的老題了。為了幫助小伙伴們能夠在工作面試中脫穎而出,再此特別奉上年道最新面試大題及答題思路解析。類不是一等公民。隨機實數(shù)返回到之間的浮點數(shù)返回指定范圍內(nèi)的浮點數(shù)。
Python面試題解析
我們知道網(wǎng)上有非常多面試題的解析,但是其中往往是前幾年的老題了。 為了幫助小伙伴們能夠在Python工作面試中脫穎而出,再此特別奉上2019年11道最新Python面試大題及答題思路解析。
1、請用python編寫函數(shù)find_string,從文本中搜索并打印內(nèi)容,要求支持通配符星號和問號。
例子:
1. >>>find_string("hello world ","wor")? 2. ["wor"]? 3. >>>find_string("hello world ","l*d")? 4. ["ld"]? 5. >>>find_string("hello world ","o.")? 6. ["or"]?
解析:
1. def?find_string(str_in,pat):? 2. import?re? 3. return?re.findall(pat,str_in,re.I)???
2、看你T恤上印著:人生苦短,我用Python,你可否說說Python到底是什么樣的語言?你可以比較其他技術(shù)或者語言來回答你的問題。
解析:
這里是一些關(guān)鍵點:Python是解釋型語言。這意味著不像C和其他語言,Python運行前不需要編譯。其他解釋型語言包括PHP和Ruby。
1.Python是動態(tài)類型的,這意味著你不需要在聲明變量時指定類型。你可以先定義x=111,然后 x=”I’m a string”。
2.Python是面向?qū)ο笳Z言,所有允許定義類并且可以繼承和組合。Python沒有訪問訪問標(biāo)識如在C++中的public, private, 這就非常信任程序員的素質(zhì),相信每個程序員都是“成人”了~
3.在Python中,函數(shù)是一等公民。這就意味著它們可以被賦值,從其他函數(shù)返回值,并且傳遞函數(shù)對象。類不是一等公民。
4.寫Python代碼很快,但是跑起來會比編譯型語言慢。幸運的是,Python允許使用C擴展寫程序,所以瓶頸可以得到處理。Numpy庫就是一個很好例子,因為很多代碼不是Python直接寫的,所以運行很快。
5.Python使用場景很多 – web應(yīng)用開發(fā)、大數(shù)據(jù)應(yīng)用、數(shù)據(jù)科學(xué)、人工智能等等。它也經(jīng)常被看做“膠水”語言,使得不同語言間可以銜接上。
6.Python能夠簡化工作 ,使得程序員能夠關(guān)心如何重寫代碼而不是詳細看一遍底層實現(xiàn)。
3、請寫出一段Python代碼實現(xiàn)刪除一個list里面的重復(fù)元素。
解析:
1.使用set函數(shù),set(list)
2.使用字典函數(shù),
1. >>>a=[1,2,4,2,4,5,6,5,7,8,9,0]? 2. >>>?b={}? 3. >>>b=b.fromkeys(a)? 4. >>>c=list(b.keys())? 5. >>>?c?
4、a=[1,2,4,2,4,5,7,10,5,5,7,8,9,0,3],編程用 sort 進行排序,然后從最后一個元素開始判斷?
解析:
1. a.sort()? 2. last=a[-1]? 3. for?i?inrange(len(a)-2,-1,-1):? 4. if?last==a[i]:? 5. del?a[i]? 6. else:last=a[i]? 7. print(a)?
本題解析來源:@Tom_junsong
5、Python里面如何生成隨機數(shù)?
解析:
random模塊
隨機整數(shù):random.randint(a,b):返回隨機整數(shù)x,a<=x<=b
random.randrange(start,stop,[,step]):返回一個范圍在(start,stop,step)之間的隨機整數(shù),不包括結(jié)束值。
隨機實數(shù):random.random( ):返回0到1之間的浮點數(shù)
random.uniform(a,b):返回指定范圍內(nèi)的浮點數(shù)。
本題解析來源:@Tom_junsong
6、Python里面如何實現(xiàn)tuple和list的轉(zhuǎn)換?
解析:
直接使用tuple和list函數(shù)就行了,type()可以判斷對象的類型
7、什么是lambda函數(shù)?它有什么好處?
解析:
lambda 表達式,通常是在需要一個函數(shù),但是又不想費神去命名一個函數(shù)的場合下使用,也就是指匿名函數(shù)
lambda函數(shù):首要用途是指點短小的回調(diào)函數(shù)
1. lambda?[arguments]:expression? 2. >>>?a=lambdax,y:x+y? 3. >>>?a(3,11)??
8、- 輸入一個字符串 返回滿足以下條件的字符串
由字符串的最前面兩個字母和最后兩個字母組成的字符串。
例如: "spring" 返回 "spng", "is" 返回 "is’
當(dāng)輸入的字符串長度小于2時,返回空字符串
解析:
1. s=input("input:")? 2. l=len(s)? 3. if?l<2:? 4. print("")? 5. else?:? 6. if?l>3:? 7. s=s[:2]+s[-2:]? 8. print(s)??
9、把每個合數(shù)分解成幾個質(zhì)數(shù)相乘的形式,例如:100=225*5,并把代碼封裝成函數(shù)的形式
解析:
1. def?f(n):? 2. result?=?[]? 3. i?=?2? 4. str1?=?str(n)?+?"="? 5. while?n?>?1:? 6. if?n?%?i?==?0:? 7. n?/=?i? 8. result.append(str(i))? 9. i?-=?1? 10. i?+=?1? 11. str1?+=?"*".join(result)? 12. return?str1? 15. if?__name__?==?"__main__":? 16. for?i?in?range(100,?120):? 17. print(f(i))?
對n進行分解質(zhì)因數(shù),應(yīng)先找到一個最小的質(zhì)數(shù)k,然后按下述步驟完成:
(1)如果這個質(zhì)數(shù)恰等于n,則說明分解質(zhì)因數(shù)的過程已經(jīng)結(jié)束,打印出即可。
(2)如果n<>k,但n能被k整除,則應(yīng)打印出k的值,并用n除以k的商,作為新的正整數(shù)你n,重復(fù)執(zhí)行第一步。
(3)如果n不能被k整除,則用k+1作為k的值,重復(fù)執(zhí)行第一步。
10、請用Python手寫實現(xiàn)冒泡排序
解析:
冒泡排序的原理不難,假定要將被排序的數(shù)組R[1..n]從大到小垂直排列,每個數(shù)字R可以看作是重量為R.key的氣泡。
根據(jù)輕氣泡在上、重氣泡在上的原則,從下往上掃描數(shù)組R:凡掃描到違反本原則的輕氣泡,則使其向上"飄浮"。如此反復(fù)進行,直到最后任何兩個氣泡都是輕者在上、重者在下為止。
然后將所有氣泡逆序,就實現(xiàn)了數(shù)組從小到大的排序。
步驟:
1 比較相鄰的元素。如果第一個比第二個大,就交換他們兩個。
2 對第0個到第n-1個數(shù)據(jù)做同樣的工作。這時,最大的數(shù)就到了數(shù)組最后的位置上。
3 針對所有的元素重復(fù)以上的步驟,除了最后一個。
4 持續(xù)每次對越來越少的元素重復(fù)上面的步驟,直到?jīng)]有任何一對數(shù)字需要比較。
Python實現(xiàn)
1. def?bubble_sort(arry):? 2. #獲得數(shù)組的長度? 3. n?=?len(arry)???????????????????? 4. for?i?in?range(n):? 5. for?j?in?range(1,n-i):? 6. #如果前者比后者大? 7. if??arry[j-1]?>?arry[j]?:??? 8. #則交換兩者?????? 9. arry[j-1],arry[j]?=?arry[j],arry[j-1]??????? 10. return?arry??
11、- 判斷是否為回文
提示:回文:62426是回文數(shù)字
解析:
1. s=input("pls?input?a?string?of?numbes:")? 2. s_=s[::-1]? 3. answer="isn"t"? 4. if?s_==s:? 5. answer="is"? 6. print(s,answer,"Palindrome?number")?
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/43919.html
摘要:作為面試官,我是如何甄別應(yīng)聘者的包裝程度語言和等其他語言的對比分析和主從復(fù)制的原理詳解和持久化的原理是什么面試中經(jīng)常被問到的持久化與恢復(fù)實現(xiàn)故障恢復(fù)自動化詳解哨兵技術(shù)查漏補缺最易錯過的技術(shù)要點大掃盲意外宕機不難解決,但你真的懂?dāng)?shù)據(jù)恢復(fù)嗎每秒 作為面試官,我是如何甄別應(yīng)聘者的包裝程度Go語言和Java、python等其他語言的對比分析 Redis和MySQL Redis:主從復(fù)制的原理詳...
摘要:作為面試官,我是如何甄別應(yīng)聘者的包裝程度語言和等其他語言的對比分析和主從復(fù)制的原理詳解和持久化的原理是什么面試中經(jīng)常被問到的持久化與恢復(fù)實現(xiàn)故障恢復(fù)自動化詳解哨兵技術(shù)查漏補缺最易錯過的技術(shù)要點大掃盲意外宕機不難解決,但你真的懂?dāng)?shù)據(jù)恢復(fù)嗎每秒 作為面試官,我是如何甄別應(yīng)聘者的包裝程度Go語言和Java、python等其他語言的對比分析 Redis和MySQL Redis:主從復(fù)制的原理詳...
摘要:到十二月份,公司開始第二波裁員,我決定主動拿賠償走人。加一個小插曲上面的題是餓了嗎面試問到的。想去的公司沒有面試好,不要氣餒,繼續(xù)加油準(zhǔn)備。避免打擊自信心。 回顧一下自己這段時間的經(jīng)歷,九月份的時候,公司通知了裁員,我匆匆忙忙地出去面了幾家,但最終都沒有拿到offer,我感覺今年的寒冬有點冷。到十二月份,公司開始第二波裁員,我決定主動拿賠償走人。后續(xù)的面試過程我做了一些準(zhǔn)備,基本都能走...
閱讀 1996·2021-11-19 09:40
閱讀 1951·2021-09-28 09:36
閱讀 2287·2021-09-22 10:02
閱讀 2730·2019-08-30 14:00
閱讀 1954·2019-08-29 15:31
閱讀 2902·2019-08-29 15:11
閱讀 2911·2019-08-29 13:04
閱讀 1084·2019-08-27 10:55