對於剛接觸到python這門程式語言的朋友來說,剛開始學習python時候,對於python中如何獲取物件屬性了解不多,在這篇文章之中我們就來講解一下關於python取得物件屬性這方面的知識吧。
當我們拿到一個物件的參考時,如何知道這個物件是什麼型別、有哪些方法呢?
使用type()
首先,我們來判斷物件類型,使用type()函數:
基本型別都可以用type()判斷:
>>> type(123) <class 'int'> >>> type('str') <class 'str'> >>> type(None) <type(None) 'NoneType'>
如果一個變數指向函數或類,也可以用type()判斷:
>>> type(abs) <class 'builtin_function_or_method'> >>> type(a) <class '__main__.Animal'>
但是type()函數傳回的是什麼型別呢?它會傳回對應的Class類型。如果我們要在if語句中判斷,就需要比較兩個變數的type型別是否相同:
>>> type(123)==type(456) True >>> type(123)==int True >>> type('abc')==type('123') True >>> type('abc')==str True >>> type('abc')==type(123) False
判斷基本資料型別可以直接寫int,str等,但如果要判斷一個物件是否是函數怎麼辦?可以使用types模組中定義的常數:
>>> import types >>> def fn(): ... pass ... >>> type(fn)==types.FunctionType True >>> type(abs)==types.BuiltinFunctionType True >>> type(lambda x: x)==types.LambdaType True >>> type((x for x in range(10)))==types.GeneratorType True
以上就是本篇文章所講述的所有內容,這篇文章主要介紹了python獲取物件屬性的相關知識,希望你能借助資料從而理解上述所說的內容。希望我在這片文章所講述的內容能夠對你有幫助,讓你學習python更加輕鬆。
更多相關知識,請造訪php中文網Python教學欄位。
以上是如何取得python中的物件屬性? (實例講解)的詳細內容。更多資訊請關注PHP中文網其他相關文章!