第四十节 类变量Class Variables

  • 前言
  • 实践

前言

通过上一节学习我们知道Python中的类由两部分构成,属性(变量)和方法(函数)。这一节我们进一步学习属性。属性分为两部分,一部分定义在__init__函数之外,这里指定所有这个类的对象共有的属性,例如汽车都有4个轮子等等,而__init__内部定义的属性用于区别不同的对象,例如汽车的颜色,汽车的价格等等。

class 对象():公共属性定义def __init__(self, 属性1, 属性2, ..., 属性n):self.属性1 = 属性1......self.属性n = 属性n

实践

我们以汽车为例讲解类变量,首先定义一个名为Car的类:

class Car():wheels = 4def __init__(self, price, color):self.price = priceself.color = color

可见wheels=4指明所有汽车都有4个轮子这个公共属性,而__init__函数内定义的是在类实例化时需要指定的其他属性。我们接下来实例化两个对象:

car_1 = Car(15000, "red")
car_2 = Car(15030, "green")

这里我们实例化了两个汽车对象,我们来查看一下他们的公共属性是否相同:

print(car_1.wheels)
print(car_2.wheels)
>>> 4
>>> 4

我们在类实例化之后,可以在类的外部重新指定公共属性的值:

Car.wheels = 2
print(car_1.wheels)
print(car_2.wheels)
>>> 2
>>> 2

可见此时所有对象的wheels取值都变为了2。那是否分别修改每一个对象的公共属性取值呢?

car_1.wheels = 2
print(car_1.wheels)
print(car_2.wheels)
>>> 2
>>> 4

可见,我们可以直接修改对象的公共属性取值。

以上便是类变量的全部内容,感谢大家的收藏、点赞、评论。我们下一节将介绍继承(Inheritance),敬请期待~

Python编程基础:第四十节 类变量Class Variables相关推荐

  1. Python编程基础:第二十节 函数Function

    第二十节 函数Function 前言 实践 前言 目前为止,我们已经学习了常见的数据类型以及逻辑结构.但是代码都只能运行一次,如果想多次运行该段代码就得重复写多次.为了避免书写冗余的代码,我们需要引入 ...

  2. Python编程基础:第十节 while循环While Loops

    第十节 while循环While Loops 前言 实践 前言 如果你需要计算机反复执行某个代码段,你就需要用到while循环,while循环的结构如下: while 判断1:代码段1 当判断1为Tr ...

  3. Python编程基础:第二十四节 作用域Scope

    第二十四节 作用域Scope 前言 实践 前言 在Python中每一个变量都有其自己的生命周期,我们一般将变量分为全局变量与局部变量,全局变量是指在整个代码内部都可以访问到的变量,局部变量是指只有在函 ...

  4. Python编程基础:第十四节 列表Lists

    第十四节 列表Lists 前言 实践 前言 列表是一种非常常用的数据结构.我们可以用它来存储各种类型的数据. 实践 我们先来创建一个名为food的列表,里面存储了一系列我喜欢的食物名称: food = ...

  5. Python编程基础:第二十九节 异常Exception

    第二十九节 异常Exception 前言 实践 前言 我们在写代码时不可避免地会出错,这时候编译器便会抛出异常并中断程序的执行.针对这种情况,我们可以采用异常处理的方式捕捉程序中的异常信息,并将异常信 ...

  6. Python编程基础:第二十五节 args参数*args

    第二十五节 args参数*args 前言 实践 前言 我们目前学习到的函数的参数个数都是固定的,那么我们是否可以指定任意多个参数呢?其实是可以的,这里就用到了args参数,它可以将用户指定的任意多个参 ...

  7. Python编程基础:第十九节 索引Index Operator

    第十九节 索引Index Operator 前言 实践 前言 我们在字符串学习过程中已经接触过索引的相关内容,我们在这里做一个小结,Python中的索引分为两部分,一种是从左向右,从0开始依次递增,例 ...

  8. Python编程基础:第十五节 二维列表2D Lists

    第十五节 二维列表2D Lists 前言 实践 前言 列表中的元素可以是任何形式,整型.浮点型.字符串型,甚至是一个列表.当列表的元素也是列表时,我们将其称为二维列表. 实践 我们先来创建多个一维列表 ...

  9. Python编程基础:第十六节 元组Tuple

    第十六节 元组Tuple 前言 实践 前言 我们这一节来学习一个与列表非常相似的数据结构--元组.需要注意的是元组定义好以后,其中的元素是不能改变的,并且所有元素是有序排列的, 实践 我们先来创建一个 ...

最新文章

  1. 3D U-Net:从稀疏注释中学习密集的体积分割
  2. TED+如何让压力成为朋友+如何面对压力决定你的未来
  3. 基于深度学习的端到端人脸识别技术:全面调研
  4. SQL Server 获取表或视图结构信息
  5. 【Android 组件化】路由组件 ( 使用 JavaPoet 生成路由表类 )
  6. 刷新mac地址命令_配置好Cisco交换机需要熟悉IOS命令及相关的知识
  7. :批量制作档案表,要从excel表格中将每个人的数据导入到docx档案
  8. 1、【转载】Python yield 使用浅析
  9. Python学习笔记(三)数据类型--Number类型
  10. 读源码搞懂为什么Redis用单线程还这么快
  11. ZABBIX 3.2 基础安装
  12. t470键盘拆解_张大妈 ThinkPad T470p 首篇 开箱拆机晒物
  13. Python反序列化免杀上线CS:两次编码绕过
  14. 安卓12使用VNET免ROOT抓包微信小程序
  15. java自学笔记(4)-Stanford CS106A 弹球动画 20.9.9
  16. 网络:七层,HTTP应用层、TCP传输层、IP网络层,拔网线TCP还在,三次握手保证双向与减少因延时传输错误
  17. 工信部于佳宁:区块链要服务实体经济
  18. 我与Apache DolphinScheduler社区的故事
  19. 文件系统/var空间100%的问题
  20. 烟波流传,繁花三千,倾听似水流年

热门文章

  1. Matlab最短路学习
  2. php300类库,扩展类库 · PHP300FrameWork · 看云
  3. java异常在哪一层捕获_当在一个方法的代码中抛出一个检测异常时,该异常或被方法中的 ( )结构 捕获,或者在方法的 ( ) 中声明_学小易找答案...
  4. Java:多态的概念和案例实现
  5. android之 实现对搜索框输入内容(自动出现匹配内容)
  6. SYDTEK OTA 蓝牙升级功能实现 附带Demo
  7. python及pip中常用命令,经常总结
  8. 使用 keras 训练大规模数据
  9. Python用拉格朗日法进行数据横向插值
  10. 76. Leetcode 295. 数据流的中位数 (堆-技巧一-固定堆)