一. new和init
下面這段代碼輸入什麼?
答案:
使用new方法,可以決定返回那個對象,也就是創建對象之前,這個可以用於設計模式的單例、工廠模式。init是創建對象是調用的。
二. Python list和dict生成
下面這段代碼輸出什麼?
答案:
三. 全局和局部變量
下面這段代碼輸出什麼?
答案:
9
9
num不是個全局變量,所以每個函數都得到了自己的num拷貝,如果你想修改num,則必須用global關鍵字聲明。比如下面這樣:
四. 包管理
一個包裏有三個模塊,mod1.py, mod2.py, mod3.py,但使用from demopack import *導入模塊時,如何保證只有mod1、mod3被導入了。
答案:增加init.py文件,並在文件中增加:
all = ['mod1','mod3']
閉包
寫一個函數,接收整數參數n,返回一個函數,函數的功能是把函數的參數和n相乘並把結果返回。
答案:
五. 類繼承
有如下的一段代碼:
如何調用類A的show方法了。
方法如下:
obj.class = A
obj.show()
class方法指向了類對象,只用給他賦值類型A,然後調用方法show,但是用完了記得修改回來。
以上就是本文的全部內容,你們覺得這面試題目難不難呢?
python程序員交流羣:877562786(羣裏含大量學習資料,面試寶典等)