阿里python面试题和答案_阿里的python大牛总结10条Python面试题陷阱,中招了吗?...
每年的3-4月份是跳槽的高峰期,無論是應聘Python web開發,爬蟲工程師,或是數據分析,還是自動化運維,都涉及到一些基礎的知識!我挑了一些Python的基礎面試題,看看你能不能的答上來,也許面試的同學用的著!
問題1:請問如何修改以下Python代碼,使得下面的代碼調用類A的show方法?
答:這道題的考點是類繼承,只要通過__class__ 方法指定類對象就可以了。補充的代碼如下:
問題2:請問如何修改以下Python代碼,使得代碼能夠運行?
答:此題考察得是方法對象,為了能讓對象實例能被直接調用,需要實現 __call__ 方法,補充代碼如下:
問題3:下面這段代碼的輸出是什么?
答:
此題考察的是new和init的用法,使用 __new__ 方法,可以決定返回那個對象,也就是創建對象之前調用的,這個常見于于設計模式的單例、工廠模式。__init__ 是創建對象是調用的。
問題4:下面這段代碼輸出什么?
答:
此題考察的是列表和字典的生成。
問題5:下面這段代碼輸出什么?
答:
此題考察全局變量和局部變量。num 不是個全局變量,所以每個函數都得到了自己的 num 拷貝,如果你想修改 num ,則必須用 global 關鍵字聲明。比如下面這樣
問題6:如何使用一行代碼交換兩個變量值?
答:
問題7:如何添加代碼,使得沒有定義的方法都調用mydefault方法?
答:
此題的考的是Python的默認方法, 只有當沒有定義的方法調用時,才會調用方法 __getattr__。當 fn1 方法傳入參數時,我們可以給 mydefault 方法增加一個 *args 不定參數來兼容。
問題8:一個包里有三個模塊,mod1.py , mod2.py , mod3.py ,但使用 from demopack import * 導入模塊時,如何保證只有 mod1 、 mod3 被導入了。
答:在包中增加 __init__.py 文件,并在文件中增加:
問題9:寫一個函數,接收整數參數 n ,返回一個函數,函數返回n和參數的積。
答:
問題10:請問下面的代碼有什么隱患?(Python2中)
答:由于變量str是個不可變對象,每次迭代,python都會生成新的str對象來存儲新的字符串,num越大,創建的str對象越多,內存消耗越大。
最后還是要推薦下小編的Python學習群: 735934841,不管你是小白還是大牛,小編我都歡迎,不定期分享干貨,包括小編自己整理的一份2018最新的Python和0基礎入門教程,歡迎初學和進階中的小伙伴。
每天晚上20:00都會開直播給大家分享Python知識和路線方法,群里會不定期更新最新的教程和學習方法(進群送2018Python學習教程),大家都是學習Python的,或是轉行,或是大學生,還有工作中想提升自己能力的Python黨,如果你是正在學習Python的小伙伴可以加入學習。最后祝所有程序員都能夠走上人生巔峰,讓代碼將夢想照進現實,非常適合新手學習,有不懂的問題可以隨時問我,工作不忙的時候希望可以給大家解惑。
總結
以上是生活随笔為你收集整理的阿里python面试题和答案_阿里的python大牛总结10条Python面试题陷阱,中招了吗?...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: blob照片显示 oracle_保存图片
- 下一篇: 144显示器只有60_HKC IG27电