您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關python中查看對象屬性的方法的內容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。
在Python語言中,有些庫在使用時,在網絡上找到的文檔不全,這就需要查看相應的Python對象是否包含需要的函數(shù)或常量。下面介紹一下,如何查看Python對象中包含哪些屬性,如成員函數(shù)、變量等,其中這里的Python對象指的是類、模塊、實例等包含元素比較多的對象。這里以OpenCV2的Python包cv2為例,進行說明。
由于OpenCV是采用C/C++語言實現(xiàn),并沒有把所有函數(shù)和變量打包,供Python用戶調用,而且有時網絡上也找不到相應文檔;還有OpenCV還存在兩個版本:OpenCV2和OpenCV3,這兩個版本在所使用的函數(shù)和變量上,也有一些差別。
1.dir() 函數(shù)
dir([object]) 會返回object所有有效的屬性列表。示例如下:
$ python Python 2.7.8 (default, Sep 24 2015, 18:26:19) [GCC 4.9.2 20150212 (Red Hat 4.9.2-6)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import cv2 >>> mser = cv2.MSER() >>> dir(mser)
['__class__', '__delattr__', '__doc__', '__format__', '__getattribute__', '__hash__', '__init__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'detect', 'empty', 'getAlgorithm', 'getBool', 'getDouble', 'getInt', 'getMat', 'getMatVector', 'getParams', 'getString', 'paramHelp', 'paramType', 'setAlgorithm', 'setBool', 'setDouble', 'setInt', 'setMat', 'setMatVector', 'setString']
2. vars() 函數(shù)
vars([object]) 返回object對象的__dict__屬性,其中object對象可以是模塊,類,實例,或任何其他有__dict__屬性的對象。所以,其與直接訪問__dict__屬性等價。示例如下(這里是反例,mser對象中沒有__dict__屬性)。
3. help() 函數(shù)
help([object])調用內置幫助系統(tǒng)。輸入
>>> help(mser)
4. type() 函數(shù)
type(object)返回對象object的類型。
5. hasattr() 函數(shù)
hasattr(object, name)用來判斷name(字符串類型)是否是object對象的屬性,若是返回True,否則,返回False。
6. callable() 函數(shù)
callable(object):若object對象是可調用的,則返回True,否則返回False。注意,即使返回True也可能調用失敗,但返回False調用一定失敗。
感謝各位的閱讀!關于python中查看對象屬性的方法就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經查實,將立刻刪除涉嫌侵權內容。