Python 学习笔记 1 之 类与实例

本文深入浅出地解释了Python中的类(class)与实例(instance)的概念,通过通俗易懂的例子帮助读者理解两者之间的关系及其作用。文章还探讨了CPython中实例ID的实现方式及其局限性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

老生常谈的话题,也是初学python不可避免的东西

专业术语上,将族群或类别称作类型(class),将个体称作实例(instance)。类型持有同个族群个体的共同的行为(方法)和共同的状态(属性)。而实例仅保存私有特性即可。每个实例都持有所属类型的指针,需要时,通过指针间接访问目标。但是从外在逻辑接口看,任何实例都是“完整”的。

在内存空间中,类和实例这样的布局是最高效的。

举个简单例子。 人就好比一个类型,大家都拥有的共同行为(方法)是走路,吃饭等,共有的状态(属性)是眼睛,鼻子等。

张三,李四这些单个个体就好比是人这个类的实例,他们拥有自己的私有特性,比如肤色,性别,姓名等等。

存活的实例还有自己唯一的ID值


不用的python实现使用的算法不用,CPython(C语言实现的python,也就是我们平常说的原滋原味的python)中是用内存地址作为ID值,如上图。这也意味着只能保证只在某个时间,在存活对象里是唯一的,不保证整个进程的生命周期内是唯一的,因为内存地址会被复用,因此这里ID就不适合作为全局的身份标识。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值