如何理解python对象

作者:Ly 时间:2022-09-04 06:58:54 

类(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就是类的具体表现,相当于具备某一特征的个体,这些都是对象。

来源:https://www.py.cn/faq/python/19046.html

标签:python,对象
0
投稿

猜你喜欢

  • 详解vscode实现远程linux服务器上Python开发

    2021-07-02 05:09:32
  • Linux系统中为php添加pcntl扩展

    2023-09-04 02:58:15
  • matplotlib.pyplot画图并导出保存的实例

    2022-10-02 13:32:26
  • http通过StreamingHttpResponse完成连续的数据传输长链接方式

    2023-06-04 03:33:45
  • Python中使用scapy模拟数据包实现arp攻击、dns放大攻击例子

    2021-12-04 12:15:05
  • 仿QQ和MSN消息提示的效果代码

    2010-03-16 12:17:00
  • Python爬取腾讯视频评论的思路详解

    2021-05-30 23:04:43
  • 对于Python中线程问题的简单讲解

    2023-12-28 10:16:31
  • vue计时器的实现方法

    2024-04-30 10:24:27
  • tensorflow如何继续训练之前保存的模型实例

    2023-05-22 22:54:57
  • 如何通过Vue实现@人的功能

    2024-06-05 15:32:04
  • python udp如何实现同时收发信息

    2023-12-16 10:06:33
  • ThinkPHP模板判断输出Empty标签用法详解

    2023-11-14 20:46:54
  • 微信小程序与php 实现微信支付的简单实例

    2023-11-14 15:22:07
  • python列表中remove()函数的使用方法详解

    2021-05-13 22:52:46
  • Python 设计模式中命令模式

    2022-10-14 20:28:36
  • 浅谈python连续赋值可能引发的错误

    2023-07-12 04:13:32
  • python绘制圆柱体的方法

    2022-07-31 02:00:31
  • Python 列表映射后的平均值

    2021-12-25 19:02:39
  • Python遍历文件夹 处理json文件的方法

    2022-02-19 16:08:40
  • asp之家 网络编程 m.aspxhome.com