实例变量,Python面向对象中的类变量,实例变量怎么来理解?

大家好,我是皮皮。

一、前言

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

Python面向对象中的类变量,实例变量怎么来理解?

二、解决过程

在Python Tutorial中对于类变量和实例变量是这样描述的:

Generally speaking, instance variables are for data unique to each instance and class variables are for attributes and methods shared by all instances of the class.

通常来说,实例变量是对于每个实例都独有的数据,而类变量是该类所有实例共享的属性和方法。

针对下方的代码:

class Calculate: A = 20 B = 20 def __init__(self,a,b): A = a B = b print(self.A+self.B/2+1)Calculate(4,10)

这个代码输出的结果是31.0,因为self是指向类本身,所以在init外定义A,B可以用self.A,self.B调用,但在init内设置的A,B只是局部变量。

Python面向对象中的类变量,实例变量怎么来理解?

有了以上的基础打底之后,接下来给这个代码做几个变形,就更加清晰了。

class Calculate: A = 20 B = 20 def __init__(self,a,b): self.A = a self.B = b print(self.A+self.B/2+1)Calculate(4,10)

像上方的这个代码输出的结果就是10.0。

下面给出【dcpeng】大佬给出的几个图解:

Python面向对象中的类变量,实例变量怎么来理解?

这么看应该清晰了

Python面向对象中的类变量,实例变量怎么来理解?

再次变形:

Python面向对象中的类变量,实例变量怎么来理解?

最后再给大家分享下self这个参数,参考下图:

Python面向对象中的类变量,实例变量怎么来理解?

三、总结

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

Python面向对象中的类变量,实例变量怎么来理解?

最后感谢粉丝【Chloe】提问,感谢【孤独】、【dcpeng】、【月神】给出的具体解析和代码演示,感谢【艾希·觉罗】等人参与学习交流。

本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:dandanxi6@qq.com

(4)
上一篇 2022-11-16 12:52
下一篇 2022-11-16 12:52

相关推荐

  • Excel表格中提取全部超链接

    在Excel中,可以利用单元格、图片、图形创建具有跳转功能的超链接。 自动产生的超链接 对于用户输入的Internet及网络路径,Excel会自动进行识别并将其替换为超链接文本。例…

    2023-12-09
  • 女人连孩子都不想要该是多么绝望

    为什么有的女人不想过了,连孩子也不要了?这是一个有点令人心情沉重的话题。有哪个女人不想有个幸福的家?有哪个女人不想憧憬着有个孩子?有哪个女人又忍心无缘无故的抛弃自己的心头肉? 可是…

    2023-04-06
  • 金庸和梁羽生作品的区别

    小说这种体裁的作品,可以说是现在我们很多人都离不开的一种文学作品了,就连我父母学会使用智能机以后,现在都会在网上去看小说了。而小说这种题材的作品是起源于什么时候呢?相信很多人都听说…

    2023-02-05
  • 有个漂亮的暴君老婆是什么体验小说

    每当靓妻语言施暴 想着她靓我欲言又止 一万个不忍 我会想着我俩驿动的初恋 同时心里也不憋屈 咬紧牙关闭上嘴 呵呵我有事干了 默默数句心无二用 瞧,我在修身养性 呵呵,千年难遇的谋士…

    用户投稿 2023-04-17
  • 每月出生的花神

    中国的年有4个季节,四季分明,冷暖交织。中国的年有12个月,每个月都有自己的花神,代表着每月的寓意。一年365天,每天都有人出生,每个人都有自己的宿命,很多相信星座的人,总是针对自…

    2024-01-28
  • 李斯背叛嬴政了吗

    中国历史上第一个统一中国的朝代就是秦朝。秦国本是贫瘠的小国,通过卫鞅变法及施政强兵,才逐渐超越其他诸国,变成春秋时期的第一强国。 这是几代秦国人的努力才有的结果,也为之后秦嬴政一统…

    2022-11-30
  • 袭人到底有没有告密

    红楼梦34回,贾宝玉挨打后,王夫人叫人过来问话,袭人向王夫人有过一场披肝沥胆的进言,此次进言被看成是袭人向王夫人告密。那么事实是怎样的?这次进言真的表现出袭人“袭击人”的本性么?其…

    2023-07-10
  • 洛克王国地图编号

    哈喽,各位看官老爷们大家好,我是柒米大魔王,同样也是欢迎各位看官老爷们来到柒米的游戏情报社 洛克国王中,有着许多经典元素,它们并不会随着时间而凋零,反而会重新焕发出新的生命。如迪莫…

    2022-11-26
  • 元朝黄道婆发明了什么

    上海曾流传着这样一首童谣:“黄婆婆,黄婆婆,教我纱,教我布,二只筒子,两匹布。”这里说的“黄婆婆”,就是历史上的黄道婆 黄道婆(1245年—1330年)又名黄婆、黄母,原松江府乌泥…

    用户投稿 2022-11-23
  • 代谢快是不是老的快,代谢快是不是老得快

    所谓新陈代谢就是人体的一个正常生理活动,即吃进去后要吸收,吸收了要消化,消化以后变成能量,变成能量以后,就有足够的营养支持人体的生长和正常的生理活动。多余的能量就通过胃肠道,通过泌…

    用户投稿 2023-04-08