Python 基础教程

Python 流程控制

Python 函数

Python 数据类型

Python 文件操作

Python 对象和类

Python 日期和时间

Python 高级知识

Python 参考手册

Python dir() 使用方法及示例

Python 内置函数

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

dir()的语法为:

dir([object])

dir()参数

dir()最多容纳一个对象。

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

dir()返回值

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

  • 如果对象具有__dir__()方法,则将调用该方法,并且必须返回属性列表。

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

如果没有将object传递给dir()方法,它将返回当前本地范围内的名称列表。

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

number = [123]
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__''__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()
['__builtins__''number']

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

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

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

运行该程序时,输出为:

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

Python 内置函数