【python】[P1323.面向对象的命名空间](https://www.bilibili.com/video/BV1aJ411H7Ej?p=132)(201104)
类:这个类有什么属性,用什么方法,大致的样子
对象:之前所有的属性值就都明确了
类型:int float str dict list tuple set --类(内置的数据类型,内置的类)
o = 函数
q = 迭代器
u = 生成器
i = 类名
python一切皆对象,对象的类型就是类
类的成员和命名空间
class A:
Country = '日内瓦' # 静态变量/静态属性 存储在类的命名空间
der __init__(self):# 绑定方法 存储在类的命名空间,self只是一个形式参数,传什么接受什么
# a.func() == A.func(a) 类指针(C语言)
类中的变量是静态变量
对象中的变量只属于对象本身,每个对象有属于自己的空间来储存对象的变量
当使用对象名去调用某一个属性的时候会优先在自己的空间中寻找,找不到再去对应的类中寻找
if自己没有就引用类的,if not 就报错
对于类来说,类中的变量所有的对象都是可以读取的,并且读取的是同一个变量
if 一个变量 是所有的变量共享的值,那么这个变量应该被定义成静态变量
所有和静态变量相关的增删改查都应该使用类名来处理
而不应该使用对象名直接修改静态变量