欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

分享幾道你可能遇到的python面試題

 更新時(shí)間:2017年07月24日 08:35:12   作者:Hi!Roy!  
最近去筆試,在面試過程中遇到了幾個(gè)編程題,比較基礎(chǔ)。所以想著總結(jié)一下,所以下面這篇文章主要給大家分享了幾道你可能遇到的python面試題,文中給出了詳細(xì)的示例代碼供大家參考學(xué)習(xí),需要的朋友們下面來一起看看吧。

本文主要給大家介紹的是關(guān)于最近在面試中遇到的幾個(gè)python面試題,分享出來供大家參考學(xué)習(xí),下面話不多說,來一起看看詳細(xì)的介紹:

一、生成斐波那契數(shù)列并取前10項(xiàng)

def func(m):
 n,a,b = 0,1,1
 while n < m:
 yield a
 a,b = b,a+b
 n += 1
for one in func(10):
 print one

這個(gè)可以說是一道常見的簡單算法題了,關(guān)鍵點(diǎn)就是理解a,b=b,a+b以及yield的作用。

二、擴(kuò)展一個(gè)列表,列表中的元素可能也包含列表

def myextend(alist):
 tmp = []
 for one in alist:
  if isinstance(one,list):
   tmp.extend(myextend(one))
  else:
   tmp.append(one)
 return tmp
t = [1,2,5,[3,[],5,2,[57]],90]
print t
print myextend(t)

考察遞歸調(diào)用的思想。

三、有如下代碼,請寫出輸出

def test(x,l=[]):
 for o in range(x):
  l.append(o)
 print l
test(3)
test(1,[3,2,1])
test(3)

輸入如下:

[0,1,2]
[3,2,1,0]
[0,1,2,0,1,2]

可變類型作為參數(shù)在不顯示傳遞參數(shù)時(shí),每次函數(shù)調(diào)用時(shí)候都是共用的;如果傳遞了參數(shù)(比如第二種)則不會(huì)互相影響。

四、已知某列表中包含重復(fù)數(shù)據(jù),保持列表中元素第一次出現(xiàn)的順序并去重,要求復(fù)雜度為O(n)。

def fun(alist):
 result = []
 temp = set()
 for o in alist:
  if o not in temp:
   result.append(o)
   temp.add(o)
 return result

考察列表、集合等常見操作的復(fù)雜度。

五、已知如下函數(shù),請寫出輸出,并寫出正確寫法:

z = [lambda x:x*i for i in range(3)]
x = [o(2) for o in z]
print x

輸出為[4,4,4]

這里主要考察python中閉包、返回值為函數(shù)時(shí)候的知識(shí)點(diǎn)。由于lambda函數(shù)共用了i變量,當(dāng)調(diào)用時(shí)候i已經(jīng)變成了2,所以輸出都是4。

改正:

def func():
 def m(x):
  def n(y):
   return x * y
  return n
 return [f(one) for one in range(3)]
z = func()
x = [o(2) for o in z]
print x

輸出[0,2,4]

六、創(chuàng)建一個(gè)類,并輸出某個(gè)屬性。如果這個(gè)屬性存在則輸出值,否則輸出這個(gè)屬性名的字符串

class Mycls(object):
 a = 0
 def __getattr__(self,name):
  print name
z = Mycls()
print z.a,z.b

輸出為0,b。

主要考察python的反射機(jī)制,以及類相關(guān)的__getattr__方法。

注意: __getattr__方法和__getattribute__方法的區(qū)別,前者只有在屬性不存在時(shí)候調(diào)用,返回一個(gè)值或者引發(fā)異常。而后者是每次都會(huì)被調(diào)用的。

另外可以看看getattr() ,hasattr()這種內(nèi)置函數(shù)。

簡答題

  • 簡述py2和py3的區(qū)別
  • python的垃圾回收機(jī)制
  • python中多線程的方法,局限,以及有什么其他方式進(jìn)行并發(fā)處理
  • 簡述epoll、select、poll三種模型

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對(duì)腳本之家的支持。

相關(guān)文章

最新評(píng)論