类(class)抽象的概念,比如说人类、鸟类、水果、是一个总的称呼,没有具体到某个物体;
对象(object,指具体实例,instance);
给对象增加一个实例变量
# 增加一个skills实例变量 p.skills = ['programming','writing'] print(p.skills) #删除p对象的name实例变量,而不是删除类中变量,新建一个对象,name实例变量还是构造函数默认的。 del p.name # print(p.name) 会报错
Python 允许通过对象访问类变量 ,但如果程序通过对象尝试对类变量赋值,此时性质就变了一Python 是动态语言,赋值语句往往意味着定义新变量。因此,如果程序通过对象对类变量赋值,其实不是对“类变量赋值”,而是定义新的实例变量 。例如如下程序 。
class Inventory: #定义两个变量 quantity = 2000 item = '鼠标' #定义实例方法 def change(self,item,quantity): self.item = item self.quantity = quantity #创建Inventory对象 iv = Inventory() iv.change('显示器',500) #访问iv的item和quantity实例变量 print(iv.item) #显示器 print(iv.quantity) #500 #访问Inventotry的item和quantity类变量 print(Inventory.item) #鼠标 print(Inventory.quantity) #2000
观点扩展:
Python的面向对象,可以简单理解为你处理的东西都是“对象”。变量是指向一个对象的,变量名称是一个对象,相关的是namespace这个概念。类代表一类东西,是个对象。class下面的instance就是类的具体表现,相当于具备某一特征的个体,这些都是对象。
标签:
python,对象
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
内蒙古资源网 Copyright www.nmgbbs.com
暂无“如何理解python对象”评论...
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。