当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python dir()用法及代码示例


dir() 方法尝试返回对象的有效属性列表。

用法:

dir([object])

参数:

dir() 最多占用一个对象。

  • object(可选的) -dir()尝试返回此对象的所有属性。

返回:

dir() 尝试返回对象的有效属性列表。

  • 如果对象有__dir__() 方法,该方法将被调用并且必须返回属性列表。
  • 如果对象没有__dir__() 方法,则此方法尝试从__dict__ 属性(如果已定义)和类型对象中查找信息。在这种情况下,从dir() 返回的列表可能不完整。

如果对象未传递给dir() 方法,则返回当前本地范围内的名称列表。

示例 1:dir() 如何工作?

number = [1, 2, 3]
print(dir(number))

print('\nReturn Value from empty dir()')
print(dir())

输出

['__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']

Return Value from empty dir()
['__annotations__', '__builtins__', '__doc__', '__loader__', 
'__name__', '__package__', '__spec__', 'number']

示例 2:dir() 在用户定义的对象上

class Person:
  def __dir__(self):
    return ['age', 'name', 'salary']
    

teacher = Person()
print(dir(teacher))

输出

['age', 'name', 'salary']

相关用法


注:本文由纯净天空筛选整理自 Python dir()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。