牛年第一篇---python相關,含面試題
阿新 • • 發佈:2021-02-19
技術標籤:python
2020年動盪的一年,我,也出去面試過很多,也曾被有些企業傷得很深。軟體測試工程師,出去會問些什麼問題?
第一次去的時候,沒有任何的準備,抱著積攢經驗的想法,果不其然,被大虐。
雖然面試官脾氣很好,但是問題深深的刻在了我的腦海裡。
這邊就分享一道題目,遞迴函式。
敲黑板,寫出來。
現在的我,真的小case,但是當時的我確實只知道演算法,怎麼規範的寫出來,真的是太為難我了。本想著憑藉我的三寸不爛之舌,告訴他我都懂,實際運用的時候,肯定會。但是對方一定要看我的代買修養,顯而易見,這邊的結果,肯定是我輸了,心福口服的輸了
那這邊先給在學習python的你分享一個簡單的遞迴函式:
def f(n):
if n==1:
return 1
else:
return n*f(n-1)
print (f(5))
輸出結果:
現在回頭是真的簡單,但是沒有準備的時候是真的難。
**斐波那契也是遞迴函式,**那小夥伴們,如果面試官讓你寫出相關演算法,你知道嘛?
這邊也給大家分享一個
def fibs(n): result=[0,1] for i in range(n-2):#想要多少個,就減去之前的2個 result.append(result[-2]+result[-1]) return result print (fibs(11))
是不是很簡單?一定要學會掌握基礎哦。
現在是一些簡單函式變數,但是在我們學習過程中,時刻都能運用到。
#區域性變數
def func(x):
print ('x is',x)
x=2
print ('Changed local x to',x)
x=50
func(x)
print ('x is still',x)
#全域性變數 global 語句被用來生命x 是全域性,因此在執行完func函式後,x的值已經發生了改變,並且作用於整個程式,因此最後的輸入結果為2
def funcx():
global y
print ('x is',y)
y= 2
print ('Changed local x to',y)
y=50
funcx()
print ('Value of x is ',y)
#預設引數
def say(message,times=1):
print (message*times)
say('hello')
say('world',5)
#關鍵引數
def func(a,b=5,c=10):
print ( 'a is',a, 'and b is',b,'and c is',c)
func(3,7)
func(24,c=32)
func(c=23,a=14)
開工第一天,大家一起加油,今天分享的就這麼多,希望大家2021,都能找到好工作,實現美好的願望!