python-day6(补充二:类变量)

类变量

  1. 什么是类变量
  2. 定义类变量
  3. 取得类变量的值
  4. 设置类变量的值
  5. 删除类变量
  6. 类变量的存储

什么是类变量

  1. 属于类本身这个对象的属性
  2. 所有该类的对象都共享类变量
calss Student:
	pass

print(Student.__name__)

示例

class Student:
    pass

def main():
    print(Student.__name__)

if __name__ == '__main__':
    main()

输出

Student

类变量属于类本身

定义类变量

class Student:
	student_count = 0

取得类变量的值

直接取值和使用getattr()函数

    # 直接取值
    print(Student.student_count)
    # 使用getattr()函数
    print(getattr(Student, "student_count"))

输出

0
0

getattr函数

print(getattr(Student, "unknown", "10"))	# 缺省值

设置类变量的值

# 直接修改
Student.student_count = 89
print(Student.student_count)
# 利用setarrt()函数修改
setattr(Student, "student_count", 100)
print(Student.student_count)
# 如果类变量不存在,可以在运行时添加
Student.unknown = "hello"

删除类变量

使用del操作符或使用delatte()函数

class Student:
	student_count = 0

del Student.student_count
delattr(student, "student_count")

类变量的存储

类变量全部存放在类变量__dict__这个字典里面,但不要直接修改__dict__的内容

class Student:
	student_count = 0

pprint(Student.__dict__)

输出

mappingproxy({'__dict__': <attribute '__dict__' of 'Student' objects>,
              '__doc__': None,
              '__module__': '__main__',
              '__weakref__': <attribute '__weakref__' of 'Student' objects>,
              'newattribute': 'hello',
              'student_count': 4})

资料来源:【面向对象的Python编程-02.类变量】 https://www.bilibili.com/video/BV1k8411a7ks/?share_source=copy_web&vd_source=0235d88ba3487903dc658fe856ba0135
UP:跟峰哥学编程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值