聊一聊Python的变量类型判断type和isinstance
生活随笔
收集整理的這篇文章主要介紹了
聊一聊Python的变量类型判断type和isinstance
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
- 正常情況下不應該編寫代碼檢查類型的,而應該直接假設被操作的instance具有你希望的屬性,否則拋出異常。
????即使需要檢查類型,也應該用isinstance來判斷,這樣你期望類型的subclass也能正常被處理(比如,一個函數需要處理Message類型,那么它應該也能處理Message的子類型MyMessage,所以應該使用isinstance(arg,Message)這樣來判斷而不是type(arg) == Message來判斷)
- type和isinstance的區別(Python3.6環境)
1、type可以只接收一個參數,打印其未知的所屬的類型;而isinstance只能判斷是否屬于某個已知類型,所以,isinstance效率更高一些
2、isinstance可以判斷子類對象是否繼承于父類;而type不可以,type只能把類對象識別為instance實例類型,即老式類都是通過instance創建的
當我們對Python內建類型進行擴展的時候,type返回的結果就不夠準確了。
總結
以上是生活随笔為你收集整理的聊一聊Python的变量类型判断type和isinstance的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何从 0 到 1,搭建一个完整的 Ku
- 下一篇: 爱奇艺数据中台建设组合拳:日志投递、统一