
python如何在类外访问类内
用户关注问题
如何从类的外部调用类中的方法?
我定义了一个类并且在里面创建了一些方法,想知道在类的外部应该怎样调用这些方法?
类外部调用类方法的方法
可以通过先实例化该类,创建一个对象,然后使用对象名加点操作符访问类内的方法。例如,obj = MyClass(),之后调用方法 obj.method(),这样就可以在类外部执行类中定义的函数。
如何访问类中定义的变量?
类里面有一些变量定义,我想在类外部获取它们的值,该怎么操作?
访问类变量的方式
变量分为实例变量和类变量,实例变量需要先通过实例对象访问,如 obj.var_name;类变量可以直接用类名访问,如 MyClass.var_name。
类的私有属性可以在类外部访问吗?
如果类里的属性用双下划线定义了,想知道在类的外部是否还能访问这些属性?
私有属性访问及其限制
使用双下划线定义的属性会被Python名称重整,导致不能直接通过一般名称访问。不过,可以通过一定的名称改写规则访问,格式为 _ClassName__attrname,但不建议在外部使用,应保持封装。