Python 中的 dir() 方法

pythonserver side programmingprogramming更新于 2025/10/11 6:04:17

dir() 函数返回任何对象(如函数、模块、字符串、列表、字典等)的属性和方法列表。在本文中,我们将了解如何在程序中以不同方式和针对不同要求使用 dir()。

仅 dir()

当我们打印 dir() 的值而不将任何其他模块导入程序时,我们会获得作为标准库的一部分可用的方法和属性列表,这些标准库在初始化 Python 程序时可用。

示例

Print(dir())

输出

运行上述代码得到以下结果 −

['__annotations__', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__']

附加模块

当我们导入附加模块并创建变量时,它们会被添加到当前环境中。然后这些方法和属性也会在带有 dir() 的 print 语句中可用。

示例

import math

x = math.ceil(10.03)
print(dir())

输出

运行上述代码得到以下结果 −

['__annotations__', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__', 'math', 'x']

特定模块的 dir()

对于特定模块,我们可以通过将它作为参数传递给 dir() 来查找该模块中包含的方法和属性。在下面的示例中,我们可以看到 math 模块中可用的方法。

示例

import math

print(dir(math))

输出

运行上述代码得到以下结果 −

['__doc__', '__loader__', '__name__', '__package__', '__spec__', 'acos', 'acosh', 'asin', 'asinh', 'atan', 'atan2', 'atanh', 'ceil', 'copysign', …., 'nan', … 'trunc']

类的 dir()

我们还可以将 dir() 应用于用户创建的类(而非内置的类),并通过 dir() 获取其属性列表。

示例

class moviecount:

   def __dir__(self):
      return ['Red Man','Hello Boy','Happy Monday']

movie_dtls = moviecount()

print(dir(movie_dtls))

输出

运行上述代码得到以下结果 −

['Happy Monday', 'Hello Boy', 'Red Man']

相关文章


有用资源