Hàm dir() trong Python
Trong Python, hàm dir() trả về một danh sách các thuộc tính hợp lệ của đối tượng. Quantrimang sẽ tìm hiểu kĩ hơn về nội dung hàm này qua bài viết. Mời bạn đọc theo dõi. Cú pháp hàm dir() trong Python dir([object]) Các tham số của hàm dir() Dir() chỉ trả về kết quả cho một đối ...
Trong Python, hàm dir() trả về một danh sách các thuộc tính hợp lệ của đối tượng. Quantrimang sẽ tìm hiểu kĩ hơn về nội dung hàm này qua bài viết. Mời bạn đọc theo dõi.
Cú pháp hàm dir() trong Python
dir([object])
Các tham số của hàm dir()
Dir() chỉ trả về kết quả cho một đối tượng.
object: đối tượng được dir() trả về danh sách thuộc tính, tham số không bắt buộc.
Giá trị trả về từ dir()
Dir() sẽ trả về một danh sách các thuộc tính hợp lệ của đối tượng.
Nếu đối tượng có hàm __dir__() thì khi gọi dir sẽ trả về đầy đủ các thuộc tính.
Nếu đối tượng không có __dir__() thì hàm sẽ cố gắng tìm thông qua __dict__() (nếu có). Trong trường hợp này, danh sách thuộc tính trả về từ dir() có thể không đầy đủ.
Nếu không truyền object vào dir() thì sẽ trả về thuộc tính trong phạm vi cục bộ hiện tại.
Ví dụ 1: Hàm dir() hoạt động thế nào?
number = [1, 2, 3]
print(dir(number))
print(' Gia tri tra ve tu dir() khong truyen object')
print(dir())
Chạy chương trình, kết quả trả về là:
['__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']
Gia tri tra ve tu dir() khong truyen object
['__annotations__', '__builtins__', '__doc__', '__file__', '__loader__', '__name__', '__package__',
'__spec__', 'number']
Ví dụ 2: dir() với object do người dùng định nghĩa
class Person:
def __dir__(self):
return ['age', 'name', 'salary']
teacher = Person()
print(dir(teacher))
Chạy chương trình, kết quả trả về là:
['age', 'name', 'salary']
Bài trước: Hàm dict() trong Python
Bài tiếp: Hàm divmod() trong Python