• 技术文章 >常见问题 >Python常见问题

    python对象怎么理解?

     Ly Ly2020-06-15 09:23:38原创2458

    类(class)抽象的概念,比如说人类、鸟类、水果、是一个总的称呼,没有具体到某个物体;

    对象(object,指具体实例,instance);

    给对象增加一个实例变量

    1

    2

    3

    4

    5

    6

    # 增加一个skills实例变量

    p.skills = ['programming','writing']

    print(p.skills)

    #删除p对象的name实例变量,而不是删除类中变量,新建一个对象,name实例变量还是构造函数默认的。

    del p.name

    # print(p.name) 会报错

    Python 允许通过对象访问类变量 ,但如果程序通过对象尝试对类变量赋值,此时性质就变了一Python 是动态语言,赋值语句往往意味着定义新变量。因此,如果程序通过对象对类变量赋值,其实不是对“类变量赋值”,而是定义新的实例变量 。例如如下程序 。

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    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知识,请关注:Python自学网!!

    专题推荐:python
    上一篇:python定义int型变量吗? 下一篇:python二级如何备考

    相关文章推荐

    • 如何判断Python对象是否为文件对象?• Python对象类型判断与函数重载• python对象什么时候销毁• python对象与方法的区别是什么

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网