盘点一个面向对象的类变量和实例变量问题

简介: 盘点一个面向对象的类变量和实例变量问题

大家好,我是皮皮。


一、前言

前几天在Python最强王者交流群有个叫【Chloe】的粉丝问了一个Python基础问题,这里拿出来给大家分享下,一起学习下。

image.png

题目代码如下:

class A:
    var = 1
    def __init__(self):
        self.x = 1
    def get_var():
        return A.var
class B(A):
    new_var = 1
    def __init__(self):
        super().__init__()
b = B()


二、解决过程


这个问题挺基础的,看上去确实也不难。她就是想问hasattr(B, 'x') return True or False ?,而这里输出的结果是False

这里【月神】给出了一个实例代码,帮助理解。

image.png

还有一个补充。

image.png

其实这个题目就是在考察类变量和实例变量的问题,关于这个问题的文章,之前也发过好几篇文章了。

a = A()
a.x

上面的代码是可以的。

image.png

后来【冷喵】给出了一个接地气的说法,不带括号它是个类,带了是个实例。

image.png

这样的话,理解起来就简单很多了。

不过话说回来,面向对象的东西,确实是有些绕的,连大佬们都觉得有点难。

image.png


三、总结


大家好,我是皮皮。这篇文章主要分享了一个面向对象的类变量和实例变量问题,针对该问题给出了具体的解析和代码演示,帮助粉丝顺利解决了问题。


最后感谢粉丝【Chloe】提问,感谢【月神】、【冷喵】给出的具体解析和代码演示,感谢【dcpeng】、【瑜亮老师】、【沈复】等人参与学习交流。


小伙伴们,快快用实践一下吧!如果在学习过程中,有遇到任何问题,欢迎加我好友,我拉你进Python学习交流群共同探讨学习。


------------------- End -------------------

相关文章
|
编译器 C语言 C++
类和对象(1):类,对象,this指针
类和对象(1):类,对象,this指针
|
编译器 C++
类和对象(2):构造函数,析构函数
类和对象(2):构造函数,析构函数
|
编译器 C++
【C++】类和对象(中)之构造函数与析构函数
【C++】类和对象(中)之构造函数与析构函数
68 0
|
编译器 C++
C++类与对象 - 2(构造函数和析构函数)(超详细)
C++类与对象 - 2(构造函数和析构函数)(超详细)
69 0
|
6月前
|
安全 编译器 C语言
类与对象\构造函数与析构函数
类与对象\构造函数与析构函数
25 1
|
6月前
类与对象\静态成员
类与对象\静态成员
28 0
|
7月前
|
编译器 C++
【C++类和对象】构造函数与析构函数
【C++类和对象】构造函数与析构函数
【C++类和对象】构造函数与析构函数
|
7月前
|
存储 Java 编译器
Java面向对象编程:成员变量与局部变量
Java面向对象编程:成员变量与局部变量
59 0
|
7月前
|
存储
成员变量和类变量的区别:
成员变量和类变量的区别:
125 0
|
7月前
|
编译器 C语言 C++
【c++】类和对象(三)构造函数和析构函数
朋友们大家好,本篇文章我们带来类和对象重要的部分,构造函数和析构函数

热门文章

最新文章