【Python刷题】_3
11、簡述面向對象中__new__和__init__區別
__init__是初始化方法,創建對象后,就立刻被默認調用了,可接收參數, 如下圖
1、__new__至少要有一個參數cls,代表當前類,此參數在實例化時由Python解釋器自動識別
2、__new__必須要有返回值,返回實例化出來的實例,這點在自己實現__new__時要特別注意,可以return父類(通過super(當前類名, cls))__new__出來的實例,或者直接是object的__new__出來的實例
3、__init__有一個參數self,就是這個__new__返回的實例,__init__在__new__的基礎上可以完成一些其它初始化的動作,__init__不需要返回值
4、如果__new__創建的是當前類的實例,會自動調用__init__函數,通過return語句里面
調用的__new__函數的第一個參數是cls來保證是當前類實例,如果是其他類的類名,;那
么實際創建返回的就是其他類的實例,其實就不會調用當前類的__init__函數,也不會調用
其他類的__init__函數。
12、簡述with方法打開處理文件幫我我們做了什么?
????????打開文件在進行讀寫的時候可能會出現一些異常狀況,如果按照常規的f.open寫法,我們需要
try,except,finally,做異常判斷,并且文件最終不管遇到什么情況,都要執行finally f.close()關閉文
件,with方法幫我們實現了finally中f.close。
13、列表[1,2,3,4,5],請使用map()函數輸出[1,4,9,16,25],并使用列表推導式提取出大于10的數,
最終輸出[16,25]
思路:map()函數第一個參數是fun,第二個參數一般是list,第三個參數可以寫list,也可以不寫
14、python中生成隨機整數、隨機小數、0--1之間小數方法
????????隨機整數:random.randint(a,b),生成區間內的整數
????????隨機小數:習慣用numpy庫,利用np.random.randn(5)生成5個隨機小數
????????0-1隨機小數:random.random(),括號中不傳參
????????編程演示如下:
15、避免轉義給字符串加哪個字母表示原始字符串?
????????r , 表示需要原始字符串,不轉義特殊字符
總結
以上是生活随笔為你收集整理的【Python刷题】_3的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Original error was:
- 下一篇: 【云计算】4_CDN加速产品介绍