首页 > 解决方案 > 在python中,如何在类外的普通函数中使用类的方法?

问题描述

在python中,如何在类外的普通函数中使用类的方法?

Class Python:
    def __init__(self,a):
        self.__a=a
    def get_a(self):
        return self.__a
def normal_func:
    var=Python.get_a()
    print(var)

标签: python

解决方案


问题中提出的 get_a() 方法是一个实例方法。这意味着 Python 类的所有对象都可以调用 get_a() 方法。在函数中使用类的对象方法的最简单方法是创建类的对象,然后对其执行任何操作。所以上面的代码将被重构为:

class Python:
    def __init__(self,a):
        self.__a=a
    def get_a(self):
        return self.__a
def normal_func:
    P = Python('a')
    var=P.get_a()
    print(var)

如果 normal_func 应该对 <PythonObject>.a 的不同值执行不同的操作,我建议您将对象添加为函数的参数。所以新功能将是这样的:

def normal_func(PythonObject):
    var = PythonObject.get_a()
    print(var)

推荐阅读