你知道嗎?實際上Python早在20世紀90年代初就已經(jīng)誕生,可是火爆時間卻并不長,就小編本人來說,也是前幾年才了解到它。據(jù)統(tǒng)計,目前Python開發(fā)人員的薪資待遇為10K以上,這樣的誘惑很難讓人拒絕,所以這幾年使得許多人紛紛學習Python。
Python 是一種解釋型腳本語言,注重可讀性和效率的語言,尤其是相較于 Java,PHP 以及 C++ 這樣的語言,它的這兩個優(yōu)勢讓其在開發(fā)者中大受歡迎,同時在運維領域也被大量運用到自動化運維場景中。如今使用到Python的領域非常廣泛,主要有人工智能、圖形處理、數(shù)據(jù)庫編程、網(wǎng)絡編程、Web編程、多媒體應用等等。話說現(xiàn)在為什么那么多公司在招聘Python開發(fā)者呢?其主要原因是Python的各種優(yōu)勢領各大企業(yè)公司開始使用Python開發(fā),這就造成了Python開發(fā)人才的緊缺,相應的Python開發(fā)人員的薪資待遇也在增高。下面就來給大家分享一波相關的面試題:
NO.1Python內建數(shù)據(jù)類型有哪些?
整型--int 布爾型--bool
字符串--str 列表--list
元組--tuple 字典--dict
NO.2Python2和Python3的range(100)的區(qū)別是什么?
python2返回列表,python3返回迭代器,節(jié)約內存
NO.3簡述面向對象中__new__和__init__的區(qū)別?
__init__是初始化方法,創(chuàng)建對象后,就立刻被默認調用了,可接收參數(shù)
1、__new__至少要有一個參數(shù)cls,代表當前類,此參數(shù)在實例化時由Python解釋器自動識別
2、__new__必須要有返回值,返回實例化出來的實例,這點在自己實現(xiàn)__new__時要特別注意,可以return父類(通過super(當前類名, cls))__new__出來的實例,或者直接是object的__new__出來的實例
3、__init__有一個參數(shù)self,就是這個__new__返回的實例,__init__在__new__的基礎上可以完成一些其它初始化的動作,__init__不需要返回值
4、如果__new__創(chuàng)建的是當前類的實例,會自動調用__init__函數(shù),通過return語句里面調用的__new__函數(shù)的第一個參數(shù)是cls來保證是當前類實例,如果是其他類的類名,;那么實際創(chuàng)建返回的就是其他類的實例,其實就不會調用當前類的__init__函數(shù),也不會調用其他類的__init__函數(shù)。
NO.4請說出python中生成隨機整數(shù)、隨機小數(shù)、0--1之間小數(shù)的方法?
隨機整數(shù):random.randint(a,b),生成區(qū)間內的整數(shù)
隨機小數(shù):習慣用numpy庫,利用np.random.randn(5)生成5個隨機小數(shù)
0-1隨機小數(shù):random.random(),括號中不傳參
NO.5避免轉義給字符串加哪個字母表示原始字符串?
r , 表示需要原始字符串,不轉義特殊字符
python中斷言方法舉例
assert()方法,斷言成功,則程序繼續(xù)執(zhí)行,斷言失敗,則程序報錯
NO.6一句話解釋什么樣的語言能夠用裝飾器?
函數(shù)可以作為參數(shù)傳遞的語言,可以使用裝飾器
NO.7簡要說明with方法打開處理文件幫我們做了什么?
打開文件在進行讀寫的時候可能會出現(xiàn)一些異常狀況,如果按照常規(guī)的f.open
寫法,我們需要try,except,finally,做異常判斷,并且文件最終不管遇到什么情況,都要執(zhí)行finally f.close()關閉文件,with方法幫我們實現(xiàn)了finally中f.close