了解Python中dir()函數的屬性和方法

Python 是一種相當受歡迎的程式語言,它有許多強大的功能,其中一個就是 dir() 函數。dir() 函數可以用於返回對象的屬性和方法列表,可以用於查看對象的內容。

dir() 函數的使用

使用 dir() 函數非常簡單,只需要將對象傳入函數中即可,如下所示:

dir(object)

對象可以是模塊、函數、類別或者任何對象,例如:

dir(list)

上面的代碼將返回 list 對象的屬性和方法列表,例如:

['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__iadd__', '__imul__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'append', 'clear', 'copy', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort']

可以看到,dir() 函數返回了 list 對象的所有屬性和方法,包括內置的屬性和方法,以及自定義的屬性和方法。

範例

現在我們來看一個簡單的範例,我們將創建一個自定義的類別,然後使用 dir() 函數查看它的屬性和方法:

class MyClass:
    def __init__(self):
        self.name = 'John'
        self.age = 20

    def say_hello(self):
        print('Hello!')

obj = MyClass()

print(dir(obj))

執行上面的代碼,將會得到以下結果:

['__class__', '__delattr__', '__dict__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__le__', '__lt__', '__module__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', 'age', 'name', 'say_hello']

可以看到,dir() 函數返回了 MyClass 對象的所有屬性和方法,包括內置的屬性和方法,以及自定義的屬性和方法。

總結

本文介紹了 Python 中 dir() 函數的使用方法,dir() 函數可以用於返回對象的屬性和方法列表,可以用於查看對象的內容。

發佈留言