Python 打印类的所有方法

在Python中,类是面向对象编程的基本组成单元。类可以定义属性和方法,通过实例化类可以创建对象,并调用对象的方法。有时候,我们需要了解一个类中定义了哪些方法,以及这些方法的作用和使用方式。本文将介绍如何在Python中打印类的所有方法,并提供相应的代码示例。

类的方法

在Python中,方法是类中定义的函数,用于封装类的行为。通过调用对象的方法,我们可以对对象进行操作和控制。一个类可以定义多个方法,每个方法可以有不同的参数和返回值。下面是一个简单的示例,展示了一个名为Person的类,其中定义了两个方法say_hellointroduce

class Person:
    def say_hello(self):
        print("Hello!")

    def introduce(self):
        print("I am a person.")

在上述代码中,Person类中定义了两个方法,say_hellointroducesay_hello方法用于打印出"Hello!",introduce方法用于打印出"I am a person."。

打印类的方法

要打印类的方法,我们可以使用内置函数dir()dir()函数返回一个包含对象所有属性和方法的列表。我们可以通过筛选列表中的方法,来获取类的所有方法。下面是一段代码,展示了如何打印Person类的所有方法:

class Person:
    def say_hello(self):
        print("Hello!")

    def introduce(self):
        print("I am a person.")

methods = [method for method in dir(Person) if callable(getattr(Person, method))]
print(methods)

上述代码中,我们使用了列表推导式来获取Person类的所有方法。dir(Person)返回包含Person类所有属性和方法的列表,callable(getattr(Person, method))用于筛选出列表中的方法。最后,我们将结果打印出来。

运行结果

运行上述代码,我们可以得到如下的输出:

['introduce', 'say_hello']

上述结果表示Person类中定义了两个方法introducesay_hello

总结

本文介绍了如何在Python中打印类的所有方法。通过使用内置函数dir(),我们可以获取类的所有属性和方法,然后通过筛选方法,可以得到类的所有方法。这对于了解一个类的功能和使用方式非常有帮助。

classDiagram
    Class01 <|-- subclass
    Class03 *-- Class04
    Class05 o-- Class06
    Class07 .. Class08
    Class09 --> C10
    Class11 --* C12
    Class13 --|> Class12
    Class14 --* C11